Eseguire l'autenticazione utilizzando le chiavi API

Questo documento mostra come configurare l'autenticazione per accedere a Google Cloud le API mediante chiavi API. Solo alcune API Google Cloud utilizzano le chiavi API per l'autenticazione, ad esempio Google Maps Platform. Esamina la documentazione di autenticazione del servizio o dell'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 se l'API che vuoi utilizzare supporta le chiavi API.

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

Esegui l'autenticazione utilizzando la chiave API memorizzata in SAP SSF

Di seguito sono riportati i passaggi per la configurazione generale:

crea una chiave API

Per l'autenticazione tramite 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 della chiave API nella richiesta HTTP per autenticarsi in modo sicuro quando viene chiamata un'API Google Cloud.

Google Cloud offre diversi modi per creare chiavi API.

Per creare chiavi API utilizzando la console Google Cloud, svolgi i seguenti 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 e 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 può essere utilizzata questa chiave API. Per saperne di più sull'aggiunta di limitazioni delle API, consulta la pagina Aggiungere limitazioni delle API.

Memorizza la chiave API in SSF

L'SDK ABAP per Google Cloud offre un'opzione per archiviare in modo sicuro Chiavi API che utilizzano il meccanismo Secure Store and Forward (SSF) di SAP).

Utilizzando l'opzione SSF, puoi archiviare la chiave API in un formato criptato nella tabella /GOOG/APIKEY_BIN. Quando viene chiamata un'API, la chiave API viene recuperato dalla tabella /GOOG/APIKEY_BIN, decriptato e aggiunto 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 chiave API memorizzata in SAP SSF, devi avere installato nel tuo sistema SAP la versione 8.5 o successive della libreria di crittografia 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 di crittografia SAP:

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

Configurare l'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 nome che preferisci o utilizzare un'applicazione SSF esistente con un nome diverso. Se vuoi utilizzare un'altra applicazione SSF 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. In SAP GUI, inserisci il codice 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 per l'applicazione vengono compilati automaticamente.

  4. Salva la nuova voce.

Creare un ambiente di sicurezza personale (PSE)

  1. In SAP GUI, inserisci il codice 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 gli altri campi con i valori predefiniti inseriti dal sistema.

  4. Salva la nuova voce.

Archivia la chiave API

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

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

  2. Fai clic su ABAP SDK for Google Cloud > Impostazioni di base > Configura chiave API (utilizzo di 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 Creare una chiave API.

  5. Seleziona Salva.

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

Configura la chiave client

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

    In alternativa, esegui il codice transazione SPRO, quindi 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 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 dell'account di servizio Google Cloud Lascia vuoto questo campo.
    Ambito 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 contenente 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 sono stati recuperati o meno di Google Cloud vengono memorizzate nella cache.

    Ti consigliamo di attivare la memorizzazione nella cache dei token al termine dell'operazione configurando e testando la connessione a Google Cloud. Per ulteriori informazioni sulla memorizzazione nella cache dei token, consulta Attivare la memorizzazione nella cache dei token.

    Secondi di aggiornamento del token Specifica la quantità di tempo, in secondi, che deve trascorrere prima che il token di accesso scade 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.

Creare nuove destinazioni RFC

Per le API che prevedi di utilizzare con l'SDK ABAP per Google Cloud, creare 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 utilizza gli endpoint API predefiniti gestiti nei singoli stub client API.

Configura la mappatura dei servizi

Configura la tabella di mappatura 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 transazione SPRO, quindi fai clic su IMG riferimento SAP.

  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 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 sistema SAP.

Per eliminare una chiave API, segui questi passaggi:

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

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

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

  3. Nel campo Nome della 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

I passaggi di configurazione di alto livello sono i seguenti:

crea una chiave API

Per l'autenticazione tramite 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 della chiave API nella richiesta HTTP per autenticarsi in modo sicuro quando viene chiamata 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 e 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 con cui può essere utilizzata questa chiave API. Per saperne di più sull'aggiunta di limitazioni delle API, consulta la pagina Aggiungere limitazioni delle API.

Crea un segreto e memorizza la chiave API

L'SDK ABAP per Google Cloud offre un'opzione per archiviare in modo sicuro Chiavi API che utilizzano il servizio Secret Manager di Google Cloud. Per archiviare in modo sicuro le stringhe di chiavi API, Secret Manager abilita Ti consigliamo di seguire le best practice per l'utilizzo sicuro delle chiavi API.

Per creare un secret e memorizzare la chiave API, svolgi i seguenti passaggi:

  1. Abilita l'API Secret Manager.

    Vai alla libreria di API

  2. Nella console Google Cloud, crea un secret e archivia la chiave API come all'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. Pertanto, devi configurare l'autenticazione basata su token per accedere alle API Secret Manager, a seconda del deployment di SAP.

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 Secret Manager l'accesso.

Configura la chiave client per il secret

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

    In alternativa, esegui il codice transazione SPRO, quindi 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 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 dell'account di servizio Google Cloud Lascia vuoto questo campo.
    Ambito 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 contenente 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 sono stati recuperati o meno di Google Cloud vengono memorizzate nella cache.

    Ti consigliamo di attivare la memorizzazione nella cache dei token al termine della configurazione e del test della connessione a Google Cloud. Per ulteriori informazioni 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, che deve trascorrere prima che il token di accesso scade e deve essere aggiornato. Il valore predefinito è 3500.
    Parametro di autorizzazione 1 Specifica il nome della chiave client che hai creato. per accedere 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.

Creare nuove destinazioni RFC

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

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

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

Configura la mappatura dei servizi

Configura la tabella di mappatura 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 transazione SPRO, quindi fai clic su IMG riferimento SAP.

  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 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. Nella GUI di SAP, esegui il codice della transazione /GOOG/SDK_IMG.

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

  2. Fai clic su ABAP SDK for Google Cloud > Utilità > Convalida il 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 viene recuperata correttamente. di Secret Manager.

Convalida la configurazione dell'autenticazione

Per convalidare la configurazione dell'autenticazione, svolgi i seguenti passaggi:

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

    In alternativa, esegui il codice transazione SPRO, quindi 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 tutte le configurazioni passaggi sono stati completati correttamente.

Assistenza

Se hai bisogno di aiuto per risolvere i problemi con l'SDK ABAP per Google Cloud, procedi le seguenti: