Esta seção descreve como executar comandos e ferramentas de administrador do sistema Edge depois de ativar o SSO da Apigee. Muitas tarefas no Edge exigem credenciais de administração do sistema, como:
- Criação de organizações e ambientes
- Adição e remoção de componentes do Edge
- Execução de comandos
apigee-adminapi.sh
No entanto, depois de ativar o SSO no Edge, você geralmente desativa a autenticação básica para que a única maneira de autenticar seja pelo IDP OIDC/SAML. Portanto, adicione a conta de administrador do sistema ao seu IDP ou crie um usuário de máquina local para automação.
Como chamar APIs de gerenciamento do Edge como o administrador do sistema
Muitas chamadas de API do Edge exigem que você transmita credenciais de administrador do sistema. Usar o SAML com a API de gerenciamento do Edge contém
instruções sobre como receber e atualizar tokens usando o utilitário get_token ao fazer chamadas de API de gerenciamento do Edge.
Como usar o utilitário apigee-adminapi.sh com o SSO da Apigee
Use o utilitário apigee-adminapi.sh para realizar as mesmas tarefas de configuração do Edge
que você realiza fazendo chamadas para a API de gerenciamento do Edge. A vantagem do
apigee-adminapi.sh utilitário é que ele:
- Usa uma interface de linha de comando simples
- Implementa a conclusão de comandos com base em guias
- Fornece informações de ajuda e uso
- Pode mostrar a chamada de API correspondente se você decidir testar a API
Depois de ativar o SSO da Apigee, você tem duas maneiras principais de transmitir credenciais para o utilitário apigee-adminapi.sh, dependendo se você é um administrador humano ou um script automatizado.
Você pode conferir todas as opções de qualquer comando apigee-adminapi.sh, incluindo as
opções para especificar credenciais de SSO, usando a opção -h no comando. Por
exemplo:
apigee-adminapi.sh orgs list -h
Como transmitir um token do portador (para administradores humanos)
Como o SSO da Apigee modernizado não oferece suporte ao fluxo de copiar e colar /passcode legado, os administradores humanos precisam usar o utilitário get_token para concluir o fluxo de código do dispositivo OAuth 2.0 e transmitir o token resultante para o script.
Primeiro, receba um token:
/opt/apigee/apigee-openldap/bin/get_token -u adminEmail
Em seguida, use o token ao chamar o comando:
apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \ --admin adminEmail --oauth-token token_string
Em que:
oauth-flowespecificapasscode(isso sinaliza para o script legado que um token está sendo fornecido).oauth-tokencontém a string JWT bruta recebida deget_token.
Como transmitir uma senha (somente para usuários de máquina)
Se você estiver automatizando implantações de infraestrutura, poderá transmitir credenciais diretamente usando o fluxo password_grant. No entanto, se a federação SAML/OIDC estiver ativada, os usuários sombra humanos serão bloqueados do login por senha para evitar o bypass da MFA. Primeiro, provisione um usuário de máquina explícito no OpenLDAP.
apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \ --admin machineUserEmail --oauth-password machineUserPassword
Em que:
- A opção
sso-urlespecifica o URL do SSO da Apigee. Modifique a porta ou o protocolo se você os tiver alterado de 9099 e HTTP. oauth-flowespecificapassword_grant.- machineUserEmail é o endereço de e-mail do usuário de máquina automatizado.
oauth-passwordespecifica a senha do usuário de máquina.
Como usar utilitários do Edge com o SSO da Apigee
Muitos utilitários do Edge exigem credenciais de administrador do sistema, como:
apigee-provisionusado para criar organizações, ambientes e hosts virtuaissetup.shusado para adicionar nós a um sistema atual- Qualquer outro utilitário em que você precise especificar as credenciais de administrador do sistema em um arquivo de configuração
Esses utilitários recebem como entrada um arquivo de configuração que especifica as credenciais do administrador do sistema. Antes de o SSO ser ativado, isso é feito usando as propriedades:
ADMIN_EMAIL="adminEmail" APIGEE_ADMINPW="adminPWord"
Depois de ativar o SSO da Apigee, você precisa usar propriedades diferentes para especificar as credenciais do administrador do sistema.
Como usar um token do portador (para administradores humanos)
Para implantações interativas por administradores humanos, adquira um token usando o utilitário get_token e forneça-o pela propriedade OAUTH_BEARER_TOKEN:
ADMIN_EMAIL="adminEmail" SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099" OAUTH_FLOW="passcode" OAUTH_BEARER_TOKEN="token_string"
Em que:
OAUTH_FLOWespecificapasscode(sinalizando que um token é fornecido).OAUTH_BEARER_TOKENcontém a string JWT bruta recebida deget_token.
Como usar uma senha (somente para usuários de máquina)
Para implantações totalmente automatizadas, forneça as credenciais de um usuário de máquina provisionado explicitamente usando o fluxo password_grant:
ADMIN_EMAIL="machineUserEmail" SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099" OAUTH_FLOW="password_grant" OAUTH_ADMIN_PASSWORD="machineUserPassword"
Em que:
SSO_LOGIN_URLespecifica o URL do SSO da Apigee.OAUTH_FLOWespecificapassword_grant.OAUTH_ADMIN_PASSWORDespecifica a senha do usuário de máquina.