Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Quando utilizzi SAML con l'API Edge, la procedura che utilizzi per ottenere i token di accesso e di aggiornamento OAuth2 dall'asserzione SAML è chiamata flusso del codice di accesso. Con il flusso del passcode, utilizzi un browser per ottenere un passcode monouso che poi utilizzi per ottenere i token OAuth2.
Tuttavia, il tuo ambiente potrebbe supportare l'automazione per le attività di sviluppo comuni, come l'automazione dei test o l'integrazione continua/deployment continuo (CI/CD). Per automatizzare queste attività quando SAML è abilitato, devi avere un modo per ottenere e aggiornare i token OAuth2 senza dover copiare/incollare un codice di accesso da un browser.
Informazioni sugli utenti macchina
Apigee Edge supporta gli utenti macchina nella tua organizzazione abilitata per SAML. Gli utenti macchina vengono utilizzati esclusivamente per l'automazione e non sono accessibili direttamente da una persona.
Un utente macchina può ottenere i token OAuth2 senza dover specificare un codice di accesso. Ciò significa che puoi automatizzare completamente la procedura di di ottenimento e aggiornamento dei token OAuth2 utilizzando l'API Edge.
Passaggi per automatizzare la procedura di generazione dei token
Per automatizzare la procedura di generazione dei token:
Video: guarda un breve video per scoprire come automatizzare l'accesso alle API Apigee Edge utilizzando le credenziali dell'utente macchina.
Gestire gli utenti macchina per le zone di identità SAML
Apigee fornisce l'interfaccia a riga di comando (CLI) di gestione degli utenti macchina per creare e gestire gli account utente macchina. I passaggi per utilizzare la CLI di gestione degli utenti macchina sono descritti nelle sezioni seguenti.
Utilizzare la CLI
Per utilizzare la CLI di gestione degli utenti macchina, scarica e decomprimi il seguente file:
usermgmt.tar.gz(1)
Il formato per chiamare la CLI è il seguente:
usermgmt_platform [command] [flags]
La tabella seguente riassume le piattaforme supportate e il comando corrispondente per chiamare la CLI di gestione degli utenti macchina.
Gli eseguibili si trovano nella directory usermgmt.
| Piattaforma | 32-bit | 64-bit |
|---|---|---|
| Linux | usermgmt_linux_386 |
usermgmt_linux_amd64 |
| Mac | usermgmt_darwin_386 |
usermgmt_darwin_amd64 |
| Windows | usermgmt_windows_386 |
usermgmt_windows_amd64 |
La tabella seguente riassume i comandi che possono essere specificati.
Facoltativamente, puoi passare uno dei seguenti flag per visualizzare la guida sul comando specificato: -h o --help
Accedere alla CLI
La prima volta che esegui la CLI in un periodo di 24 ore, ti viene chiesto di inserire le credenziali dell'account zoneadmin.
Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skipLa CLI di gestione degli utenti macchina archivia un token di accesso sulla tua macchina locale, quindi devi accedere solo una volta ogni 24 ore.
Ricevere assistenza per l'utilizzo della CLI
Visualizza le informazioni sull'utilizzo della CLI utilizzando il usermgmt_platform help comando. Per un elenco delle piattaforme supportate, consulta Utilizzare la CLI.
usermgmt_platform help
Vengono visualizzate le seguenti informazioni di assistenza:
A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.
Usage:
usermgmt [flags]
usermgmt [command]
Available Commands:
create Creates a machine users in an identity zone.
delete Deletes a machine users in an identity zone.
help Help about any command
list Lists the machine users in an identity zone.
reset Resets the password for a machine user in an identity zone.
Flags:
-h, --help help for usermgmt
Use "usermgmt [command] --help" for more information about a command.
Visualizza la guida su un comando specifico passando sia il comando sia il flag -h o --help nella riga di comando.
Ad esempio, per ricevere assistenza sul comando list:
usermgmt_platform list -h
Vengono visualizzate le seguenti informazioni di assistenza:
Lists the machine users in an identity zone.
Usage:
usermgmt list [flags]
Flags:
-h, --help help for list
Creare un utente macchina in una zona di identità
Crea un utente macchina in una zona di identità utilizzando il usermgmt_platform create comando. Per un elenco delle piattaforme supportate, consulta Utilizzare la CLI.
- Inserisci questo comando:
usermgmt_platform createViene visualizzato l'elenco delle zone di identità:
myzone1 myzone2 - Inserisci il nome di una zona al prompt:
Enter a zone name: myzone1 - Inserisci un nome utente per l'utente macchina:
Create a Machine User Username: machineuser1@mycompany.com - Inserisci una password per l'utente macchina. Quando richiesto, inserisci di nuovo la password.
Password: password Re-enter password: passwordL'utente viene creato.
Created machine user machineuser1@mycompany.com
Elencare tutti gli utenti macchina in una zona di identità
Elenca tutti gli utenti macchina in una zona di identità utilizzando il comando usermgmt_platform list. Per un elenco delle piattaforme supportate, consulta Utilizzare la CLI.
- Inserisci questo comando:
Viene visualizzato l'elenco delle zone di identità:usermgmt_platform listmyzone1 myzone2 - Inserisci il nome di una zona al prompt:
Enter a zone name: myzone1Viene visualizzato l'elenco degli utenti macchina nella zona di identità:
Machine users in the zone: machineuser1@mycompany.com
Reimpostare la password per un utente macchina in una zona di identità
Reimposta la password per un utente macchina in una zona di identità utilizzando il comando usermgmt_platform reset. Per un elenco delle piattaforme supportate, consulta Utilizzare la CLI.
- Inserisci questo comando:
usermgmt_platform resetViene visualizzato l'elenco delle zone di identità:
myzone1 myzone2 - Inserisci il nome di una zona al prompt:
Enter a zone name: myzone1 - Inserisci il nome utente dell'utente macchina per il quale vuoi reimpostare la password:
Reset User Password Enter the username for the machine user Username: machineuser1@mycompany.com - Inserisci una nuova password per l'utente macchina. Quando richiesto, inserisci di nuovo la password.
Enter the new password: password Re-enter password: passwordLa password viene reimpostata.
Reset password for machine user machineuser1@mycompany.com
Eliminare un utente macchina in una zona di identità
Elimina un utente macchina in una zona di identità utilizzando il usermgmt_platform delete comando. Per un elenco delle piattaforme supportate, consulta Utilizzare la CLI.
- Inserisci questo comando:
Viene visualizzato l'elenco delle zone di identità:usermgmt_platform deletemyzone1 myzone2 - Inserisci il nome di una zona al prompt:
Enter a zone name: myzone1 - Inserisci il nome utente dell'utente macchina che vuoi eliminare:
Delete User Enter the username for the machine user Username: machineuser1@mycompany.comL'utente macchina viene eliminato.
Deleted user machineuser1@mycompany.com
Assegnare i ruoli richiesti all'utente macchina nella tua organizzazione Edge
Utilizzando l'interfaccia utente, aggiungi l'utente macchina alla tua organizzazione Edge abilitata per SAML e assegnagli i ruoli richiesti (ad esempio amministratore dell'organizzazione), come descritto in Aggiungere utenti.
Recuperare i token OAuth2 dell'utente macchina
Puoi automatizzare la procedura di generazione dei token e gestire la memorizzazione nella cache dei token per gli utenti macchina con le
acurl(1) e get_token(1) utilità, come descritto in
OAuth2 per utenti macchina e Utenti macchina nelle zone SAML.
Per recuperare manualmente i token OAuth2 dell'utente macchina con curl:
- Utilizza lo strumento di codifica URL che preferisci per codificare il nome utente e la password dell'utente macchina.
Avviso: utilizza uno strumento di codifica URL
interno per assicurarti che le credenziali dell'utente macchina non vengano compromesse. - Genera i token di accesso e di aggiornamento iniziali chiamando l'endpoint del token SAML, come mostrato nell'esempio seguente:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token -s \ -d 'grant_type=password&username=machineusername&password=machineuserpassword'
Per l'autorizzazione, passa la credenziale client OAuth2 riservata,
ZWRnZWNsaTplZGdlY2xpc2VjcmV0, nell'Authorizationintestazione. La chiamata stampa i token di accesso e di aggiornamento sustdout. - Passa il token di accesso a una chiamata API di gestione Edge come intestazione Bearer:
curl -H "Authorization: Bearer ACCESS_TOKEN" \ https://api.enterprise.apigee.com/v1/organizations/orgName
- Quando il token di accesso scade, puoi aggiornarlo inviando il token di aggiornamento all'endpoint del token SAML
token, come mostrato nell'esempio seguente:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token \ -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'
(1) Copyright 2023 Google LLC
Gli strumenti usermgmt, acurl e get_token sono resi disponibili come "Software" ai sensi del
contratto che regola l'utilizzo di Google Cloud Platform, inclusi i Termini
specifici dei servizi disponibili all'indirizzo https://cloud.google.com/terms/service-terms.