Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
L'interfaccia a riga di comando (CLI) apigee-remote-service-cli ti aiuta a eseguire il provisioning e la gestione di Apigee Adapter for Envoy.
Comandi di binding
Il binding associa un servizio di cui è stato eseguito il deployment nella mesh Istio a un prodotto API Apigee. L'interfaccia a riga di comando ti consente di elencare e verificare i binding.
Crea un elenco di associazioni
Elenca tutti i prodotti API associati al servizio remoto.
Utilizzo
Per Edge Public Cloud:
apigee-remote-service-cli bindings list -o [organization] -e [environment] -u [username] -p [password]
Per Edge Private Cloud:
apigee-remote-service-cli bindings list -o [organization] -e [environment] -u [username] -p [password] -r [runtime]
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, perché l'interfaccia a riga di comando è in grado di estrarli direttamente dal file di configurazione. Consulta la sezione Utilizzo dell'opzione --config.
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente nella tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni server non sicure quando utilizzi SSL | |
--legacy
|
Imposta questo flag se utilizzi Apigee Edge Cloud. Imposta gli URL di gestione e runtime per Edge Cloud. | |
--mfa
|
Token di autorizzazione multifattoriale Apigee (utilizzato solo con --legacy)
|
|
--opdk
|
Imposta questo flag se utilizzi Apigee Edge for Private Cloud. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-p, --password
|
Stringa | (Obbligatoria solo per l'autenticazione di base) La 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
Utilizzo di .netrc per le credenziali.
|
-r, --runtime
|
Stringa | (Solo Private Cloud) Specifica l'URL di runtime per l'istanza Private Cloud. |
-t, --token
|
Stringa | (Obbligatorio solo per l'autenticazione con token OAuth) Un token OAuth o SAML generato dalle informazioni del tuo account Apigee. Per informazioni sulla generazione dei token, vedi Utilizzo di get_token e Accedere all'API Management con SAML. |
-u, --username
|
Stringa | (Obbligatorio solo per l'autenticazione di base) Il tuo nome utente Apigee (in genere un indirizzo email).
Facoltativamente, puoi specificare il nome utente in un file .netrc. In questo caso, non è necessario fornire il nome utente sulla riga di comando. Vedi
anche Utilizzare .netrc per le credenziali.
|
-v, --verbose
|
(Facoltativo) Produce un output dettagliato. |
Esempio
apigee-remote-service-cli bindings list -o myorg -e test -u user@example.com -c config.yaml -p abc123
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 il prodotto API vincolato specificato e le app per sviluppatori associate abbiano anche un prodotto di servizio remoto associato. Se non specifichi un nome di prodotto API, il comando controlla tutti i prodotti associati.
Utilizzo
Per Edge Public Cloud:
apigee-remote-service-cli bindings verify [product_name] -o [organization] -e [environment] -u [username] -p [password] -c [config]
Per Edge Private Cloud:
apigee-remote-service-cli bindings verify [product_name] -o [organization] -e [environment] -u [username] -p [password] -r [runtime] -c [config]
Dove product_name è facoltativo. Se non specifichi un nome di prodotto, vengono controllati tutti i prodotti associati.
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, perché l'interfaccia a riga di comando è in grado di estrarli direttamente dal file di configurazione. Vedi Utilizzo dell'opzione --config.
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente nella tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni server non sicure quando utilizzi SSL | |
--legacy
|
Imposta questo flag se utilizzi Apigee Edge Cloud. Imposta gli URL di gestione e runtime per Edge Cloud. | |
--mfa
|
Token di autorizzazione multifattoriale Apigee (utilizzato solo con --legacy)
|
|
--opdk
|
Imposta questo flag se utilizzi Apigee Edge for Private Cloud. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | (Solo Private Cloud) Specifica l'URL di runtime per l'istanza Private Cloud. |
-t, --token
|
Stringa | (Obbligatorio solo per l'autenticazione con token OAuth) Un token OAuth o SAML generato dalle informazioni del tuo account Apigee. Per informazioni sulla generazione dei token, vedi Utilizzo di get_token e Accedere all'API Management con SAML. |
-v, --verbose
|
(Facoltativo) Produce un output dettagliato. |
Esempio
./apigee-remote-service-cli bindings verify my-product -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx app my-app associated with product my-product is verified
Comando di assistenza
L'aiuto online è disponibile per tutti i comandi apigee-remote-service-cli. Basta digitare:
apigee-remote-service-cli help
Per 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 nella tua organizzazione Apigee Edge, configura un certificato e genera le credenziali necessarie per configurare Apigee Adapter for Envoy.
Utilizzo
Se utilizzi Edge Public Cloud:
apigee-remote-service-cli provision -o $ORG -e $ENV -u $USERNAME -p $PASSWORD
Se utilizzi Edge Private Cloud:
apigee-remote-service-cli provision --opdk -o $ORG -e $ENV -u $USERNAME --management $MGMT_SERVER_URL --runtime $RUNTIME_URL -p $PASSWORD
Parametri
| Parametri | Tipo | Descrizione |
|---|---|---|
--analytics-sa
|
Stringa | Questo flag è disponibile solo per le installazioni di Apigee hybrid e Apigee su Google Cloud.
Utilizza questo flag per specificare il percorso di un file della chiave del service account Google Cloud, dove
il service account ha il ruolo |
-c, --config
|
Stringa | Percorso del file di configurazione del servizio remoto Apigee. Vedi anche
Utilizzare l'opzione --config.
|
-e, --environment
|
Stringa | (Obbligatorio) Un ambiente nella tua organizzazione. |
-f, --force-proxy-install
|
(Facoltativo) Forza la reinstallazione del proxy remote-service se è
già installato 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
|
Imposta questo flag se utilizzi Apigee Edge Cloud. Imposta gli URL di gestione e runtime per Edge Cloud. | |
--mfa
|
Token di autorizzazione multifattoriale Apigee (utilizzato solo con --legacy)
|
|
-m, --management
|
Stringa | (Obbligatorio se utilizzi Apigee Private Cloud) L'URL di base di gestione di Apigee.
Valore predefinito: https://api.enterprise.apigee.com
|
-n, --namespace
|
Stringa | Emetti la configurazione come ConfigMap di Envoy nello spazio dei nomi specificato. Valore predefinito: apigee |
--opdk
|
Stringa | Apigee OPDK. |
-o, --organization
|
Stringa | (Obbligatorio) La tua organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-p, --password
|
Stringa | (Obbligatoria solo per l'autenticazione di base) La 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
Utilizzo di .netrc per le credenziali.
|
--rotate-int
|
int | Se n > 0, genera una nuova chiave privata e conserva n chiavi pubbliche (solo ibrido) |
-r, --runtime
|
Stringa | (Solo Private Cloud) Specifica l'URL di runtime per l'istanza Private Cloud. |
-s, --secret
|
Stringa | Specifica il secret restituito dal comando apigee-remote-service-cli provision.
|
--strength
|
int | (Facoltativo) Specifica la solidità della crittografia per i certificati SSL utilizzati nel provisioning dell'adattatore. Valore predefinito 2048 |
-t, --token
|
Stringa | (Solo ibrido) Token OAuth o SAML di Apigee. |
-u, --username
|
Stringa | (Obbligatorio solo per l'autenticazione di base) 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) Produce un output dettagliato. | |
--virtual-hosts
|
Stringa | Esegue l'override degli host virtuali predefiniti, ovvero default,secure. Utilizza questa opzione se
hai specificato host virtuali per l'ambiente dell'organizzazione Edge diversi da questi valori predefiniti.
Consulta la documentazione di Edge per scoprire di più sugli host virtuali.
|
--years
|
int | (Facoltativo) Il numero di anni prima della scadenza del certificato SSL utilizzato nel provisioning. Valore predefinito: 1 |
Esempio
Assicurati di acquisire l'output del comando provision in un file, che viene utilizzato
come input per altre operazioni di Apigee Adapter for Envoy.
Esempio di Edge Public Cloud:
apigee-remote-service-cli provision --legacy --mfa $MFA --username $USER --password $PASSWORD --organization $ORG --environment $ENV > config.yaml
Comando Samples
Crea file di configurazione di esempio per i deployment nativi di Envoy o Istio.
Utilizzo
apigee-remote-service-cli samples create [flags]
Descrizione
Il comando richiede un file config.yaml valido generato tramite il provisioning.
Per impostazione predefinita, i file di esempio vengono inviati a una directory denominata ./samples. Il comando
crea questa directory per te.
Se utilizzi Envoy nativo, il comando accetta l'host del servizio di destinazione e il nome desiderato per
il relativo cluster. Imposta anche la connessione SSL personalizzata dal proxy Envoy al cluster di servizi remoti
se viene fornita una cartella contenente tls.key e tls.crt tramite --tls.
Se utilizzi Istio, dove il proxy Envoy funge da sidecar, se la destinazione non è specificata,
viene generato l'esempio httpbin. In caso contrario, sei responsabile della preparazione
dei file di configurazione relativi al deployment dei tuoi servizi di destinazione.
Parametri
| Parametri | Tipo | Descrizione |
|---|---|---|
-c, --config
|
Stringa | (Obbligatorio) Percorso al file di configurazione del servizio remoto Apigee. Suggerimento: questo flag ti consente di omettere la maggior parte degli altri parametri del comando, perché l'interfaccia a riga di comando è in grado di estrarli direttamente dal file di configurazione. Vedi Utilizzo dell'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 (il valore predefinito è "httpbin.org") | |
-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 ibrido), 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 TLS key e crt. |
Esempio
apigee-remote-service-cli samples create -c ./config.yaml
Elenco delle opzioni di modello disponibili
Elenca le opzioni disponibili da utilizzare 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 dei token consentono di creare, esaminare e ruotare i token JWT a questo scopo.
Crea un token JWT
Puoi utilizzare un token JWT per effettuare chiamate proxy API autenticate a una destinazione di servizio remota. Vedi anche Utilizzo dell'autenticazione basata su JWT.Utilizzo
Per Edge Public Cloud:apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -o [org] -e [env]
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, perché l'interfaccia a riga di comando è in grado di estrarli direttamente dal file di configurazione. Vedi Utilizzo dell'opzione --config.
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente nella tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni server non sicure quando utilizzi SSL. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | (Solo Private Cloud) Specifica l'URL di runtime per l'istanza Private Cloud. |
-v, --verbose
|
(Facoltativo) Produce un output dettagliato. |
Esempio
apigee-remote-service-cli token create -o myorg -e test -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 -s icTARgaKHqvUH1dq -c config.yaml
Output
In caso di esito positivo, vedrai un output del 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 Ispezionare un token.Utilizzo
Per Edge Public Cloud:apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file]
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 ti consente di omettere la maggior parte degli altri parametri del comando, perché l'interfaccia a riga di comando è in grado di estrarli direttamente dal file di configurazione. Vedi Utilizzo dell'opzione --config.
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente nella tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni server non sicure quando utilizzi SSL. | |
-o, --org
|
Stringa | (Obbligatorio) Un'organizzazione Apigee. Devi essere un amministratore dell'organizzazione. |
-r, --runtime
|
Stringa | (Solo Private Cloud) Specifica l'URL di runtime per l'istanza Private Cloud. |
-v, --verbose
|
(Facoltativo) Produce un output dettagliato. |
Esempio
apigee-remote-service-cli token inspect -c config.yaml <<< $TOKEN
Output
In caso di esito positivo, vedrai 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.
Ruotare un token JWT
Qualche tempo dopo aver generato inizialmente un JWT, potresti dover modificare la coppia di chiavi pubblica/privata memorizzata da Apigee Edge nella relativa mappa chiave-valore (KVM) criptata. Questo processo di generazione di una nuova coppia di chiavi è chiamato rotazione delle chiavi. Quando ruoti le chiavi, viene generata e archiviata una nuova coppia di chiavi privata/pubblica nel KVM "istio" della tua organizzazione/ambiente Apigee Edge. Inoltre, la vecchia chiave pubblica viene conservata insieme al valore ID chiave originale.Utilizzo
Se utilizzi Edge Public Cloud:apigee-remote-service-cli token rotate-cert -c [config_file] -o [organization] -e [environment] -k [provision_key] -s [provision_secret] --kid [new_key_id]
apigee-remote-service-cli token rotate-cert -o [organization] -e [environment] -u [username] -p [password] -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, perché l'interfaccia a riga di comando è in grado di estrarli direttamente dal file di configurazione. Vedi Utilizzo dell'opzione --config.
|
-e, --env
|
Stringa | (Obbligatorio) Un ambiente nella tua organizzazione. |
-h, --help
|
Visualizza la guida per i parametri del comando. | |
--insecure
|
Consenti connessioni 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 | (Solo Private Cloud) Specifica l'URL di runtime per l'istanza Private Cloud. |
-v, --verbose
|
(Facoltativo) Produce un output dettagliato. |
Esempio
apigee-remote-service-cli token rotate-cert -c config.yaml -o myorg -e test -k 2e238ffa15dc5ab6a1e97868e7581f6c60ddb8575478582c256d8b7e5b2677a8 -s 51058077223fa7b683c3bea845c5cca138340d1d5583922b6d465f9f918a4b08
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 necessario) da un file .netrc
nella tua home directory se utilizzi Edge Public Cloud e hai una voce per il
computer api.enterprise.apigee.com. Se utilizzi Apigee Private Cloud,
il valore della macchina è lo stesso dell'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 per la versione
Stampa la versione della CLI.
apigee-remote-service-cli version
Utilizzo dell'opzione del comando --config
L'opzione --config specifica la posizione
del file di configurazione generato dal comando provision. Un vantaggio utile di questa opzione è che
ti consente di ignorare la maggior parte degli altri parametri dei comandi, che la CLI estrae dal file di configurazione.
Queste opzioni includono:
- organizzazione
- produzione
- runtime
- gestione
- non sicuro
- spazio dei nomi
- legacy
- opdk
Ad esempio, puoi eseguire il comando provision nel seguente 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