Stai visualizzando la documentazione di Apigee Edge.
Vai alla
documentazione di Apigee X. informazioni
Quando utilizzi SAML con l'API Edge, il processo utilizzato per ottenere i token di accesso e aggiornamento OAuth2 dall'asserzione SAML è chiamato flusso passcode. Con il flusso di passcode, utilizzi un browser per ottenere un passcode una-tantum da utilizzare per ottenere i token OAuth2.
Tuttavia, il tuo ambiente potrebbe supportare l'automazione per attività di sviluppo comuni, come l'automazione dei test o l'integrazione continua/deployment continuo (CI/CD). Per automatizzare queste attività quando SAML è abilitato, è necessario ottenere e aggiornare i token OAuth2 senza dover copiare/incollare un passcode da un browser.
Informazioni sugli utenti di macchine
Apigee Edge supporta gli utenti delle macchine nella tua organizzazione abilitata per SAML. Gli utenti delle macchine vengono utilizzati esclusivamente per l'automazione e non sono accessibili direttamente da una persona.
Un utente delle macchine può ottenere i token OAuth2 senza dover specificare un passcode. Ciò significa che puoi automatizzare completamente il processo di ottenimento e aggiornamento dei token OAuth2 utilizzando l'API Edge.
Passaggi per automatizzare il processo di generazione dei token
Per automatizzare il processo di generazione del token:
Video: guarda un breve video per scoprire come automatizzare l'accesso alle API Apigee Edge utilizzando le credenziali dell'utente macchina.
Gestisci gli utenti delle macchine per le zone di identità SAML
Apigee fornisce l'interfaccia a riga di comando (CLI) per la gestione degli utenti delle macchine per creare e gestire gli account utente della macchina. I passaggi per utilizzare l'interfaccia a riga di comando di gestione degli utenti della macchina sono descritti nelle sezioni seguenti.
Utilizzare l'interfaccia a riga di comando
Per utilizzare l'interfaccia a riga di comando di gestione degli utenti delle macchine, scarica e annulla iltar il seguente file:
usermgmt.tar.gz
(1)
Il formato per chiamare l'interfaccia a riga di comando è il seguente:
usermgmt_platform [command] [flags]
La seguente tabella riassume le piattaforme supportate e il comando corrispondente per chiamare l'interfaccia a riga di comando di gestione degli utenti delle macchine.
Gli eseguibili si trovano nella directory usermgmt
.
Piattaforma | 32-bit | A 64 bit |
---|---|---|
Linux | usermgmt_linux_386 |
usermgmt_linux_amd64 |
Mac | usermgmt_darwin_386 |
usermgmt_darwin_amd64 |
Windows | usermgmt_windows_386 |
usermgmt_windows_amd64 |
La seguente tabella riassume i comandi che possono essere specificati.
Se vuoi, puoi passare uno dei seguenti flag per visualizzare la guida al comando specificato: -h o --help
Accedi all'interfaccia a riga di comando
La prima volta che esegui l'interfaccia a riga di comando entro 24 ore, ti viene richiesto 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_skip
L'interfaccia a riga di comando per la gestione degli utenti della macchina archivia un token di accesso sulla macchina locale, quindi dovrai accedere solo una volta ogni 24 ore.
Richiedi assistenza per l'utilizzo dell'interfaccia a riga di comando
Visualizza le informazioni sull'utilizzo dell'interfaccia a riga di comando utilizzando il comando usermgmt_platform help. Consulta Utilizzare l'interfaccia a riga di comando per l'elenco delle piattaforme supportate.
usermgmt_platform help
Vengono visualizzate le seguenti informazioni della guida:
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 per un comando specifico passando sia il comando che il flag -h o --help alla riga di comando.
Ad esempio, per ricevere assistenza sul comando list:
usermgmt_platform list -h
Vengono visualizzate le seguenti informazioni della guida:
Lists the machine users in an identity zone.
Usage:
usermgmt list [flags]
Flags:
-h, --help help for list
Crea un utente della macchina in una zona di identità
Crea un utente della macchina in una zona di identità utilizzando il comando usermgmt_platform create. Consulta Utilizzare l'interfaccia a riga di comando per l'elenco delle piattaforme supportate.
- Inserisci il seguente comando:
usermgmt_platform create
Viene visualizzato l'elenco delle zone di identità:
myzone1 myzone2
- Inserisci il nome di una zona quando richiesto:
Enter a zone name: myzone1
- Inserisci un nome utente per l'utente della macchina:
Create a Machine User Username: machineuser1@mycompany.com
- Inserisci una password per l'utente della macchina. Inserisci di nuovo la password quando richiesto.
Password: password Re-enter password: password
L'utente viene creato.
Created machine user machineuser1@mycompany.com
Elenco di tutti gli utenti macchina in una zona di identità
Elenca tutti gli utenti delle macchine in una zona di identità utilizzando il comando usermgmt_platform list. Consulta Utilizzare l'interfaccia a riga di comando per l'elenco delle piattaforme supportate.
- Inserisci il seguente comando:
Viene visualizzato l'elenco delle zone di identità:usermgmt_platform list
myzone1 myzone2
- Inserisci il nome di una zona quando richiesto:
Enter a zone name: myzone1
Viene visualizzato l'elenco di utenti della 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 di un utente della macchina in una zona di identità utilizzando il comando usermgmt_platform reset. Consulta Utilizzare l'interfaccia a riga di comando per l'elenco delle piattaforme supportate.
- Inserisci il seguente comando:
usermgmt_platform reset
Viene visualizzato l'elenco delle zone di identità:
myzone1 myzone2
- Inserisci il nome di una zona quando richiesto:
Enter a zone name: myzone1
- Inserisci il nome utente dell'utente della macchina per cui 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 della macchina. Inserisci di nuovo la password quando richiesto.
Enter the new password: password Re-enter password: password
La password è stata reimpostata.
Reset password for machine user machineuser1@mycompany.com
Elimina un utente della macchina in una zona di identità
Elimina un utente della macchina in una zona di identità utilizzando il comando usermgmt_platform delete. Consulta Utilizzare l'interfaccia a riga di comando per l'elenco delle piattaforme supportate.
- Inserisci il seguente comando:
Viene visualizzato l'elenco delle zone di identità:usermgmt_platform delete
myzone1 myzone2
- Inserisci il nome di una zona quando richiesto:
Enter a zone name: myzone1
- Inserisci il nome utente dell'utente della macchina che vuoi eliminare:
Delete User Enter the username for the machine user Username: machineuser1@mycompany.com
L'utente della macchina viene eliminato.
Deleted user machineuser1@mycompany.com
Assegna i ruoli richiesti all'utente macchina nell'organizzazione Edge
Utilizzando la UI, aggiungi l'utente della macchina all'organizzazione Edge abilitata per SAML e assegnagli i ruoli richiesti (ad esempio, amministratore dell'organizzazione), come descritto in Aggiunta di utenti.
Recuperare i token OAuth2 dell'utente della macchina
Puoi automatizzare il processo di generazione dei token e gestire la memorizzazione nella cache per gli utenti delle macchine con le utilità
acurl
(1) e get_token
(1), come descritto in
OAuth2 per utenti delle macchine e Utenti delle macchine nelle zone SAML.
Per ottenere manualmente i token OAuth2 dell'utente della macchina con curl
:
- Utilizza lo strumento di codifica degli URL che preferisci per codificare il nome utente e la password dell'utente della macchina.
Avviso: utilizza uno strumento di codifica degli URL
interno per assicurarti che le credenziali utente del computer non vengano compromesse. - Genera i token di accesso e aggiornamento iniziali chiamando l'endpoint del token SAML, 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'intestazioneAuthorization
. La chiamata stampa i token di accesso e di aggiornamento sustdout
. - Passa il token di accesso a una chiamata API di gestione perimetrale come intestazione di connessione:
curl -H "Authorization: Bearer ACCESS_TOKEN" \ https://api.enterprise.apigee.com/v1/organizations/orgName
- Quando il token di accesso scade, puoi aggiornarlo inviandolo all'endpoint del token SAML, come illustrato 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 della piattaforma Google Cloud da parte dell'utente, inclusi i Termini
specifici del servizio disponibili all'indirizzo https://cloud.google.com/terms/service-terms.