Esta página aplica-se ao Apigee e ao Apigee Hybrid.
Veja a documentação do
Apigee Edge.
A apigee-remote-service-cli
interface de linhas de comando (CLI) ajuda a
aprovisionar e gerir o adaptador do Apigee para o Envoy.
Comandos de associação
A associação associa um serviço implementado na malha do Istio a um produto de API do Apigee. A CLI permite-lhe criar, remover e listar associações.
Nota: na IU de criação de produtos, pode especificar um ou mais serviços com um produto. Esta ação é equivalente à criação da associação através da CLI.Adicione uma vinculação
Adiciona uma associação de destino remoto a um produto API.
Utilização
Para o Apigee Hybrid:
apigee-remote-service-cli bindings add [service_name] [product_name] -o [organization] -e [environment] -t [token]
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | (Obrigatório) O caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --env
|
String | (Obrigatório) Um ambiente na sua organização. |
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
--insecure
|
Permitir ligações inseguras ao servidor quando usar SSL | |
--legacy
|
Defina esta flag se estiver a usar o Apigee Cloud. Define os URLs de gestão e de tempo de execução para a nuvem de limite. | |
--opdk
|
Defina esta flag se estiver a usar o Apigee para a nuvem privada. | |
-o, --org
|
String | (Obrigatório) Uma organização do Apigee. Tem de ser um administrador da organização. |
-p, --password
|
String | (Obrigatório apenas para a autenticação básica) A sua palavra-passe do Apigee. Opcionalmente, pode especificar
a palavra-passe num ficheiro .netrc . Se o fizer, não tem de
introduzir a palavra-passe na linha de comandos. Veja também
Usar .netrc para credenciais.
|
-r, --runtime
|
String | URL base do tempo de execução do Apigee (obrigatório para o híbrido ou o OPDK). |
-t, --token
|
String | (Obrigatório apenas para autenticação de tokens OAuth) Um token OAuth ou SAML que gera a partir das informações da sua conta do Apigee. Para obter informações sobre como gerar tokens, consulte os artigos Obter uma chave de acesso de OAuth 2.0 e Vista geral do SAML. |
-u, --username
|
String | (Obrigatório apenas para a autenticação básica) O seu nome de utilizador do Apigee (normalmente, um endereço de email).
Opcionalmente, pode especificar o nome de utilizador num ficheiro .netrc . Se o fizer, não tem de fornecer o seu nome de utilizador na linha de comandos. Consulte também o artigo Usar o .netrc para credenciais.
|
-v, --verbose
|
(Opcional) Produz uma saída detalhada. |
Exemplo
./apigee-remote-service-cli bindings add httpbin.org envoy-test -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx product envoy-test is now bound to: httpbin.org
Listar associações
Indique todos os produtos API associados ao serviço remoto.
Utilização
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | (Obrigatório) O caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --env
|
String | (Obrigatório) Um ambiente na sua organização. |
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
--insecure
|
Permitir ligações inseguras ao servidor quando usar SSL | |
--legacy
|
Defina esta flag se estiver a usar o Apigee Cloud. Define os URLs de gestão e de tempo de execução para a nuvem de limite. | |
--opdk
|
Defina esta flag se estiver a usar o Apigee para a nuvem privada. | |
-o, --org
|
String | (Obrigatório) Uma organização do Apigee. Tem de ser um administrador da organização. |
-p, --password
|
String | (Obrigatório apenas para a autenticação básica) A sua palavra-passe do Apigee. Opcionalmente, pode especificar
a palavra-passe num ficheiro .netrc . Se o fizer, não tem de
introduzir a palavra-passe na linha de comandos. Veja também
Usar .netrc para credenciais.
|
-r, --runtime
|
String | URL base do tempo de execução do Apigee (obrigatório para o híbrido ou o OPDK). |
-t, --token
|
String | (Obrigatório apenas para autenticação de tokens OAuth) Um token OAuth ou SAML que gera a partir das informações da sua conta do Apigee. Para obter informações sobre como gerar tokens, consulte os artigos Obter uma chave de acesso de OAuth 2.0 e Vista geral do SAML. |
-u, --username
|
String | (Obrigatório apenas para a autenticação básica) O seu nome de utilizador do Apigee (normalmente, um endereço de email).
Opcionalmente, pode especificar o nome de utilizador num ficheiro .netrc . Se o fizer, não tem de fornecer o seu nome de utilizador na linha de comandos. Consulte também o artigo Usar o .netrc para credenciais.
|
-v, --verbose
|
(Opcional) Produz uma saída detalhada. |
Exemplo
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:
Remova uma vinculação
Remova a associação do serviço remoto para o Envoy de um produto de API.
Nota: também pode remover um serviço remoto para a associação do Envoy removendo o nome do serviço do produto na IU.Utilização
Para o Apigee Hybrid:
apigee-remote-service-cli bindings remove [service_name] [product_name] -o [organization] -e [environment] -t [token]
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | (Obrigatório) O caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --env
|
String | (Obrigatório) Um ambiente na sua organização. |
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
--insecure
|
Permitir ligações inseguras ao servidor quando usar SSL | |
--legacy
|
Defina esta flag se estiver a usar o Apigee Cloud. Define os URLs de gestão e de tempo de execução para a nuvem de limite. | |
--opdk
|
Defina esta flag se estiver a usar o Apigee para a nuvem privada. | |
-o, --org
|
String | (Obrigatório) Uma organização do Apigee. Tem de ser um administrador da organização. |
-p, --password
|
String | (Obrigatório apenas para a autenticação básica) A sua palavra-passe do Apigee. Opcionalmente, pode especificar
a palavra-passe num ficheiro .netrc . Se o fizer, não tem de
introduzir a palavra-passe na linha de comandos. Veja também
Usar .netrc para credenciais.
|
-r, --runtime
|
String | URL base do tempo de execução do Apigee (obrigatório para o híbrido ou o OPDK). |
-t, --token
|
String | (Obrigatório apenas para autenticação de tokens OAuth) Um token OAuth ou SAML que gera a partir das informações da sua conta do Apigee. Para obter informações sobre como gerar tokens, consulte os artigos Obter uma chave de acesso de OAuth 2.0 e Vista geral do SAML. |
-u, --username
|
String | (Obrigatório apenas para a autenticação básica) O seu nome de utilizador do Apigee (normalmente, um endereço de email).
Opcionalmente, pode especificar o nome de utilizador num ficheiro .netrc . Se o fizer, não tem de fornecer o seu nome de utilizador na linha de comandos. Consulte também o artigo Usar o .netrc para credenciais.
|
-v, --verbose
|
(Opcional) Produz uma saída detalhada. |
Exemplo
./apigee-remote-service-cli bindings remove httpbin.org envoy-test -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx product envoy-test is no longer bound to: httpbin.org
Comando de ajuda
A ajuda online é fornecida para todos os comandos apigee-remote-service-cli
. Basta escrever:
apigee-remote-service-cli help
Para obter ajuda sobre qualquer comando, escreva:
apigee-remote-service-cli [command] help
Por exemplo:
apigee-remote-service-cli provision help
Comando de aprovisionamento
O comando apigee-remote-service-cli provision
instala um proxy na sua organização do Apigee, configura um certificado e gera credenciais que tem de configurar no adaptador do Apigee para o Envoy.
Utilização
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | Caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --environment
|
String | (Obrigatório) Um ambiente na sua organização. |
-f, --force-proxy-install
|
(Opcional) Força a reinstalação do proxy remote-service se já estiver instalado na sua organização.
|
|
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
-k, --key
|
String | Especifica a chave devolvida pelo comando apigee-remote-service-cli provision .
|
--legacy
|
Apigee Edge (define o URL de gestão e de tempo de execução) | |
-m, --management
|
String | (Obrigatório se estiver no Apigee Private Cloud) O URL base de gestão do Apigee.
Predefinição: https://api.enterprise.apigee.com
|
-n, --namespace
|
String | emitir a configuração como um ConfigMap do Envoy no espaço de nomes especificado. |
--opdk
|
String | Apigee OPDK. |
-o, --organization
|
String | (Obrigatório) A sua organização do Apigee. Tem de ser um administrador da organização. |
-p, --password
|
String | (Obrigatório apenas para a autenticação básica) A sua palavra-passe do Apigee. Opcionalmente, pode especificar
a palavra-passe num ficheiro .netrc . Se o fizer, não tem de
introduzir a palavra-passe na linha de comandos. Veja também
Usar .netrc para credenciais.
|
--rotate-int
|
int | Se n > 0, gere uma nova chave privada e mantenha n chaves públicas (apenas híbrido) |
-r, --runtime
|
String | URL base do tempo de execução do Apigee (obrigatório para o híbrido ou o OPDK) |
-s, --secret
|
String | Especifica o segredo devolvido pelo comando apigee-remote-service-cli provision .
|
--strength
|
int | (Opcional) Especifica a intensidade da encriptação para os certificados SSL usados no aprovisionamento do adaptador. Predefinição 2048 |
-t, --token
|
String | (Apenas híbrido) Token OAuth ou SAML do Apigee. |
-u, --username
|
String | (Obrigatório apenas para a autenticação básica) O seu nome de utilizador do Apigee (normalmente, um endereço de email).
Opcionalmente, pode especificar o nome de utilizador num ficheiro .netrc .
Consulte também o artigo Usar o .netrc para credenciais.
|
-v, --verbose
|
(Opcional) Produz uma saída detalhada. | |
--virtual-hosts
|
String | Substitui os anfitriões virtuais predefinidos. |
--years
|
int | (Opcional) O número de anos antes da expiração do certificado SSL usado no aprovisionamento. Predefinição: 1 |
Exemplo
Certifique-se de que captura a saída do comando provision
num ficheiro, que é usado
como entrada para outras operações do Apigee Adapter for Envoy.
Exemplo do Apigee Hybrid:
apigee-remote-service-cli provision --organization $ORG --environment $ENV --runtime $RUNTIME --namespace $NAMESPACE --token $TOKEN > config.yaml
Comandos de token
Pode usar um token JWT para fazer chamadas de proxy de API autenticadas em vez de usar uma chave da API. Os comandos de token permitem-lhe criar, inspecionar e rodar tokens JWT para este fim.
Crie um token JWT
Pode usar um token JWT para fazer chamadas de proxy de API autenticadas para um destino de serviço remoto. Consulte também o artigo Usar a autenticação baseada em JWT.Utilização
Para o Apigee Hybrid:apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | (Obrigatório) O caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --env
|
String | (Obrigatório) Um ambiente na sua organização. |
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
--insecure
|
Permitir ligações inseguras ao servidor quando usar SSL. | |
-o, --org
|
String | (Obrigatório) Uma organização do Apigee. Tem de ser um administrador da organização. |
-r, --runtime
|
String | URL de base do tempo de execução do Apigee (obrigatório apenas para híbrido ou OPDK). |
-v, --verbose
|
(Opcional) Produz uma saída detalhada. |
Exemplo
apigee-remote-service-cli token create -o myorg -e test -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 -s icTARgaKHqvUH1dq -c config.yaml
Resultado
Se for bem-sucedido, verá um resultado do token JST semelhante ao seguinte:eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q
Inspecione um token JWT
Pode inspecionar um token JWT com este comando. Veja também Inspecione um token.Utilização
Para o Apigee Hybrid:apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | (Obrigatório) O caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --env
|
String | (Obrigatório) Um ambiente na sua organização. |
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
--insecure
|
Permitir ligações inseguras ao servidor quando usar SSL. | |
-o, --org
|
String | (Obrigatório) Uma organização do Apigee. Tem de ser um administrador da organização. |
-r, --runtime
|
String | URL de base do tempo de execução do Apigee (obrigatório apenas para híbrido ou OPDK). |
-v, --verbose
|
(Opcional) Produz uma saída detalhada. |
Exemplo
apigee-remote-service-cli token inspect -c config.yaml <<< $TOKEN
Resultado
Se for bem-sucedido, vê um resultado semelhante ao seguinte:{ "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.
Alterne um token JWT
Algum tempo depois de gerar inicialmente um JWT, pode ter de alterar o par de chaves públicas/privadas armazenado pelo Apigee no respetivo mapa de chave-valor (KVM) encriptado. Este processo de geração de um novo par de chaves chama-se rotação de chaves. Quando roda as chaves, é gerado um novo par de chaves públicas/privadas e armazenado no KVM "istio" na sua organização/ambiente do Apigee. Além disso, a chave pública antiga é mantida juntamente com o valor do ID da chave original.Utilização
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
-c, --config
|
String | (Obrigatório) O caminho para o ficheiro de configuração do serviço remoto do Apigee. Dica: quando especifica esta opção, pode omitir a maioria dos outros parâmetros de comando. Consulte
Usar a opção --config .
|
-e, --env
|
String | (Obrigatório) Um ambiente na sua organização. |
-h, --help
|
Apresenta ajuda para os parâmetros do comando. | |
--insecure
|
Permitir ligações inseguras ao servidor quando usar SSL | |
--truncate
|
int | Número de certificados a manter em jwks (predefinição: 2) |
-o, --org
|
String | (Obrigatório) Uma organização do Apigee. Tem de ser um administrador da organização. |
-r, --runtime
|
String | URL base do tempo de execução do Apigee (obrigatório para o híbrido ou o OPDK). |
-v, --verbose
|
(Opcional) Produz uma saída detalhada. |
Exemplo
apigee-remote-service-cli token rotate-cert -c config.yaml -o myorg -e test -k 2e238ffa15dc5ab6a1e97868e7581f6c60ddb8575478582c256d8b7e5b2677a8 -s 51058077223fa7b683c3bea845c5cca138340d1d5583922b6d465f9f918a4b08
Resultado
certificate successfully rotated
Usar o ficheiro .netrc para credenciais
apigee-remote-service-cli
seleciona automaticamente o username
e password
(para autenticação básica, quando necessário) de um ficheiro .netrc
no seu diretório inicial se estiver no Apigee e tiver uma entrada para a máquina api.enterprise.apigee.com
. Se estiver no Apigee Private Cloud, o valor da máquina é igual ao seu URL management
(por exemplo: http://192.162.55.100
).
Comando de versão
Imprima a versão da CLI.
apigee-remote-service-cli version
Usar a opção de comando --config
A opção --config
especifica a localização do ficheiro de configuração gerado pelo comando provision
. Uma vantagem útil desta opção é que
permite ignorar a maioria dos outros parâmetros de comando, que a CLI extrai do ficheiro de configuração.
Estas opções incluem:
- organização
- ambiente
- tempo de execução
- gestão
- inseguro
- espaço de nome
- antigo
- opdk
Por exemplo, pode executar o comando provision
da seguinte forma:
apigee-remote-service-cli provision --config='old-config.yaml' > new-config.yaml
Ficheiro de configuração
Esta secção mostra um ficheiro de configuração de exemplo com todas as opções disponíveis.
global: temp_dir: /tmp/apigee-istio keep_alive_max_connection_age: 10m 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