Você está lendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. info
O utilitário acurl(1) oferece um wrapper conveniente para um comando curl
padrão. acurl:
- Troca suas credenciais da Apigee por um token de acesso OAuth2.
- Detecta quando um token de acesso expirou e usa o token de atualização para receber um novo token de acesso.
- Transmite esse token no cabeçalho
Authorizationda solicitação de API.
Você usa tokens de acesso para chamar endpoints da API Edge com OAuth2, incluindo fluxos de trabalho LDAP e SAML.
Se você usa o OAuth2 para acessar a API Edge, mas não usa o acurl, é necessário receber um token de acesso e adicioná-lo ao cabeçalho da solicitação de API. Uma maneira de receber um
token de acesso é com o get_token utilitário.
Instalar o acurl
Antes de usar o acurl, é necessário
instalá-lo.
Sintaxe do acurl
O utilitário acurl usa a seguinte sintaxe:
acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]
ou
acurl API_URL -p PASSCODE
Em que:
| Opção | Obrigatório? | Descrição |
|---|---|---|
| API_URL | Obrigatório | O endpoint de API do Apigee Edge. Para uma lista completa de endpoints, consulte a referência da API Apigee Edge. |
| USERNAME | Opcional. É necessário uma combinação de nome de usuário e senha ou uma senha. | Seu nome de usuário da Apigee, que geralmente é o endereço de e-mail associado à sua conta da Apigee.
É necessário transmitir seu nome de usuário ou uma senha na primeira vez que você chamar get_token.
Não será necessário transmitir seu endereço de e-mail
novamente até que os tokens de acesso e de atualização expirem. Se você estiver armazenando tokens
para mais de um usuário, especifique seu nome de usuário em cada chamada. |
| PASSWORD | Opcional. É necessário uma combinação de nome de usuário e senha ou uma senha. | A senha da sua conta da Apigee. Se você omitir a senha, será solicitado que você a
insira na primeira vez que usar o acurl e em todas as chamadas subsequentes sem um
token de atualização válido. Se você não quiser usar sua senha diretamente no comando, use uma
senha de código único em vez da sua senha. |
| MFACODE | Opcional | Um código de autenticação multifator (MFA) temporário de seis dígitos. Esse código é obrigatório se você usar -u e tiver a MFA ativada.
Ele será solicitado caso omitido (a menos que esteja no modo de senha). Se você não tiver a MFA ativada ou tiver um fluxo com script,
especifique -m "" para evitar solicitações. |
| PASSCODE | Opcional. É necessário uma combinação de nome de usuário e senha ou uma senha. | Uma senha única que pode ser usada no lugar de uma senha. Uma senha é necessária ao autenticar com um IDP SAML e pode ser usada para autenticar com um IDP LDAP. |
Exemplo:
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-evalacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.comacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com -p 424242acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rdacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd -m 123456
Além das opções mostradas acima, acurl aceita todas as curl
opções. Por exemplo, é possível transmitir cabeçalhos, especificar o verbo HTTP, adicionar um corpo e ativar
a verbosidade usando opções curl padrão:
| Opção | acurl meaning |
curl meaning |
|---|---|---|
| -u | username |
username |
| -m | MFA code |
max time (precisa usar o formato longo --max-time) |
| -p | passcode |
proxy tunnel (precisa usar o formato longo --proxytunnel) |
| -v | verbose |
verbose |
| -h | help |
help (precisa usar o formato longo --help) |
acurl -v -X POST -H 'Content-Type: application/json' \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apiproducts/myproduct/attributes/attr \ -u ahamilton@apigee.com -d '{"value":42}'
Uma chamada acurl bem-sucedida retorna resultados com base no endpoint de API Edge que você chamou. Além disso, acurl armazena os tokens de acesso e de atualização
em ~/.sso-cli.
É possível continuar fazendo chamadas sem inserir credenciais (senha e MFA opcional ou senha) até que o token de acesso e o token de atualização expirem, conforme descrito em Expiração do token.
Migrar do curl
Se você estiver usando curl, a migração para o utilitário acurl é simples e
elimina a necessidade de codificar credenciais manualmente. Depois de fazer o download e instalar o utilitário, você pode
substituir:
curl -u usernameacurl -u usernameO utilitário acurl vai codificar suas
credenciais e, ocasionalmente, solicitar as credenciais adicionais necessárias para receber novos pares de tokens.
O utilitário acurl também pode ser usado para substituir o curl para usuários de máquinas. Para mais informações,
consulte OAuth2 para usuários de máquinas e Usuários de máquinas em zonas SAML.
Chamar o acurl pela primeira vez
Na primeira vez que você chamar a API com acurl, forneça suas credenciais da Apigee (o
nome de usuário e a senha da sua conta da Apigee ou uma senha) para que o
acurl possa trocá-las por um token de acesso e um token de atualização.
O exemplo a seguir mostra uma chamada inicial com acurl para receber detalhes sobre uma
organização usando o Get
organization endpoint:
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \ -u ahamilton@apigee.com Enter the password for user 'ahamilton@apigee.com':[hidden input]Enter the six-digit code (no spaces) if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:1a2b3c{ "createdAt" : 1491854501264, "createdBy" : "noreply_iops@apigee.com", "displayName" : "ahamilton", "environments" : [ "prod", "test" ], "lastModifiedAt" : 1491854501264, "lastModifiedBy" : "noreply_iops@apigee.com", "name" : "ahamilton", "properties" : { "property" : [ { "name" : "features.isSmbOrganization", "value" : "false" }, { "name" : "features.isCpsEnabled", "value" : "true" } ] }, "type" : "trial" }
O utilitário acurl recebe um token de acesso e o insere na chamada para o endpoint de API Edge:
curl -H "Authorization: Bearer oauth2_access_token" ...
O token de acesso é armazenado localmente em ~/.sso-cli e usado para
chamadas subsequentes.
Depois que o token de acesso expira, acurl usa automaticamente o token de atualização para receber
um novo token de acesso. Quando o token de atualização expira, acurl solicita suas credenciais da Apigee.
Essa solicitação recebe detalhes sobre a organização "ahamilton-eval". Para uma lista completa de endpoints da API Edge, consulte a referência da API Apigee Edge.
(1) Copyright 2023 Google LLC
A ferramenta acurl é disponibilizada como "Software" no
contrato que rege o uso do Google Cloud Platform, incluindo os Termos
específicos do serviço disponíveis em https://cloud.google.com/terms/service-terms.