Gerenciar usuários da máquina com apigee-machineuser.sh

O SSO da Apigee oferece suporte a dois tipos de perfis de autenticação que eram gerenciados pelo script legado apigee-ssoadminapi.sh:

O utilitário apigee-machineuser.sh permite gerenciar contas de usuários de máquinas sem interface diretamente no OpenLDAP.

Sobre clientes OAuth (antigos administradores)

Em versões anteriores do Edge, você usava os admin comandos no utilitário apigee-ssoadminapi.sh para criar clientes OAuth dinamicamente no banco de dados da UAA. Na versão 4.54.00, o SSO da Apigee depende de um modelo de configuração declarativa (GitOps).

Não é mais necessário usar um script da CLI para criar clientes OAuth, porque eles são estáticos agora. A configuração do cliente para a interface do Edge é definida em /opt/silent.conf. Já o cliente usado para usuários de máquinas (edgecli) é configurado implicitamente no SSO da Apigee.

Sobre usuários de máquinas

Um usuário de máquina pode receber tokens OIDC/OAuth2 por uma concessão de senha padrão sem exigir um navegador ou MFA interativa. Isso significa que você pode automatizar completamente o processo de recebimento e atualização de tokens para seus scripts e pipelines de CI/CD.

Quando você cria um usuário de máquina com o utilitário apigee-machineuser.sh, a conta é criada diretamente no diretório OpenLDAP local e é marcada explicitamente com employeeType: machineuser. Essa tag permite que o SSO da Apigee autentique com segurança o usuário da máquina por uma concessão de senha, mesmo quando o SAML/OIDC federado é aplicado estritamente para usuários humanos.

Invocar o utilitário apigee-machineuser.sh

O utilitário apigee-machineuser.sh é instalado automaticamente no nó que hospeda o componente apigee-openldap no seguinte caminho:

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh

Os comandos disponíveis para o utilitário são:

  • add: cria um novo usuário de máquina no OpenLDAP.
  • list: lista todos os usuários de máquinas registrados no OpenLDAP.
  • setpassword: atualiza a senha de um usuário de máquina.
  • delete: remove permanentemente o usuário de máquina do OpenLDAP.

Adicionar um usuário de máquina

Use o comando add com as flags -u e -p para criar um usuário de máquina.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh add -u jenkins-bot@apigee.com -p BotSecret123!

Saída :

Machine user 'jenkins-bot@apigee.com' created successfully in OpenLDAP.

Listar todos os usuários de máquinas

Use o comando list para conferir todos os usuários de máquinas registrados no OpenLDAP. Os usuários humanos são filtrados dessa lista.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh list

Saída :

Listing all machine users in OpenLDAP:
dn: uid=jenkins-bot@apigee.com,ou=users,ou=global,dc=apigee,dc=com
uid: jenkins-bot@apigee.com
mail: jenkins-bot@apigee.com

Redefinir a senha de um usuário de máquina

Use o comando setpassword para atualizar a senha de um usuário de máquina.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh setpassword -u jenkins-bot@apigee.com -p NewSecret456!

Saída :

Password for machine user 'jenkins-bot@apigee.com' updated successfully.

Excluir um usuário de máquina

Use o comando delete para remover permanentemente um usuário de máquina do OpenLDAP.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh delete -u jenkins-bot@apigee.com

Saída :

Machine user 'jenkins-bot@apigee.com' deleted successfully from OpenLDAP.