Questo documento mostra come configurare l'autenticazione per accedere alle API Google Workspace utilizzando le credenziali client OAuth 2.0. Le credenziali client OAuth 2.0 consentono di recuperare un token nel contesto di un utente finale, ad esempio un token necessario per accedere a Fogli Google. Indipendentemente da dove è ospitato il sistema SAP, puoi utilizzare le credenziali client OAuth 2.0 per l'autenticazione nelle API Google Workspace, purché il sistema supporti OAuth 2.0.
Per eseguire l'autenticazione nelle API Google Workspace utilizzando le credenziali client OAuth 2.0, devi completare le seguenti configurazioni nel progetto Google Cloud e nel tuo panorama SAP:
Configurazioni della console Google Cloud
Configurazioni orizzontali SAP
L'SDK ABAP per Google Cloud viene fornito con i seguenti componenti principali, necessari per l'autenticazione basata sulle credenziali client OAuth 2.0:
- Il tipo di fornitore di servizi OAuth 2.0
/GOOG/ABAP_SDK
specificato per la configurazione del profilo client OAuth 2.0. - Classe di autenticazione
/GOOG/CL_OAUTH_GOOGLE
specificata per la configurazione della chiave client. - Implementazione di SAP Business Add-Ins (BAdI) che precompilano parametri OAuth specifici di Google, come endpoint e impostazioni dei parametri richieste.
Tuttavia, devi anche completare le seguenti configurazioni nel tuo panorama SAP:
- Crea profilo client OAuth 2.0
- Configurare il client OAuth 2.0
- Configura la chiave client
- Richiedere i token di accesso OAuth 2.0
Crea consenso OAuth 2.0
La schermata per il consenso OAuth è una richiesta che indica agli utenti chi richiede l'accesso ai loro dati e il tipo di dati a cui gli utenti stanno consentendo l'accesso alla tua app.
Nella console Google Cloud, vai a Menu> API e servizi > Schermata consenso OAuth.
Seleziona il tipo di utente Esterno per la tua app e fai clic su Crea.
Per compilare il modulo di registrazione dell'app, specifica i seguenti dettagli:
- Nome app: il nome dell'applicazione che richiede il consenso.
- Email per l'assistenza agli utenti: un'email di assistenza a cui gli utenti possono contattarti per domande sul loro consenso.
- Domini autorizzati: i domini da utilizzare durante il consenso OAuth.
- Dati di contatto dello sviluppatore: gli indirizzi email a cui Google per ricevere notifiche su eventuali modifiche al progetto.
Fai clic su Save and Continue.
Creare credenziali con ID client OAuth 2.0
Per eseguire l'autenticazione come utente finale e accedere ai dati utente nella tua app, devi creare uno o più ID client OAuth 2.0. L'ID client viene utilizzato per identificare una singola app nei server OAuth di Google.
Nella console Google Cloud, vai a Menu > API e servizi > Credenziali.
Fai clic su Crea credenziali > ID client OAuth.
Nel campo Tipo di applicazione, seleziona Applicazione web.
Nel campo Nome, digita un nome per le credenziali. Questo nome viene visualizzato solo nella console Google Cloud.
In URI di reindirizzamento autorizzati, fai clic su Aggiungi URI. Quindi, inserisci l'URI di reindirizzamento SAP a cui il server OAuth 2.0 può inviare le risposte.
Puoi ottenere l'URI di reindirizzamento SAP dalle impostazioni OAuth 2.0 nella transazione
SICF
.Fai clic su Crea.
Prendi nota dell'ID client e del client secret.
Crea profilo client OAuth 2.0
In qualità di sviluppatore ABAP, puoi creare un profilo client OAuth con gli ambiti OAuth 2.0 necessari per i tuoi requisiti aziendali. Per informazioni sugli ambiti OAuth 2.0 per le API di Google, consulta la pagina Ambiti OAuth 2.0 per le API di Google.
Un profilo client OAuth /GOOG/OAUTH_PROFILE_SAMPLE
di esempio viene fornito con l'SDK, con gli ambiti OAuth 2.0 configurati per l'API Fogli Google.
- Nella GUI di SAP, inserisci il codice della transazione
SE80
. - Dall'elenco a discesa, seleziona Oggetto di sviluppo.
- Per creare un oggetto di sviluppo nello spazio dei nomi personalizzato, seleziona Crea > Altro > Profilo client OAuth 2.0 nel menu contestuale del nome dell'oggetto.
Inserisci i seguenti dettagli:
- Nel campo Profilo cliente, inserisci il nome del profilo.
- Nel campo Type (Tipo), seleziona
/GOOG/ABAP_SDK
. Questo è il tipo di provider predefinito fornito con l'SDK ABAP per Google Cloud.
Aggiungi gli ambiti necessari al tuo profilo client. Per informazioni sugli ambiti OAuth 2.0, vedi Ambiti OAuth 2.0 per le API di Google.
Salva il profilo client nel pacchetto di sviluppo. Includi il profilo client in una richiesta di trasporto, che può essere trasportato in ambienti più elevati.
Configura il client OAuth 2.0
In qualità di amministratore SAP, devi associare il profilo client OAuth alle credenziali client di Google Cloud.
Si tratta di un'attività una tantum che devi eseguire su ogni sistema SAP nel tuo panorama SAP (sviluppo, test e produzione).
- Nella GUI di SAP, inserisci il codice della transazione
OA2C_CONFIG
. La pagina di accesso SAP si apre nel browser predefinito. - Accedi con le tue credenziali SAP.
- Per creare un client OAuth 2.0, fai clic su Crea.
- Nella finestra di dialogo Crea un nuovo client OAuth 2.0:
- Seleziona il profilo client OAuth 2.0 che hai creato in precedenza in Creare un profilo client OAuth 2.0 nel sistema SAP.
- Assegna un nome alla configurazione.
- Inserisci l'ID client OAuth 2.0 dalle credenziali Google Cloud che hai creato in precedenza in Creare credenziali dell'ID client OAuth 2.0.
- Fai clic su Ok.
- Nella scheda Amministrazione, nella sezione Impostazioni generali, inserisci il client secret utilizzando le credenziali Google Cloud che hai creato in precedenza in Creare credenziali con ID client OAuth 2.0.
Se utilizzi un server proxy per instradare il traffico HTTP/HTTPS in uscita dal sistema SAP, devi mantenere i seguenti dettagli dell'host proxy nella sezione Impostazioni di accesso:
- Host proxy
- Porta proxy
- Utente proxy
- Password proxy
Fai clic su Salva.
Configura chiave client
-
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. - Fai clic su SDK ABAP per Google Cloud > Impostazioni di base > Configura chiave client.
- Fai clic su Nuove voci.
Inserisci i valori nei seguenti campi:
Campo Descrizione Nome chiave Google Cloud Specifica un nome per la configurazione della chiave client. Nome dell'account di servizio Google Cloud Lascia vuoto questo campo. Ambito di Google Cloud Lascia vuoto questo campo. Identificatore di progetto Google Cloud 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 autenticazione, /GOOG/CL_OAUTH_GOOGLE
.Memorizzazione nella cache dei token Lascia vuoto questo campo. Secondi di aggiornamento del token Lascia vuoto questo campo. Parametro di autorizzazione 1 Specifica il nome del profilo client OAuth che hai creato in precedenza in Creare un profilo client OAuth 2.0 nel sistema SAP. Parametro di autorizzazione 2 Specifica il nome della configurazione definito nel client OAuth 2.0 per un ID client.
Questo campo è obbligatorio se hai associato un singolo profilo client OAuth a più di un ID client.
Per saperne di più, vedi Scenario con più progetti Google Cloud.
Salva la nuova voce.
Richiedere i token di accesso OAuth 2.0
In qualità di utente finale, devi richiedere un token di accesso OAuth 2.0 per consentire l'accesso alle risorse dell'API.
Si tratta di un'attività una tantum che ogni utente deve eseguire su ogni sistema SAP nel tuo panorama SAP (sviluppo, test e produzione). Se gli ambiti OAuth vengono modificati, gli utenti dovranno ripetere l'attività.
- Nella GUI di SAP, inserisci il codice della transazione
OA2C_GRANT
. La pagina di accesso SAP si apre nel browser predefinito. - Accedi con le tue credenziali SAP.
- Seleziona l'ID client con il quale vuoi accedere alle API.
- Fai clic su Richiedi token OAuth 2.0.
Nella schermata per il consenso di Accedi con Google, inserisci le credenziali del tuo Account Google e fai clic su Consenti.
Una spia verde nella colonna Stato accesso indica che l'accesso alle risorse dell'API è consentito in base al profilo client OAuth 2.0.
Scenario con più progetti Google Cloud
Se hai abilitato le API Google Cloud in più di un progetto Google Cloud, segui queste indicazioni per configurare l'autenticazione mediante credenziali client OAuth 2.0:
- In tutti i progetti Google Cloud:
- Nel tuo sistema SAP:
- Crea un profilo client OAuth 2.0.
- Configura il client OAuth 2.0 per ogni ID client.
- Se devi associare un singolo profilo client OAuth a più di un ID client, segui queste istruzioni aggiuntive:
- Configura il client OAuth 2.0 per ogni ID client. Quando configuri un client OAuth 2.0, specifica un nome di configurazione univoco per ciascun ID client nella finestra di dialogo Crea un nuovo client OAuth 2.0. Per maggiori informazioni, consulta la pagina Configurare il client OAuth 2.0.
- Configura chiavi client separate per ogni client OAuth 2.0 con un proprio nome di configurazione in Parametro di autorizzazione 2. Per ulteriori informazioni, consulta Configurare la chiave client.
Convalida configurazione di autenticazione
Per convalidare la configurazione dell'autenticazione, segui questi passaggi:
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.Fai clic su SDK ABAP per 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.
Richiedi assistenza
Se hai bisogno di aiuto per risolvere i problemi con l'SDK ABAP per Google Cloud, procedi nel seguente modo:
Consulta la guida alla risoluzione dei problemi relativi all'SDK ABAP per Google Cloud.
Poni le tue domande e discuti dell'SDK ABAP per Google Cloud con la community dei forum di Cloud.
Raccogli tutte le informazioni di diagnostica disponibili e contatta l'assistenza clienti Google Cloud. Per informazioni su come contattare l'assistenza clienti, vedi Ottenere assistenza per SAP su Google Cloud.