Questo documento mostra come configurare l'autenticazione per accedere alle API di Google Cloud quando il sistema SAP è ospitato su un'istanza VM Compute Engine.
Configura l'autenticazione
Per configurare l'autenticazione, svolgi i seguenti passaggi:
Nella console Google Cloud, abilita l'API Credenziali account di servizio IAM per il progetto Google Cloud che richiede l'autenticazione. Oltre all'API IAM Credentials for Service Account, devi attivare tutte le altre API supportate a cui prevedi di accedere utilizzando l'SDK.
Per informazioni su come abilitare le API Google Cloud, consulta Abilitazione delle API.
Nella console Google Cloud, crea un account di servizio IAM per l'istanza VM host.
Per informazioni su come creare un account di servizio, vedi Creare un account di servizio.
Concedi il ruolo
Service Account Token Creator
all'account di servizio. Per istruzioni, vedi Concedere un singolo ruolo.Collega l'account di servizio all'istanza VM in cui è in esecuzione il tuo carico di lavoro SAP. Imposta inoltre l'ambito di accesso della VM su
cloud-platform
.- Se specifichi l'account di servizio utilizzando la console Google Cloud, per impostazione predefinita l'ambito di accesso della VM è
cloud-platform
. Se specifichi l'account di servizio utilizzando Google Cloud CLI o l'API Compute Engine, devi impostare l'ambito di accesso all'API su
Allow full access to all Cloud APIs
.Per le istruzioni, vedi Creare una VM e collegare l'account di servizio.
Dopo aver aggiornato l'ambito, riavvia la VM. Se hai più istanze VM per la stessa installazione SAP, devi completare questo passaggio su tutte le istanze VM.
- Se specifichi l'account di servizio utilizzando la console Google Cloud, per impostazione predefinita l'ambito di accesso della VM è
Nella console Google Cloud, crea un account di servizio IAM dedicato per accedere alle API Google Cloud.
Per le istruzioni, vedi Creare un account di servizio.
Concedi all'account di servizio i ruoli IAM richiesti per accedere alla funzionalità dell'API. Per comprendere il requisito del ruolo per le API Google Cloud, consulta la documentazione delle singole API e segui il principio del privilegio minimo. Per ulteriori informazioni sui ruoli predefiniti specifici dell'API, consulta Trovare i ruoli IAM per le API Google Cloud.
Se hai creato l'account di servizio in un progetto diverso da quello che contiene le API Google Cloud, devi eseguire passaggi aggiuntivi per la configurazione dell'account di servizio. Per ulteriori informazioni, consulta Configurare gli account di servizio in un ambiente multi progetto.
Nel sistema SAP, configura la chiave client:
In SAP GUI, esegui il codice transazione
/GOOG/SDK_IMG
.In alternativa, esegui il codice transazione
SPRO
e poi fai clic su Immagine di riferimento SAP.Fai clic su ABAP SDK for Google Cloud > Impostazioni di base > Configura chiave client.
Fai clic su Nuove voci.
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, TEST_PUBSUB
.Nome dell'account di servizio Google Cloud Specifica il nome dell'account di servizio a cui hai concesso le autorizzazioni per accedere alle API Google Cloud. Ad esempio,
sap-example-svc-acct@example-project-123456.iam.gserviceaccount.com
.Se la VM host del sistema SAP che contiene l'SDK si trova in un progetto diverso da quello con le API Google Cloud abilitate, specifica l'account di servizio utilizzato per accedere alle API Google Cloud. Per ulteriori informazioni, consulta Configurare gli account di servizio in un ambiente multi progetto.
Ambito Google Cloud Specifica l'ambito di accesso all'API, https://www.googleapis.com/auth/cloud-platform
.Identificatore progetto Google Cloud Specifica l'ID del progetto Google Cloud contenente le API di destinazione. Nome del comando Lascia vuoto questo campo. Classe di autorizzazione Specifica la classe di autorizzazione /GOOG/CL_AUTH_GOOGLE
.Memorizzazione nella cache dei token Il flag che determina se i token di accesso recuperati da Google Cloud vengono memorizzati nella cache o meno.
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 Attivare la memorizzazione nella cache dei token.
Secondi di aggiornamento token Il periodo di tempo, in secondi, prima che un token di accesso scada e debba essere aggiornato. Il valore predefinito è 3500
.Parametro di autorizzazione 1 Lascia vuoto questo campo. Parametro di autorizzazione 2 Lascia vuoto questo campo. Salva la nuova voce.
Nel sistema SAP, 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, consulta Destinazioni RFC.
Nel sistema SAP, configura la tabella di mappatura dei servizi per l'API IAM e altre API che prevedi di utilizzare con l'SDK ABAP per Google Cloud.
In SAP GUI, esegui il codice transazione
/GOOG/SDK_IMG
.In alternativa, esegui il codice transazione
SPRO
e poi fai clic su Immagine di riferimento SAP.Fai clic su ABAP SDK for Google Cloud > Impostazioni di base > Configura mappatura servizio.
Fai clic su Nuove voci.
Specifica le destinazioni RFC per l'API IAM e altre API, ad esempio
Pub/Sub API v1
.Nome Nome servizio Destinazione RFC Nome della chiave Google Cloud iamcredentials.googleapis.com
ZGOOG_IAMCREDENTIALS
Nome della chiave Google Cloud pubsub:v1
ZGOOG_PUBSUB_V1
Salva la nuova voce.
Nel sistema SAP, convalida la configurazione dell'autenticazione. Per ulteriori informazioni, consulta Convalidare la configurazione dell'autenticazione.
Configurare gli account di servizio in un ambiente tra progetti
La VM host del sistema SAP, che contiene l'SDK, può trovarsi in un progetto Google Cloud diverso da quello con le API Google Cloud abilitate. In questo caso, devi configurare gli account di servizio con i ruoli IAM richiesti in modo che l'SDK possa accedere alle API dal progetto diverso.
La tabella seguente mostra un esempio di configurazione dell'account di servizio per l'accesso all'API tra progetti.
Ambiente | VM host SAP | API di Google Cloud |
---|---|---|
Progetto Google Cloud | project-sap-host |
project-google-apis |
Account di servizio assegnato alla VM host SAP | sa-sap-host@project-sap-host.iam.gserviceaccount.com |
N/D |
Service account per accedere alle API Google Cloud | sa-google-apis@project-sap-host.iam.gserviceaccount.com |
N/D |
Ruoli IAM per l'account di servizio | Nel progetto project-sap-host , concedi all'account di servizio
sa-sap-host@project-sap-host.iam.gserviceaccount.com
il ruolo Creatore token account di servizio. |
Nel progetto project-google-apis , aggiungi l'account di servizio
sa-google-apis@project-sap-host.iam.gserviceaccount.com
come entità e concedi all'account di servizio
i ruoli appropriati per connettersi alle API Google Cloud. |
Per configurare gli account di servizio:
- Nel progetto Google Cloud che contiene la VM host SAP,
concedi all'account di servizio della VM host SAP il ruolo
Service Account Token Creator
. Per ulteriori informazioni sulla procedura, consulta Concedere un singolo ruolo. - Nel progetto Google Cloud contenente la VM host SAP, crea un account di servizio. Annota il nome dell'account di servizio. Specifica questo nome quando aggiungi l'account di servizio come entità all'altro progetto che contiene le API Google Cloud.
Nell'altro progetto che contiene le API Google Cloud, aggiungi l'account di servizio come entità e concedi i ruoli appropriati per collegarti alle API Google Cloud.Per aggiungere un account di servizio al progetto Google Cloud che contiene le API Google Cloud, svolgi i seguenti passaggi:
Nella console Google Cloud, vai alla pagina Autorizzazioni IAM:
Verifica che il nome del progetto che contiene le API Google Cloud di destinazione sia visualizzato nella parte superiore della pagina. Ad esempio:
Autorizzazioni per il progetto "
PROJECT_NAME
"In caso contrario, cambia progetto.
Nella pagina IAM, fai clic su
Concedi l'accesso. Si apre la finestra di dialogo Concedi l'accesso a "PROJECT_NAME
".Nel campo Nuove entità, specifica il nome dell'account di servizio.
Nel campo Seleziona un ruolo, specifica un ruolo pertinente. Ad esempio, per Pub/Sub, per modificare argomenti e iscrizioni e per accedere alla pubblicazione e al consumo di messaggi, puoi specificare il ruolo Editor Pub/Sub (
roles/pubsub.editor
).Per ulteriori informazioni sui ruoli predefiniti specifici dell'API, consulta Documentazione di riferimento sui ruoli di base e predefiniti IAM.
Aggiungi altri ruoli in base alle esigenze di utilizzo dell'API. Implementa le best practice consigliate da Google applicando il principio del privilegio minimo.
Fai clic su Salva. L'account di servizio viene visualizzato nell'elenco dei principali del progetto nella pagina IAM.
Convalida la configurazione dell'autenticazione
Per convalidare la configurazione dell'autenticazione, svolgi i seguenti passaggi:
In SAP GUI, esegui il codice transazione
/GOOG/SDK_IMG
.In alternativa, esegui il codice transazione
SPRO
e poi fai clic su Immagine di riferimento SAP.Fai clic su ABAP SDK for Google Cloud > Utilità > Convalida configurazione autenticazione.
Inserisci il nome della chiave client.
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.
Assistenza
Se hai bisogno di aiuto per risolvere i problemi relativi all'SDK ABAP per Google Cloud, segui questi passaggi:
Fai riferimento alla guida alla risoluzione dei problemi di ABAP SDK for Google Cloud.
Poni le tue domande e discuti dell'ABAP SDK per Google Cloud con la community nei forum di Cloud.
Raccogli tutte le informazioni di diagnostica disponibili e contatta l'assistenza clienti Google Cloud. Per informazioni su come contattare il team dell'assistenza clienti, consulta Assistenza per SAP su Google Cloud.