Esegui l'autenticazione utilizzando chiavi API

Questo documento mostra come configurare l'autenticazione per accedere alle API Google Cloud utilizzando le chiavi API. Solo alcune API Google Cloud utilizzano le chiavi API per l'autenticazione, ad esempio Google Maps Platform. Consulta la documentazione sull'autenticazione per il servizio o l'API che vuoi utilizzare per determinare se supporta le chiavi API. Indipendentemente da dove è ospitato il sistema SAP, puoi utilizzare le chiavi API per l'autenticazione purché l'API che vuoi utilizzare supporti le chiavi API.

Per eseguire l'autenticazione nell'API Google Cloud utilizzando le chiavi API, utilizza uno dei seguenti metodi:

Esegui l'autenticazione utilizzando una chiave API archiviata in SAP SSF

I passaggi di configurazione generale sono i seguenti:

crea una chiave API

Per l'autenticazione mediante chiave API, devi creare una chiave API. Una stringa di chiave API è una stringa criptata, ad esempio AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. L'SDK ABAP per Google Cloud utilizza la stringa della chiave API nella richiesta HTTP per eseguire l'autenticazione in modo sicuro quando si chiama un'API Google Cloud.

Google Cloud offre diversi modi per creare chiavi API.

Per creare chiavi API utilizzando la console Google Cloud, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Credenziali:

    Vai a credenziali

  2. Fai clic su Crea credenziali e seleziona Chiave API dal menu.

    • La finestra di dialogo Chiave API creata mostra la stringa della chiave API. Copia la stringa della chiave e proteggila. Questa chiave API è necessaria per configurare l'autenticazione in Google Cloud.

    • Per impostazione predefinita, le chiavi API sono senza restrizioni. Ti consigliamo di limitare le chiavi API selezionando le API su cui può essere utilizzata la chiave API. Per saperne di più sull'aggiunta di limitazioni delle API, consulta la sezione Aggiungere limitazioni delle API.

Archiviare la chiave API in SSF

L'SDK ABAP per Google Cloud offre un'opzione per archiviare in modo sicuro le chiavi API utilizzando il meccanismo di archiviazione e inoltro SAP (SAP Secure Store).

Utilizzando l'opzione SSF, puoi archiviare la chiave API in formato criptato nella tabella /GOOG/APIKEY_BIN. Quando un'API viene chiamata, la chiave API viene recuperata dalla tabella /GOOG/APIKEY_BIN, decriptata e aggiunta all'URI dell'endpoint API.

Per motivi di sicurezza, non puoi visualizzare i contenuti di /GOOG/APIKEY_BIN utilizzando strumenti standard, transazioni come SE16, SE16N o SE11.

Prerequisiti

Per l'autenticazione mediante una chiave API archiviata in SAP SSF, devi aver installato la versione 8.5 e successive della libreria crittografica SAP nel tuo sistema SAP. Per ulteriori informazioni sulla libreria di crittografia SAP, consulta le sezioni 1848999 - Central Note for CommonCryptoLib 8 (SAPCRYPTOLIB) e 397175 - SAP Cryptographic software - Export control.

Per verificare la versione della libreria di crittografia SAP, segui questi passaggi:

  1. Nella GUI di SAP, inserisci il codice transazione STRUST.
  2. Vai al menu Ambiente, quindi fai clic su Visualizza versione SSF.

Configura applicazione SSF

Nella tabella SSFAPPLIC, crea una nuova applicazione SSF ZG_APK che cripta la chiave API. ZG_APK è il nome predefinito dell'applicazione SSF.

In alternativa, puoi creare un'applicazione SSF con il tuo nome preferito o utilizzare un'applicazione SSF esistente con un nome diverso. Se vuoi utilizzare un'applicazione SSF diversa per la crittografia, devi configurare il nome dell'applicazione SSF in Authorization Parameter 1 della tabella delle chiavi client.

