Eseguire l'autenticazione utilizzando le 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 di autenticazione per il servizio o l'API che vuoi utilizzare per determinare se supporta le chiavi API. Indipendentemente da dove è ospitato il tuo sistema SAP, puoi utilizzare le chiavi API per l'autenticazione a condizione che l'API che vuoi utilizzare supporti le chiavi API.

Per autenticarti all'API Google Cloud utilizzando le chiavi API, utilizza uno dei seguenti metodi:

Autenticarsi utilizzando la chiave API archiviata in SAP SSF

I passaggi di configurazione a livello generale sono i seguenti:

Crea una chiave API

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

Google Cloud offre diversi modi per creare chiavi API.

Per creare chiavi API utilizzando la console Google Cloud :

  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 mantienila al sicuro. Hai bisogno di questa chiave API per configurare l'autenticazione per Google Cloud.

    • Per impostazione predefinita, le chiavi API non sono soggette a restrizioni. Ti consigliamo di limitare le chiavi API selezionando le API a cui può essere utilizzata questa chiave API. Per ulteriori informazioni sull'aggiunta di limitazioni API, consulta Aggiungere limitazioni API.

Memorizzare 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 SAP Secure Store and Forward (SSF).

Se utilizzi l'opzione SSF, puoi archiviare la chiave API in formato criptato nella tabella /GOOG/APIKEY_BIN. Quando viene chiamata un'API, 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 tramite la chiave API archiviata in SAP SSF, devi aver installato la versione 8.5 e successive della libreria di crittografia SAP nel tuo sistema SAP. Per ulteriori informazioni sulla libreria crittografica SAP, consulta 1848999 - Central Note for CommonCryptoLib 8 (SAPCRYPTOLIB) e 397175 - SAP Cryptographic software - export control.

Per verificare la versione di SAP Cryptographic Library, segui questi passaggi:

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

Configurare l'applicazione SSF

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

In alternativa, puoi creare un'applicazione SSF con il nome che preferisci 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 SAP, inserisci il codice di transazione SE16.
  2. Nel campo Nome tabella, inserisci SSFAPPLIC, quindi 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 il flag.
    B_FORMAT Seleziona il flag.
    B_PAB Seleziona il flag.
    B_PROFID Seleziona il flag.
    B_PROFILE Seleziona il flag.
    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 il flag.
    DESCRIPT API Key Encryption for GCP
  5. Salva la nuova voce.

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

  2. Apri la visualizzazione 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 SAP, inserisci il codice di transazione STRUST.

  2. Nel nodo SSF API Key Encryption for GCP, fai clic con il tasto destro del mouse e seleziona Crea.

  3. Nel campo Algoritmo, seleziona RSA. Lascia invariati i valori predefiniti degli altri campi compilati dal sistema.

  4. Salva la nuova voce.

Memorizzare la chiave API

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Basic Settings > Configure API Key (Using SSF).

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

  4. Nel campo Chiave API, inserisci la chiave API che hai creato in precedenza in Crea una chiave API.

  5. Seleziona Salva.

  6. Fai clic su Esegui per memorizzare la chiave API.

Configura la chiave client

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

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

  3. Fai clic su Nuove voci.

  4. Inserisci i valori per i seguenti campi:

    Campo Descrizione
    Nome della chiave Google Cloud Specifica un nome per la configurazione della chiave client. Ad esempio, DEMO_API_KEY.
    Nome account di servizio Google Cloud Lascia vuoto questo campo.
    Ambito di Google Cloud Specifica l'ambito di accesso all'API, https://www.googleapis.com/auth/cloud-platform.
    ID progetto Specifica l'ID del progetto Google Cloud che contiene le API di destinazione.
    Nome del 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 nella cache.

    Ti consigliamo di attivare la memorizzazione nella cache dei token dopo aver configurato e testato la connessione a Google Cloud. Per maggiori informazioni sulla memorizzazione nella cache dei token, vedi Attivare la memorizzazione nella cache dei token.

    Secondi di aggiornamento del token Specifica la quantità di tempo, in secondi, prima che un token di accesso scada e debba 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

Per le API che prevedi di utilizzare con l'ABAP SDK for Google Cloud, crea nuove destinazioni RFC.

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

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

Configura la mappatura dei servizi

Configura la tabella di mapping dei servizi per le API che prevedi di utilizzare con l'SDK ABAP per Google Cloud.

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Impostazioni di base > Configura mappatura dei servizi.

  3. Fai clic su Nuove voci.

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

    Nome Nome servizio Destinazione RFC
    Nome della 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:

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Basic Settings > Configure API Key (Using SSF).

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

  4. Seleziona Elimina.

  5. Fai clic su Esegui per eliminare la chiave API.

Autenticarsi utilizzando la chiave API archiviata in Secret Manager

I passaggi di configurazione a livello generale sono i seguenti:

Crea una chiave API

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

Google Cloud offre diversi modi per creare chiavi API.

Per creare chiavi API utilizzando la console Google Cloud :

  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 mantienila al sicuro. Hai bisogno di questa chiave API per configurare l'autenticazione per Google Cloud.

    • Per impostazione predefinita, le chiavi API non sono soggette a restrizioni. Ti consigliamo di limitare le chiavi API selezionando le API a cui può essere utilizzata questa chiave API. Per ulteriori informazioni sull'aggiunta di limitazioni API, consulta Aggiungere limitazioni API.

Crea un secret e memorizza la chiave API

L'ABAP SDK for 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. Abilita l'API Secret Manager.

    Vai alla libreria API

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

    Vai a Secret Manager

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

Per impostazione predefinita, l'ABAP SDK for Google Cloud recupera solo l'ultima versione di un secret.

Configura la chiave client per l'accesso a Secret Manager

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

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

Annota il nome della chiave client che hai creato per l'accesso a Secret Manager.

Configura la chiave client per il secret

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

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

  3. Fai clic su Nuove voci.

  4. Inserisci i valori per i seguenti campi:

    Campo Descrizione
    Nome della chiave Google Cloud Specifica un nome per la configurazione della chiave client. Ad esempio, DEMO_API_KEY.
    Nome account di servizio Google Cloud Lascia vuoto questo campo.
    Ambito di Google Cloud Specifica l'ambito di accesso all'API, https://www.googleapis.com/auth/cloud-platform.
    ID progetto Specifica l'ID del progetto Google Cloud che contiene le API di destinazione.
    Nome del 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 nella cache.

    Ti consigliamo di attivare la memorizzazione nella cache dei token dopo aver configurato e testato la connessione a Google Cloud. Per maggiori informazioni sulla memorizzazione nella cache dei token, vedi Attivare la memorizzazione nella cache dei token.

    Secondi di aggiornamento del token Specifica la quantità di tempo, in secondi, prima che un token di accesso scada e debba 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 è memorizzata la chiave API. Ad esempio, TEST_SECRET.
  5. Salva la nuova voce.

Crea nuove destinazioni RFC

Per le API che prevedi di utilizzare con l'ABAP SDK for Google Cloud, crea nuove destinazioni RFC.

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

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

Configura la mappatura dei servizi

Configura la tabella di mapping dei servizi per le API che prevedi di utilizzare con l'SDK ABAP per Google Cloud.

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Impostazioni di base > Configura mappatura dei servizi.

  3. Fai clic su Nuove voci.

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

    Nome Nome servizio Destinazione RFC
    Nome della 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, segui questi passaggi:

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

  2. Fai clic su ABAP SDK for Google Cloud > Utilità > Recupero della chiave API (utilizzo di Secret Manager).
  3. Specifica il nome della chiave client.
  4. Fai clic su Esegui per verificare se la chiave API è stata recuperata correttamente da Secret Manager.

Convalida la configurazione dell'autenticazione

Per convalidare la configurazione dell'autenticazione per la sua preparazione:

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

    In alternativa, esegui il codice di transazione SPRO e poi fai clic su SAP Reference IMG.

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

  3. Inserisci il nome della chiave client.

  4. Fai clic su Esegui.

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

Assistenza

Se hai bisogno di aiuto per risolvere i problemi relativi all'ABAP SDK for Google Cloud, procedi nel seguente modo: