Uso del metodo get_token

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
informazioni

L'utilità get_token(1) ti consente di scambiare le credenziali Apigee con un token di accesso e aggiornamento che puoi utilizzare per accedere alle API Edge. I token possono essere utilizzati anche con le implementazioni SAML e LDAP dei flussi di lavoro OAuth2.

get_token ti consente di:

  • Ottieni un token di accesso o di aggiornamento.
  • Stampa i token in stdout per utilizzarli in variabili e comandi.
  • Archivia i token sul tuo disco.

Puoi quindi aggiungere un token valido nelle richieste all'API Edge e ricevere un nuovo token alla scadenza.

Prerequisito: prima di poter utilizzare get_token, devi installarlo.

Sintassi get_token

L'utilità get_token utilizza la seguente sintassi:

get_token -u USERNAME:PASSWORD [-m MFACODE]

o

get_token -p passcode

Dove:

Elemento Campo obbligatorio? Descrizione
USERNAME Facoltativo. È richiesta una combinazione di nome utente e password o un passcode. Il tuo nome utente Apigee, che in genere corrisponde all'indirizzo email associato all'account Apigee. Devi passare il tuo nome utente o un passcode la prima volta che chiami get_token. Non dovrai passare nuovamente il tuo indirizzo email finché i token di accesso e di aggiornamento non saranno scaduti. Se memorizzi nella cache token per più utenti, devi specificare il tuo nome utente in ogni chiamata.
PASSWORD Facoltativo. È richiesta una combinazione di nome utente e password o un passcode. La password del tuo account Apigee. Se ometti la password, ti verrà chiesto di inserirla la prima volta che utilizzi get_token e in tutte le chiamate successive senza un token di aggiornamento valido. Se non vuoi utilizzare la password direttamente nel comando, puoi utilizzare un passcode monouso anziché la password.
MFACODE Facoltativo Un codice di autenticazione a più fattori (MFA) temporaneo a sei cifre. Questo codice è richiesto se utilizzi -u e hai attivato l'autenticazione MFA. Se non è attiva, ti verrà chiesto di confermare (a meno che non sia in modalità passcode). Se non hai abilitato l'autenticazione MFA o se hai un flusso basato su script, puoi specificare -m "" per evitare le richieste.
PASSCODE Facoltativo. È richiesta una combinazione di nome utente e password o un passcode. Un passcode monouso che puoi utilizzare al posto di una password. È richiesto un passcode per l'autenticazione con un IdP SAML e può essere utilizzato per l'autenticazione con un IdP LDAP.

Ad esempio:

get_token
get_token -u ahamilton@apigee.com:mypassw0rd -m 424242
get_token -p mypass

Una chiamata riuscita stampa un token di accesso valido per stdout e archivia entrambi i token di accesso e di aggiornamento in ~/.sso-cli. Puoi utilizzare questi token fino alla scadenza, come descritto nella sezione Scadenza dei token.

Dopo la prima chiamata a get_token riuscita, non devi includere le tue credenziali fino alla scadenza dei token.

Chiama get_token per la prima volta

Se non specifichi alcuna opzione durante la prima chiamata, get_token ti chiederà quanto segue:

  • Un passcode, se esegui l'autenticazione tramite un provider di identità (IdP) SAML.
  • Il tuo nome utente, la tua password e un codice MFA temporaneo, altrimenti.

L'esempio seguente chiama get_token per la prima volta e utilizza una combinazione nome utente/password con un codice MFA facoltativo per l'autenticazione:

get_token
Enter username:
ahamilton@apigee.com
Enter the password for user 'ahamilton@apigee.com':
[hidden input]
Enter the six-digit code if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:
123456

ey42bGciOiJSUzI1NiJ9.eyJqdGkiOiJhM2YwNjA5ZC1lZTIxLTQ1YjAtOGQyMi04MTQ0MTYxNjNhNTMiLCJzdWIiOiIyZDFl
  <snip>
VlLmNvbSIsInppZCI6InVhYSIsImF1ZCI6WyJlZGdlY2xpIiwic2NpbSIsIm9wZW5pZCIsInBhc3N3b3JkIiwiYXBwcm54242

Aggiungere il token di accesso a una richiesta

Dopo aver chiamato get_token, puoi usare il token di accesso passandolo nell'intestazione Authorization delle tue chiamate all'API Edge in vari modi. Puoi:

  • Copia i contenuti della risposta get_token e inseriscili direttamente nell'intestazione:
    curl https://api.enterprise.apigee.com/v1/organizations/danger4242-eval \
      -H "Authorization: Bearer B42CnTIYPxr...88NI5Q"
  • Combina i comandi per ottenere il token e aggiungerlo all'intestazione:
    token=$(get_token); curl -H "Authorization: Bearer $token" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Tieni presente che get_token utilizza la sintassi di sostituzione dei comandi $(...) per l'esecuzione.

  • Chiama get_token nell'ambito della chiamata curl:
    curl -H "Authorization: Bearer $(get_token)" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Tieni presente che get_token utilizza la sintassi di sostituzione dei comandi $(...) per l'esecuzione.

Queste richieste di esempio ricevono dettagli sull'organizzazione "ahamilton-eval". Per un elenco completo degli endpoint API Edge, consulta il riferimento per le API Apigee Edge.

Utilizzare get_token con SAML e LDAP

L'utilità get_token può essere utilizzata con SAML, LDAP o qualsiasi altro IdP sottostante. get_token supporta l'utilizzo di più URL di accesso SSO e di account multipli. A un singolo utente con più account verrà chiesto di specificare il nome utente per ogni chiamata a get_token.

Svuotare la cache get_token

Puoi utilizzare i seguenti flag facoltativi per svuotare la cache di get_token:

  • --clear-sso-cache

    Cancella la directory della cache per SSO_LOGIN_URL in $HOME/.sso-cli ignorando eventuali token di accesso e aggiornamento memorizzati nella cache per il server.

  • --clear-all-sso-cache

    Cancella tutte le directory in $HOME/.sso-cli eliminando tutti i token memorizzati nella cache.


(1) Copyright 2023 Google LLC
Lo strumento get_token è reso disponibile 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.