Esta é a documentação do Apigee Edge.
Acesse
Documentação da Apigee X. informações
Ao usar SAML com a API Edge, o processo usado para obter acesso ao OAuth2 e tokens de atualização da declaração SAML é chamado de fluxo de senha. Com a senha fluxo, use um navegador para obter uma senha única, que será usada para obter o OAuth2 tokens.
No entanto, seu ambiente pode ser compatível com a automação para tarefas comuns de desenvolvimento, como automação de testes ou integração e implantação contínuas (CI/CD). Para automatizar essas tarefas quando o SAML estiver ativado, você precisará receber e atualizar os tokens OAuth2 sem ter que copiar/colar uma senha do navegador.
Sobre os usuários de máquina
O Apigee Edge oferece suporte a usuários de máquinas na sua organização com SAML ativada. Os usuários de máquina são usados estritamente para automação e não são acessados diretamente por um ser humano.
Um usuário de máquina pode receber tokens OAuth2 sem precisar especificar uma senha. Isso significa que é possível automatizar completamente o processo de receber e atualizar tokens OAuth2 usando a API Edge.
Etapas para automatizar o processo de geração de tokens
Para automatizar o processo de geração de tokens:
Vídeo:assista a um vídeo curto para saber como automatizar o acesso às APIs da Apigee Edge usando credenciais de usuário da máquina.
Gerenciar usuários de máquina para zonas de identidade SAML
A Apigee fornece a interface de linha de comando (CLI) de gerenciamento de usuários da máquina para criar e gerenciar contas de usuários da máquina. As etapas para usar a CLI de gerenciamento de usuários da máquina são descritas nas seções a seguir.
Usar a CLI
Para usar a CLI de gerenciamento de usuários da máquina, primeiro faça o download e descompacte o seguinte arquivo:
usermgmt.tar.gz
(1)
O formato para chamar a CLI é o seguinte:
usermgmt_platform [command] [flags]
A tabela a seguir resume as plataformas compatíveis e o comando correspondente para chamar a CLI de gerenciamento de usuários da máquina.
Os executáveis estão localizados no diretório usermgmt
.
Plataforma | 32 bits | 64 bits |
---|---|---|
Linux | usermgmt_linux_386 |
usermgmt_linux_amd64 |
Mac | usermgmt_darwin_386 |
usermgmt_darwin_amd64 |
Windows | usermgmt_windows_386 |
usermgmt_windows_amd64 |
A tabela a seguir resume os comandos que podem ser especificados.
Também é possível transmitir uma das seguintes flags para exibir ajuda sobre o comando especificado: -h ou --help
Faça login na CLI
Na primeira vez que você executar a CLI em um período de 24 horas, será necessário inserir as credenciais da conta zoneadmin.
Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skip
A CLI de gerenciamento de usuários da máquina armazena um token de acesso na sua máquina local. Assim, você só precisa fazer login uma vez a cada 24 horas.
Receber ajuda para usar a CLI
Mostre as informações de uso da CLI usando o comando usermgmt_platform help. Consulte Usar a CLI para ver a lista de plataformas compatíveis.
usermgmt_platform help
As seguintes informações de ajuda são exibidas:
A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.
Usage:
usermgmt [flags]
usermgmt [command]
Available Commands:
create Creates a machine users in an identity zone.
delete Deletes a machine users in an identity zone.
help Help about any command
list Lists the machine users in an identity zone.
reset Resets the password for a machine user in an identity zone.
Flags:
-h, --help help for usermgmt
Use "usermgmt [command] --help" for more information about a command.
Mostre a ajuda sobre um comando específico passando o comando e a sinalização -h ou --help na linha de comando.
Por exemplo, para receber ajuda sobre o comando list:
usermgmt_platform list -h
As seguintes informações de ajuda são exibidas:
Lists the machine users in an identity zone.
Usage:
usermgmt list [flags]
Flags:
-h, --help help for list
Criar um usuário de máquina em uma zona de identidade
Crie um usuário de máquina em uma zona de identidade com o comando usermgmt_platform create. Consulte Usar a CLI para ver a lista de plataformas compatíveis.
- Digite este comando:
usermgmt_platform create
A lista de zonas de identidade é exibida:
myzone1 myzone2
- Digite o nome de uma zona no prompt:
Enter a zone name: myzone1
- Digite um nome de usuário para o usuário da máquina:
Create a Machine User Username: machineuser1@mycompany.com
- Digite uma senha para o usuário da máquina. Quando solicitado, insira a senha novamente.
Password: password Re-enter password: password
O usuário é criado.
Created machine user machineuser1@mycompany.com
Listar todos os usuários de máquina em uma zona de identidade
Liste todos os usuários de máquina em uma zona de identidade usando o comando usermgmt_platform list. Consulte Usar a CLI para ver a lista de plataformas compatíveis.
- Digite este comando:
A lista de zonas de identidade é exibida:usermgmt_platform list
myzone1 myzone2
- Digite o nome de uma zona no prompt:
Enter a zone name: myzone1
A lista de usuários de máquina na zona de identidade é exibida:
Machine users in the zone: machineuser1@mycompany.com
Redefinir a senha de um usuário de máquina em uma zona de identidade
Use o comando usermgmt_platform reset para redefinir a senha de um usuário de máquina em uma zona de identidade. Consulte Usar a CLI para ver a lista de plataformas compatíveis.
- Digite este comando:
usermgmt_platform reset
A lista de zonas de identidade é exibida:
myzone1 myzone2
- Digite o nome de uma zona no prompt:
Enter a zone name: myzone1
- Digite o nome do usuário da máquina para quem você quer redefinir a senha:
Reset User Password Enter the username for the machine user Username: machineuser1@mycompany.com
- Digite uma nova senha para o usuário da máquina. Quando solicitado, insira a senha novamente.
Enter the new password: password Re-enter password: password
A senha é redefinida.
Reset password for machine user machineuser1@mycompany.com
Excluir um usuário de máquina em uma zona de identidade
Exclua um usuário de máquina em uma zona de identidade com o comando usermgmt_platform delete. Consulte Usar a CLI para ver a lista de plataformas compatíveis.
- Digite este comando:
A lista de zonas de identidade é exibida:usermgmt_platform delete
myzone1 myzone2
- Digite o nome de uma zona no prompt:
Enter a zone name: myzone1
- Digite o nome do usuário da máquina que você quer excluir:
Delete User Enter the username for the machine user Username: machineuser1@mycompany.com
O usuário da máquina foi excluído.
Deleted user machineuser1@mycompany.com
Atribuir os papéis necessários ao usuário da máquina na sua organização de Edge
Na interface, adicione o usuário da máquina à sua organização do Edge ativada para SAML e atribua a ela os papéis necessários (como administrador da organização). conforme descrito em Adicionar usuários.
Receber os tokens OAuth2 do usuário da máquina
É possível automatizar o processo de geração de tokens e processar o armazenamento em cache de tokens para usuários de máquinas com o
acurl
(1) e get_token
(1), conforme descrito em
OAuth2 para usuários de máquina e usuários de máquina em zonas SAML.
Para receber os tokens OAuth2 do usuário da máquina manualmente com curl
:
- Use a ferramenta de codificação de URL de sua preferência para codificar o nome de usuário e a senha do usuário da máquina.
Aviso:use uma ferramenta de codificação de URL
interna para garantir que para que as credenciais do usuário da máquina não sejam comprometidas. - Gere os tokens de acesso inicial e de atualização chamando o endpoint do token SAML, conforme o exemplo a seguir:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token -s \ -d 'grant_type=password&username=machineusername&password=machineuserpassword'
Para autorização, transmita a credencial reservada do cliente OAuth2,
ZWRnZWNsaTplZGdlY2xpc2VjcmV0
, no CabeçalhoAuthorization
. A chamada imprime os tokens de acesso e de atualização nostdout
: - Transmita o token de acesso para uma chamada da API Edge Management como o cabeçalho do portador:
curl -H "Authorization: Bearer ACCESS_TOKEN" \ https://api.enterprise.apigee.com/v1/organizations/orgName
- Quando o token de acesso expirar, você poderá atualizá-lo enviando o token de atualização para o SAML
endpoint de token, como mostra o exemplo a seguir:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token \ -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'
(1) Copyright 2023 Google LLC
As ferramentas usermgmt
, acurl
e get_token
são disponibilizadas como "Software" na seção
contrato que rege seu uso do Google Cloud Platform, incluindo o Serviço
Termos específicos disponíveis em https://cloud.google.com/terms/service-terms.