Questa pagina si applica a Apigee e Apigee ibridi.
Visualizza documentazione di Apigee Edge.
L'interfaccia a riga di comando (CLI) di apigee-remote-service-cli
ti consente
eseguire il provisioning e la gestione di Apigee Adapter per Envoy.
Comandi di associazione
Il binding associa un servizio di cui è stato eseguito il deployment alla rete mesh Istio a un prodotto API Apigee. L'interfaccia a riga di comando consente di creare, rimuovere, elencare e verificare le associazioni.
Crea un elenco di associazioni
Elenca tutti i prodotti API associati al servizio remoto.
Utilizzo
Per Apigee hybrid:
apigee-remote-service-cli bindings list -o [organization] -e [environment] -t [token] -r [runtime]
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Il percorso del file di configurazione del servizio remoto Apigee. Suggerimento: questo flag consente di omettere la maggior parte degli altri parametri del comando, perché l'interfaccia a riga di comando è in grado di eseguirne il pull direttamente dal file di configurazione. Consulta Utilizzare l'opzione --config .
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente della tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni a server non sicure quando viene utilizzato SSL | |
--legacy
|
Imposta questo flag se utilizzi Apigee Cloud. Imposta gli URL di gestione e di runtime per Edge Cloud. | |
--opdk
|
Imposta questo flag se utilizzi Apigee per il cloud privato. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-p, --password
|
Stringa | (Obbligatorio solo per l'autenticazione di base, non disponibile per il modello ibrido) La tua password Apigee. Se vuoi, puoi specificare
la password in un file .netrc . Se lo fai, non è necessario
inserisci la password nella riga di comando. Vedi anche
Utilizzo di .netrc per le credenziali.
|
-r, --runtime
|
Stringa | Un URL che include hostAlias per un host virtuale definito
nella tua configurazione ibrida. L'URL deve iniziare con https:// .
Ad esempio: https://apitest.apigee-hybrid-docs.net
|
-t, --token
|
Stringa | (Obbligatorio) Un token di accesso. |
-u, --username
|
Stringa | (Obbligatorio solo per l'autenticazione di base, non disponibile per il modello ibrido) Il tuo nome utente Apigee (in genere un indirizzo email).
Se vuoi, puoi specificare il nome utente in un file .netrc . Se lo fai,
non è necessario fornire il tuo nome utente nella riga di comando. Consulta:
anche Utilizzare .netrc per le credenziali.
|
-v, --verbose
|
(Facoltativo) Genera un output dettagliato. |
Esempio
apigee-remote-service-cli bindings list -o myorg -e test -c config.yaml \ -r $RUNTIME -t $TOKEN PI Products ============ Bound ----- envoy-test: Quota: 5 requests every 1 minute Target bindings: httpbin.org Paths: httpbin: Quota: 5 requests every 1 minute Target bindings: httpbin.org Paths: /httpbin / Unbound ------- product-1: Quota: 100 requests every 1 hour product-2: Quota: 1000 requests every 1 month product-3: product-4:
Verificare un'associazione
Verifica che anche il prodotto API associato specificato e le relative app sviluppatore associate dispongano di un telecomando prodotto di servizio associato. Se non specifichi un nome di prodotto API, il comando controlla tutti i prodotti associati.
Utilizzo
Per Apigee hybrid:
apigee-remote-service-cli bindings verify [product_name] -o [organization] -e [environment] -r [runtime] -t [token]
dove product_name
è facoltativo. Se non specifichi un nome prodotto, vengono controllati tutti i prodotti associati.
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Il percorso al file di configurazione del servizio Apigee Remote. Suggerimento: questo flag consente di omettere la maggior parte degli altri parametri del comando, perché l'interfaccia a riga di comando è in grado di eseguirne il pull direttamente dal file di configurazione. Vedi Utilizza l'opzione --config .
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente della tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni a server non sicure quando viene utilizzato SSL | |
--legacy
|
Imposta questo flag se utilizzi Apigee Cloud. Imposta gli URL di gestione e di runtime per Edge Cloud. | |
--opdk
|
Imposta questo flag se utilizzi Apigee per il cloud privato. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | Un URL che include hostAlias per un host virtuale definito
nella tua configurazione ibrida. L'URL deve iniziare con https:// .
Ad esempio: https://apitest.apigee-hybrid-docs.net
|
-t, --token
|
Stringa | (Obbligatorio) Un token di accesso. |
-v, --verbose
|
(Facoltativo) Genera un output dettagliato. |
Esempio
/apigee-remote-service-cli bindings verify my_product -o $ORG -e $ENV \ -c config.yaml -r $RUNTIME -t $TOKEN Verifying apps associated with product my-product: app my-app associated with product my-product is verified
Comando della guida
La guida online è disponibile per tutti i comandi apigee-remote-service-cli
. È sufficiente digitare:
apigee-remote-service-cli help
Per ricevere assistenza su qualsiasi comando, digita:
apigee-remote-service-cli [command] help
Ad esempio:
apigee-remote-service-cli provision help
Comando di provisioning
Il comando apigee-remote-service-cli provision
installa un proxy nel tuo
Apigee, configura un certificato e genera le credenziali che dovrai utilizzare
configurare Apigee Adapter per Envoy.
Utilizzo
Per Apigee hybrid:
apigee-remote-service-cli provision -o $ORG -e $ENV -r $RUNTIME -t $TOKEN
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
--analytics-sa
|
Stringa | Utilizza questo flag per specificare il percorso di un file di chiavi dell'account di servizio Google Cloud, dove
l'account di servizio ha il ruolo Apigee Analytics Agent . L'account di servizio è utilizzato
dall'adattatore per caricare direttamente i dati di analisi su Apigee. Se utilizzi Apigee hybrid,
questa opzione consente di installare il runtime ibrido in un cluster e l'adattatore
in un altro cluster. Questo flag è
disponibile per le installazioni di Apigee hybrid e Apigee su Google Cloud.
|
-c, --config
|
Stringa | Percorso al file di configurazione del servizio Apigee Remote. Vedi anche
Utilizza l'opzione --config .
|
-e, --environment
|
Stringa | (Obbligatorio) Un ambiente della tua organizzazione. |
-f, --force-proxy-install
|
(Facoltativo) Forza la reinstallazione del proxy remote-service se è
sono già installati nella tua organizzazione.
|
|
-h, --help
|
Visualizza la guida per i parametri del comando. | |
-k, --key
|
Stringa | Specifica la chiave restituita dal
comando apigee-remote-service-cli provision .
|
--legacy
|
Apigee Edge (imposta la gestione e l'URL del runtime) | |
-m, --management
|
Stringa | (Obbligatorio se utilizzi Apigee Private Cloud) L'URL base di gestione di Apigee.
Valore predefinito: https://api.enterprise.apigee.com
|
-n, --namespace
|
Stringa | Emettere la configurazione come ConfigMap Envoy nello spazio dei nomi specificato. Valore predefinito: apigee |
--opdk
|
Stringa | Imposta questo flag se utilizzi Apigee per il cloud privato. |
-o, --organization
|
Stringa | (Obbligatorio) La tua organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-p, --password
|
Stringa | (Obbligatorio solo per l'autenticazione di base, non disponibile per il modello ibrido) La tua password Apigee. Se vuoi, puoi specificare la password in un file .netrc . In questo caso, non è necessario fornire la password sulla riga di comando. Vedi anche
Utilizzare .netrc per le credenziali.
|
--rotate-int
|
int | Se n > 0, genera una nuova chiave privata e mantieni n chiavi pubbliche (solo ibridi) |
-r, --runtime
|
Stringa | Un URL che include hostAlias per un host virtuale definito
nella tua configurazione ibrida. L'URL deve iniziare con https:// .
Ad esempio: https://apitest.apigee-hybrid-docs.net
|
-s, --secret
|
Stringa | Specifica il segreto restituito dal comando apigee-remote-service-cli provision .
|
--strength
|
int | (Facoltativo) Specifica il livello di crittografia per i certificati SSL utilizzati per il provisioning dei dell'adattatore. Valore predefinito 2048 |
-t, --token
|
Stringa | Token OAuth o SAML di Apigee. |
-u, --username
|
Stringa | (Obbligatorio solo per l'autenticazione di base, non disponibile per l'autenticazione ibrida) Il tuo nome utente Apigee (in genere un indirizzo email).
Facoltativamente, puoi specificare il nome utente in un file .netrc .
Vedi anche Utilizzare .netrc per le credenziali.
|
-v, --verbose
|
(Facoltativo) Genera un output dettagliato. | |
--virtual-hosts
|
Stringa | Sostituisce gli host virtuali predefiniti. |
--years
|
int | (Facoltativo) Il numero di anni prima che il certificato SSL utilizzato nel provisioning scade. Valore predefinito: 1 |
Esempio
Assicurati di acquisire l'output del comando provision
in un file, che viene utilizzato
come input per altre operazioni Apigee Adapter for Envoy.
Esempio di Apigee hybrid:
apigee-remote-service-cli provision --organization $ORG --environment $ENV --runtime $RUNTIME \ --namespace $NAMESPACE --token $TOKEN > config.yaml
Comando Samples
Creare un file di configurazione di esempio
Crea file di configurazione di esempio per i deployment di Envoy o Istio nativi.
Utilizzo
apigee-remote-service-cli samples create [flags]
Descrizione
Il comando richiede un file config.yaml
valido generato mediante il provisioning.
Per impostazione predefinita, i file di esempio vengono generati in una directory denominata ./samples
. Il comando
crea automaticamente questa directory.
Se utilizzi Envoy nativo, il comando prende l'host del servizio di destinazione e il nome
per il proprio cluster. Imposta inoltre una connessione SSL personalizzata dal proxy Envoy al servizio remoto
cluster se una cartella contenente tls.key
e tls.crt
viene fornita tramite --tls
.
Se utilizzi Istio, in cui il proxy Envoy agisce come sidecar, se il target non è specificato, verrà generato l'esempio httpbin
. In caso contrario, spetta a te preparare
di configurazione relativi al deployment dei servizi di destinazione.
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Percorso del file di configurazione del servizio remoto Apigee. Suggerimento: questo flag ti consente di omettere la maggior parte degli altri parametri del comando, poiché l'interfaccia a riga di comando è in grado di recuperarli direttamente dal file di configurazione. Consulta Utilizzare l'opzione --config .
|
-f, --force
|
Forza la sovrascrittura della directory esistente. | |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--host
|
L'host del servizio di destinazione ("httpbin.org" predefinito) | |
-n, --name
|
Il nome del servizio di destinazione (il valore predefinito "httpbin") | |
--out
|
La directory in cui creare i file di configurazione di esempio. Valore predefinito: ./samples
|
|
-t, --template
|
Il nome del modello. Se esegui un deployment di Istio (solo ibrida), seleziona una delle opzioni Istio disponibili. Utilizza l'opzione nativa per i deployment nativi di Envoy. Le opzioni disponibili sono:
|
|
--tls
|
La directory in cui archiviare i file crt e della chiave TLS. |
Esempio
apigee-remote-service-cli samples create -c ./config.yaml
Elenca le opzioni di modello disponibili
Elenca le opzioni disponibili per l'uso con il parametro --templates
.
Utilizzo
apigee-remote-service-cli samples templates
Parametri
Nessuno.
Esempio
apigee-remote-service-cli samples templates
Supported templates (native is deprecated): envoy-1.14 envoy-1.15 envoy-1.16 istio-1.5 istio-1.6 istio-1.7 istio-1.8 native
Comandi token
Puoi utilizzare un token JWT per effettuare chiamate proxy API autenticate anziché utilizzare una chiave API. I comandi token ti consentono di creare, ispezionare e ruotare i token JWT a questo scopo.
Creare un token JWT
Puoi utilizzare un token JWT per effettuare chiamate proxy API autenticate a una destinazione di servizio remoto. Consulta: anche Utilizzare l'autenticazione basata su JWT.Utilizzo
Per Apigee hybrid:apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Il percorso del file di configurazione del servizio remoto Apigee. Suggerimento: questo flag ti consente di omettere la maggior parte degli altri parametri del comando, poiché l'interfaccia a riga di comando è in grado di recuperarli direttamente dal file di configurazione. Consulta Utilizzare l'opzione --config .
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente della tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni a server non sicure quando viene utilizzato SSL. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | Un URL che include hostAlias per un host virtuale definito
nella tua configurazione ibrida. L'URL deve iniziare con https:// .
Ad esempio: https://apitest.apigee-hybrid-docs.net
|
-v, --verbose
|
(Facoltativo) Genera un output dettagliato. |
Esempio
./apigee-remote-service-cli token create -o $ORG -e $ENV -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 \ -s icTARgaKHqvUH1dq -c config.yaml -r $RUNTIME -t $TOKEN
Output
Se l'operazione riesce, verrà visualizzato un output di token JST simile al seguente:eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q
Ispezionare un token JWT
Puoi esaminare un token JWT con questo comando. Vedi anche Esaminare un token.Utilizzo
Per Apigee hybrid:apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Il percorso del file di configurazione del servizio remoto Apigee. Suggerimento: questo flag consente di omettere la maggior parte degli altri parametri del comando, perché l'interfaccia a riga di comando è in grado di eseguirne il pull direttamente dal file di configurazione. Vedi Utilizza l'opzione --config .
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente della tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni a server non sicure quando viene utilizzato SSL. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | Un URL che include hostAlias per un host virtuale definito
nella tua configurazione ibrida. L'URL deve iniziare con https:// .
Ad esempio: https://apitest.apigee-hybrid-docs.net
|
-v, --verbose
|
(Facoltativo) Genera un output dettagliato. |
Esempio
apigee-remote-service-cli token inspect -c config.yaml <<< $TOKEN
Output
In caso di esito positivo, viene visualizzato un output simile al seguente:{ "aud": [ "remote-service-client" ], "exp": 1591741549, "iat": 1591740649, "iss": "https://apigee-docs-test.apigee.net/remote-service/token", "jti": "99325d2e-6440-4278-9f7f-b252a1a79e53", "nbf": 1591740649, "access_token": "VfzpXzBGAQ07po0bPMKY4JgQjus", "api_product_list": [ "httpbin" ], "application_name": "httpbin", "client_id": "GYDGHy5TRpV8AejXCOlreP7dPVepA8H", "developer_email": "user@example.com", "scope": "" } verifying... token ok.
Ruota un token JWT
Dopo aver generato inizialmente un JWT, potrebbe essere necessario modificare la coppia di chiavi pubblica/privata memorizzata da Apigee nella mappa chiave-valore criptata (KVM). Questo processo di generazione una nuova coppia di chiavi è chiamata rotazione della chiave. Quando ruoti le chiavi, viene creata una nuova coppia di chiavi privata/pubblica viene generato e archiviato nel file "istio" KVM nella tua organizzazione o nel tuo ambiente Apigee. Inoltre, la vecchia chiave pubblica viene conservata insieme al relativo valore ID chiave originale.Utilizzo
Per Apigee hybrid
apigee-remote-service-cli token rotate-cert -o [organization] -e [environment] -t [token] -r [runtime] -k [provision_key] -s [provision_secret] --kid [new_key_id]
Parametri
Parametri | Tipo | Descrizione |
---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Il percorso del file di configurazione del servizio remoto Apigee. Suggerimento: questo flag ti consente di omettere la maggior parte degli altri parametri del comando, poiché l'interfaccia a riga di comando è in grado di recuperarli direttamente dal file di configurazione. Consulta Utilizzare l'opzione --config .
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente della tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni al server non sicure quando utilizzi SSL | |
--truncate
|
int | Numero di certificati da conservare in jwks (valore predefinito 2) |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | Un URL che include hostAlias per un host virtuale definito
nella tua configurazione ibrida. L'URL deve iniziare con https:// .
Ad esempio: https://apitest.apigee-hybrid-docs.net
|
-v, --verbose
|
(Facoltativo) Genera un output dettagliato. |
Esempio
./apigee-remote-service-cli token create -o $ORG -e $ENV -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 \ -s icTARgaKHqvUH1dq -c config.yaml -r $RUNTIME -t $TOKEN
Output
certificate successfully rotated
Utilizzo di .netrc per le credenziali
apigee-remote-service-cli
rileva automaticamente username
e
password
(per l'autenticazione di base, se necessaria) da un .netrc
nella home directory se ti trovi in Edge Public Cloud e hai una voce per
macchina api.enterprise.apigee.com
. Se utilizzi Apigee Private Cloud,
il valore della macchina corrisponde all'URL management
(ad esempio:
http://192.162.55.100
).
Ad esempio, su Edge Public Cloud:
machine api.enterprise.apigee.com login jdoe@google.com password abc123
machine http://192.162.55.100 login jdoe@google.com password abc123
Comando della versione
Stampa la versione dell'interfaccia a riga di comando.
apigee-remote-service-cli version
Utilizzo dell'opzione di comando --config
L'opzione --config
specifica la posizione
del file di configurazione generato dal comando provision
. Un importante vantaggio di questa opzione è che
consente di ignorare la maggior parte degli altri parametri dei comandi, che l'interfaccia a riga di comando estrae dal file di configurazione.
Queste opzioni includono:
- organizzazione
- produzione
- runtime
- gestione
- non sicuri
- spazio dei nomi
- legacy
- opdk
Ad esempio, potresti eseguire il comando provision
in questo modo:
apigee-remote-service-cli provision --config='old-config.yaml' > new-config.yaml
File di configurazione
Questa sezione mostra un file di configurazione di esempio con tutte le opzioni disponibili.
global: temp_dir: /tmp/apigee-istio keep_alive_max_connection_age: 1m api_address: :5000 metrics_address: :5001 tls: cert_file: tls.crt key_file: tls.key tenant: internal_api: https://istioservices.apigee.net/edgemicro remote_service_api: https://org-test.apigee.net/remote-service org_name: org env_name: env key: mykey secret: mysecret client_timeout: 30s allow_unverified_ssl_cert: false products: refresh_rate: 2m analytics: legacy_endpoint: false file_limit: 1024 send_channel_size: 10 collection_interval: 10s fluentd_endpoint: apigee-udca-myorg-test.apigee.svc.cluster.local:20001 tls: ca_file: /opt/apigee/tls/ca.crt cert_file: /opt/apigee/tls/tls.crt key_file: /opt/apigee/tls/tls.key allow_unverified_ssl_cert: false auth: api_key_claim: claim api_key_cache_duration: 30m api_key_header: x-api-key api_target_header: :authority reject_unauthorized: true jwks_poll_interval: 0s jwt_provider_key: https://org-test.apigee.net/remote-service/token