Esegui l'autenticazione mediante chiavi API

Questo documento mostra come configurare l'autenticazione per accedere alle API di Google Cloud utilizzando le chiavi API. Solo poche 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 la chiave API archiviata in SAP SSF

Di seguito sono riportati i passaggi per la configurazione generale:

crea una chiave API

Per l'autenticazione mediante una chiave API, devi creare una chiave API. Una stringa della chiave API è una stringa criptata, ad esempio AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. L'SDK ABAP per Google Cloud utilizza la stringa chiave API nella richiesta HTTP per l'autenticazione sicura quando chiami 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 tienila al sicuro. Questa chiave API è necessaria per configurare l'autenticazione in Google Cloud.

    • Per impostazione predefinita, le chiavi API non sono limitate. Ti consigliamo di limitare le chiavi API selezionando le API a cui è possibile utilizzare questa chiave API. Per saperne di più sull'aggiunta di limitazioni delle API, consulta la pagina Aggiungere limitazioni delle API.

Archivia 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 di SAP.

Utilizzando 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 mediante chiave API archiviata in SAP SSF, devi avere installato nel sistema SAP la versione 8.5 o versioni successive della libreria crittografica SAP. Per ulteriori informazioni sulla libreria di crittografia SAP, vedi 1848999 - Central Note for CommonCryptoLib 8 (SAPCRYPTOLIB) e 397175 - SAP Cryptographic software - export control.

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

  1. Nella GUI di SAP, inserisci il codice della transazione STRUST.
  2. Vai al menu Ambiente e 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 dell'applicazione SSF predefinito.

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:

  1. Nella GUI di SAP, inserisci il codice della 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 campi seguenti.

    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 di SAP, inserisci il codice della 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 per l'applicazione vengono compilati automaticamente.

  4. Salva la nuova voce.

Crea un ambiente di sicurezza personale (PSE)

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

  2. Nel nodo SSF API Key Encryption per Google Cloud, 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.

Archivia la chiave API

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

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

  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 Esegui per archiviare la chiave API.

Configura chiave client

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

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

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

  3. Fai clic su Nuove voci.

  4. Inserisci i valori nei seguenti campi:

    Campo Descrizione
    Nome chiave Google Cloud Specifica un nome per la 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 o meno memorizzati nella cache.

    Ti consigliamo di attivare la memorizzazione nella cache dei token dopo aver completato la configurazione e il test della connessione a Google Cloud. Per saperne di più sulla memorizzazione nella cache dei token, consulta Abilitare la memorizzazione nella cache dei token.

    Secondi di aggiornamento del token Specifica la quantità di tempo, in secondi, prima della scadenza e dell'aggiornamento di un token di accesso. 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 nei singoli stub del client API.

Configura mappatura servizi

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

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

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

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura mappatura 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 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, esegui queste operazioni:

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

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

  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 Esegui per eliminare la chiave API.

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

Di seguito sono riportati i passaggi per la configurazione generale:

crea una chiave API

Per l'autenticazione mediante una chiave API, devi creare una chiave API. Una stringa della chiave API è una stringa criptata, ad esempio AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe. L'SDK ABAP per Google Cloud utilizza la stringa chiave API nella richiesta HTTP per l'autenticazione sicura quando chiami 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 tienila al sicuro. Questa chiave API è necessaria per configurare l'autenticazione in Google Cloud.

    • Per impostazione predefinita, le chiavi API non sono limitate. Ti consigliamo di limitare le chiavi API selezionando le API a cui è possibile utilizzare questa chiave API. Per saperne di più sull'aggiunta di limitazioni delle API, consulta la pagina Aggiungere limitazioni delle API.

crea un secret e archivia 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 di 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:

  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, consulta 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. Devi quindi configurare l'autenticazione basata su token per accedere alle API di Secret Manager a seconda del deployment SAP.

Utilizza uno dei seguenti metodi per configurare l'autenticazione basata su token per accedere alle API di 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 della transazione /GOOG/SDK_IMG.

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

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

  3. Fai clic su Nuove voci.

  4. Inserisci i valori nei seguenti campi:

    Campo Descrizione
    Nome chiave Google Cloud Specifica un nome per la 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 o meno memorizzati nella cache.

    Ti consigliamo di attivare la memorizzazione nella cache dei token dopo aver completato la configurazione e il test della connessione a Google Cloud. Per saperne di più sulla memorizzazione nella cache dei token, consulta Abilitare la memorizzazione nella cache dei token.

    Secondi di aggiornamento del token Specifica la quantità di tempo, in secondi, prima della scadenza e dell'aggiornamento di un token di accesso. 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 nei singoli stub del client API.

Configura mappatura servizi

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

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

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

  2. Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura mappatura 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 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 delle chiavi API da Secret Manager, segui questi passaggi:

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

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

  2. Fai clic su SDK ABAP per Google Cloud > Utilità > Convalida recupero chiavi 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 di autenticazione

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

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

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

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

  3. Inserisci il nome della chiave client.

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

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

Richiedi assistenza

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