Per creare una nuova voce nella tabella SSFAPPLIC, segui questi passaggi:

  1. Nella GUI di SAP, inserisci il codice transazione SE16.
  2. Nel campo Nome tabella, inserisci SSFAPPLIC e crea una nuova voce.
  3. Nel campo APPLIC, inserisci ZG_APK.
  4. Specifica i valori nei seguenti campi.

    Campo Valore
    APPLIC ZG_APK
    B_TOOLKIT Seleziona la bandiera.
    B_FORMAT Seleziona la bandiera.
    B_PAB Seleziona la bandiera.
    B_PROFID Seleziona la bandiera.
    B_PROFILE Seleziona la bandiera.
    B_HASHALG Lascia vuoto questo campo.
    B_ENCRALG Lascia vuoto questo campo.
    B_INCCERTS Lascia vuoto questo campo.
    B_DETACHED Lascia vuoto questo campo.
    B_ASKPWD Lascia vuoto questo campo.
    B_DISTRIB Seleziona la bandiera.
    DESCRIPT API Key Encryption for GCP
  5. Salva la nuova voce.

Crea parametri SSF
  1. Nella GUI di SAP, inserisci il codice transazione SM30.

  2. Apri la vista VSSFARGS.

  3. Per l'applicazione ZG_APK (API Key Encryption for GCP), crea una nuova voce. I parametri SSF specifici dell'applicazione vengono compilati automaticamente.

  4. Salva la nuova voce.

Creare un ambiente di sicurezza personale (PSE)

  1. Nella GUI di SAP, inserisci il codice transazione STRUST.

  2. Nella sezione Crittografia delle chiavi API SSF per Google Cloud, fai clic con il tasto destro del mouse e seleziona Crea.

  3. Nel campo Algoritmo, seleziona RSA. Lascia gli altri campi con valori predefiniti compilati dal sistema.

  4. Salva la nuova voce.

Archiviare la chiave API

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura chiave API (utilizzando SSF).

  3. In Nome chiave Google, inserisci il nome della configurazione della chiave client.

  4. Nel campo Chiave API, inserisci la chiave API creata in precedenza in Creare una chiave API.

  5. Seleziona Salva.

  6. Fai clic su Execute (Esegui) per archiviare la chiave API.

Configura chiave client

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura chiave client.

  3. Fai clic su Nuove voci.

  4. Inserisci valori nei seguenti campi:

    Campo Descrizione
    Nome chiave Google Cloud Specifica un nome della configurazione della chiave client. Ad esempio, DEMO_API_KEY.
    Nome dell'account di servizio Google Cloud Lascia vuoto questo campo.
    Ambito di Google Cloud Specifica l'ambito di accesso'API, https://www.googleapis.com/auth/cloud-platform.
    ID progetto Specifica l'ID del progetto Google Cloud che contiene le API di destinazione.
    Nome comando Lascia vuoto questo campo.
    Classe di autorizzazione Specifica la classe di autorizzazione, /GOOG/CL_AUTH_API_KEY_SSF.
    Memorizzazione nella cache dei token

    Il flag che determina se i token di accesso recuperati da Google Cloud vengono memorizzati o meno nella cache.

    Ti consigliamo di abilitare la memorizzazione nella cache del token dopo aver completato la configurazione e il test della connessione a Google Cloud. Per ulteriori informazioni sulla memorizzazione nella cache dei token, consulta Attivare la memorizzazione nella cache dei token.

    Secondi di aggiornamento dei token Specifica la quantità di tempo, in secondi, prima che un token di accesso scada e deve essere aggiornato. Il valore predefinito è 3500.
    Parametro di autorizzazione 1 Se il nome dell'applicazione SSF è diverso da ZG_APK, specifica il nome dell'applicazione SSF.
    Parametro di autorizzazione 2 Lascia vuoto questo campo.
  5. Salva la nuova voce.

Crea nuove destinazioni RFC

Crea nuove destinazioni RFC per le API che prevedi di utilizzare con l'SDK ABAP per Google Cloud.

Per informazioni sulla creazione di destinazioni RFC, vedi Destinazioni RFC.

Se le destinazioni RFC non vengono create e configurate, l'SDK ABAP per Google Cloud funziona utilizzando gli endpoint API predefiniti gestiti in singoli stub di client API.

Configura la mappatura dei servizi

Configurare la tabella di mappatura dei servizi per le API che prevedi di utilizzare utilizzando l'SDK ABAP per Google Cloud.

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura Service Mapping.

  3. Fai clic su Nuove voci.

  4. Specifica le destinazioni RFC per le API che intendi utilizzare, ad esempio addressvalidation v1. Se utilizzi altre API, specifica le destinazioni RFC per queste API.

    Nome Nome servizio Destinazione RFC
    Nome chiave Google Cloud addressvalidation:v1 ZGOOG_ADDRVALDN_V1
  5. Salva la nuova voce.

Eliminazione di una chiave API

Se una chiave API non viene più utilizzata, puoi eliminarla dal tuo sistema SAP.

Per eliminare una chiave API, segui questi passaggi:

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura chiave API (utilizzando SSF).

  3. Nel campo Nome chiave Google, inserisci il nome della configurazione della chiave client.

  4. Seleziona Elimina.

  5. Fai clic su Execute (Esegui) per eliminare la chiave API.

Esegui l'autenticazione utilizzando una chiave API archiviata in Secret Manager

I passaggi di configurazione generale sono i seguenti:

crea una chiave API

Per l'autenticazione mediante chiave API, devi creare una chiave API. Una stringa di chiave API è una stringa criptata, ad esempio AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. L'SDK ABAP per Google Cloud utilizza la stringa della chiave API nella richiesta HTTP per eseguire l'autenticazione in modo sicuro quando si chiama un'API Google Cloud.

Google Cloud offre diversi modi per creare chiavi API.

Per creare chiavi API utilizzando la console Google Cloud, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Credenziali:

    Vai a credenziali

  2. Fai clic su Crea credenziali e seleziona Chiave API dal menu.

    • La finestra di dialogo Chiave API creata mostra la stringa della chiave API. Copia la stringa della chiave e proteggila. Questa chiave API è necessaria per configurare l'autenticazione in Google Cloud.

    • Per impostazione predefinita, le chiavi API sono senza restrizioni. Ti consigliamo di limitare le chiavi API selezionando le API su cui può essere utilizzata la chiave API. Per saperne di più sull'aggiunta di limitazioni delle API, consulta la sezione Aggiungere limitazioni delle API.

Creare un secret e archiviare la chiave API

L'SDK ABAP per Google Cloud offre un'opzione per archiviare in modo sicuro le chiavi API utilizzando il servizio Secret Manager di Google Cloud. Per archiviare in modo sicuro le stringhe delle chiavi API, Secret Manager ti consente di seguire le best practice per l'utilizzo sicuro delle chiavi API.

Per creare un secret e archiviare la chiave API, segui questi passaggi:

  1. Abilitare l'API Secret Manager.

    Vai alla libreria API

  2. Nella console Google Cloud, crea un secret e archivia la chiave API come versione più recente.

    Vai a Secret Manager

Per informazioni su come creare un secret, vedi Creare un secret.

Per impostazione predefinita, l'SDK ABAP per Google Cloud recupera solo la versione più recente di un secret.

Configura la chiave client per l'accesso a Secret Manager

Le API Secret Manager utilizzano i token per l'autenticazione. A seconda del deployment SAP, devi quindi configurare l'autenticazione basata su token per accedere alle API Secret Manager.

Utilizza uno dei seguenti metodi per configurare l'autenticazione basata su token per accedere alle API Secret Manager:

Prendi nota del nome della chiave client che hai creato per l'accesso a Secret Manager.

Configura la chiave client per il secret

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura chiave client.

  3. Fai clic su Nuove voci.

  4. Inserisci valori nei seguenti campi:

    Campo Descrizione
    Nome chiave Google Cloud Specifica un nome della configurazione della chiave client. Ad esempio, DEMO_API_KEY.
    Nome dell'account di servizio Google Cloud Lascia vuoto questo campo.
    Ambito di Google Cloud Specifica l'ambito di accesso'API, https://www.googleapis.com/auth/cloud-platform.
    ID progetto Specifica l'ID del progetto Google Cloud che contiene le API di destinazione.
    Nome comando Lascia vuoto questo campo.
    Classe di autorizzazione Specifica /GOOG/CL_AUTH_API_KEY_SM.
    Memorizzazione nella cache dei token

    Il flag che determina se i token di accesso recuperati da Google Cloud vengono memorizzati o meno nella cache.

    Ti consigliamo di abilitare la memorizzazione nella cache del token dopo aver completato la configurazione e il test della connessione a Google Cloud. Per ulteriori informazioni sulla memorizzazione nella cache dei token, consulta Attivare la memorizzazione nella cache dei token.

    Secondi di aggiornamento dei token Specifica la quantità di tempo, in secondi, prima che un token di accesso scada e deve essere aggiornato. Il valore predefinito è 3500.
    Parametro di autorizzazione 1 Specifica il nome della chiave client che hai creato per l'accesso a Secret Manager. Ad esempio, CLIENT_KEY_SM.
    Parametro di autorizzazione 2 Specifica il nome del secret in cui è archiviata la chiave API. Ad esempio, TEST_SECRET.
  5. Salva la nuova voce.

Crea nuove destinazioni RFC

Crea nuove destinazioni RFC per le API che prevedi di utilizzare con l'SDK ABAP per Google Cloud.

Per informazioni sulla creazione di destinazioni RFC, vedi Destinazioni RFC.

Se le destinazioni RFC non vengono create e configurate, l'SDK ABAP per Google Cloud funziona utilizzando gli endpoint API predefiniti gestiti in singoli stub di client API.

Configura la mappatura dei servizi

Configurare la tabella di mappatura dei servizi per le API che prevedi di utilizzare utilizzando l'SDK ABAP per Google Cloud.

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Impostazioni di base > Configura Service Mapping.

  3. Fai clic su Nuove voci.

  4. Specifica le destinazioni RFC per le API che intendi utilizzare, ad esempio addressvalidation v1. Se utilizzi altre API, specifica le destinazioni RFC per queste API.

    Nome Nome servizio Destinazione RFC
    Nome chiave Google Cloud addressvalidation:v1 ZGOOG_ADDRVALDN_V1
  5. Salva la nuova voce.

Convalida il recupero della chiave API da Secret Manager

Per convalidare il recupero della chiave API da Secret Manager, esegui questi passaggi:

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Utility > Convalida il recupero della chiave API (utilizzando Secret Manager).
  3. Specifica il nome della chiave client.
  4. Fai clic su Esegui per verificare se la chiave API viene recuperata correttamente da Secret Manager.

Convalida configurazione dell'autenticazione

Per convalidare la configurazione dell'autenticazione, segui questi passaggi:

  1. Nella GUI di SAP, esegui il codice transazione /GOOG/SDK_IMG.

    In alternativa, esegui il codice transazione SPRO e fai clic su Riferimento SAP IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Utility > Convalida configurazione autenticazione.

  3. Inserisci il nome della chiave client.

  4. Fai clic su Esegui per verificare se il flusso complessivo è stato configurato correttamente.

    Un segno di spunta verde nella colonna Risultato indica che tutti i passaggi delle configurazioni sono stati completati correttamente.

Richiedi assistenza

Se hai bisogno di aiuto per risolvere problemi con l'SDK ABAP per Google Cloud: