Como gerenciar usuários, funções e permissões

Edge para nuvem privada v. 4.17.09

O site de documentação da Apigee tem informações abrangentes sobre o gerenciamento de permissões e papéis do usuário. Os usuários podem ser gerenciados usando a IU do Edge e a API Management. Os papéis e as permissões só podem ser gerenciados com a API Management.

Para informações sobre usuários e como criar usuários, consulte:

Muitas das operações realizadas para gerenciar usuários exigem privilégios de administrador do sistema. Em uma instalação do Edge baseada na nuvem, a Apigee tem o papel de administrador do sistema. Em um Edge para a instalação da nuvem privada, o administrador do sistema precisa executar essas tarefas conforme descrito abaixo.

Adicionar um usuário

É possível criar um usuário usando a API Edge, a IU do Edge ou os comandos do Edge. Nesta seção, descrevemos como usar a API Edge e os comandos do Edge. Para informações sobre como criar usuários na interface do Edge, consulte Como criar usuários globais.

Depois de criar o usuário em uma organização, você precisa atribuir uma função a ele. Os papéis determinam os direitos de acesso do usuário no Edge.

Use o seguinte comando para criar um usuário com a API Edge:

curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<passwd> \
-X POST http://<ms_IP>:8080/v1/users \
-d '<User> \
   <FirstName>New</FirstName> \
   <LastName>User</LastName> \
   <Password>newUserPWord</Password> \
   <EmailId>foo@bar.com</EmailId> \
</User>'

Ou use o seguinte comando Edge para criar um usuário:

> /opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

Em que configFile contém as informações necessárias para criar o usuário:

APIGEE_ADMINPW=sysAdminPW    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="newUserPWord"
ORG_NAME=myorg  

Você pode usar essa chamada para visualizar informações sobre o usuário:

curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com

Atribuir o usuário a um papel em uma organização

Antes que um novo usuário possa fazer qualquer coisa, ele precisa ser atribuído a uma função em uma organização. É possível atribuir o usuário a papéis diferentes, incluindo: orgadmin, businessuser, opsadmin, user ou a um papel personalizado definido na organização.

Ao atribuir um usuário a uma função em uma organização, o usuário será automaticamente adicionado à organização. Atribua um usuário a várias organizações atribuindo um papel em cada uma delas.

Use o seguinte comando para atribuir ao usuário um papel em uma organização:

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" /
http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users?id=foo@bar.com /
-u <sysAdminEmail>:<passwd> 

Essa chamada exibe todas as funções atribuídas ao usuário. Se você quiser adicionar o usuário, mas exibir apenas o novo papel, use a seguinte chamada:

curl -X POST -H "Content-Type: application/xml" /
http://<ms_IP>:8080/v1/o/<org_name>/users/foo@bar.com/userroles /
-d '<Roles><Role name="role"/></Roles>' /
-u <sysAdminEmail>:<passwd>

Para conferir os papéis do usuário, use o seguinte comando:

curl -u <sysAdminEmail>:<passwd> /
http://<ms_IP>:8080/v1/users/foo@bar.com/userroles

Para remover um usuário de uma organização, remova todas as funções dela do usuário. Use o seguinte comando para remover um papel de um usuário:

curl -X DELETE -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users/foo@bar.com

Como adicionar um administrador do sistema

Um administrador do sistema pode:

  • Criar organizações
  • Adicionar roteadores, processadores de mensagens e outros componentes a uma instalação do Edge
  • Configurar TLS/SSL
  • Criar administradores adicionais do sistema
  • Executar todas as tarefas administrativas de borda

Embora apenas um usuário seja o usuário padrão para tarefas administrativas, pode haver mais de um administrador de sistema. Qualquer usuário que seja membro do papel sysadmin tem permissões totais para todos os recursos.

É possível criar o usuário para o administrador do sistema na IU ou na API do Edge. No entanto, é preciso usar a API Edge para atribuir ao usuário o papel de sysadmin. Não é possível atribuir um usuário ao papel sysadmin na IU do Edge.

Para adicionar um administrador do sistema:

  1. Crie um usuário na interface ou na API do Edge.
  2. Adicione o usuário ao papel sysadmin:
    curl -u <sysAdminEmail>:<passwd> \
    -X POST http://<ms_IP>:8080/v1/userroles/sysadmin/users \
    -d 'id=foo@bar.com'
  3. Verifique se o novo usuário está no papel sysadmin:
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/userroles/sysadmin/users

    Retorna o endereço de e-mail do usuário:
    [ " foo@bar.com " ]
  4. Verificar permissões do novo usuário:
    curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com/permissions

    Retorna:
    {
    "resourcePermission" : [ {
    "path" : "/",
    "permissions" : [ "get" ", "
    }]
  5. Depois de adicionar o novo administrador do sistema, você poderá adicionar o usuário a qualquer organização.
    Observação: o novo usuário administrador do sistema só poderá fazer login na interface do Edge depois que você adicionar o usuário a pelo menos uma organização.
  6. Se quiser remover o usuário do papel de administrador do sistema, use a seguinte API:
    curl -X DELETE -u <sysadminEmail:pword>
    http://<ms_IP>:8080/v1/userroles/sysadmin/users/foo@bar.com


    Essa chamada só remove o usuário do papel, não exclui o usuário.

Como alterar o usuário administrador padrão do sistema

Ao instalar o Edge, você especifica o endereço de e-mail do administrador do sistema. O Edge cria um usuário com esse endereço de e-mail e o define como o administrador padrão do sistema. Mais tarde, você poderá adicionar outros administradores de sistema conforme descrito acima.

Nesta seção, descrevemos como alterar o administrador padrão do sistema para outro usuário e como alterar o endereço de e-mail da conta do usuário para o administrador padrão atual do sistema.

Para ver a lista de usuários configurados como administradores do sistema, use a seguinte chamada de API:

curl -u sysAdminEmail:passwd http://<ms_IP>:8080/v1/userroles/sysadmin/users

Para descobrir qual é o administrador padrão do sistema atual, consulte o arquivo /opt/apigee/customer/defaults.sh. O arquivo contém a seguinte linha que mostra o endereço de e-mail do administrador de sistema padrão atual:

ADMIN_EMAIL=foo@bar.com

Para mudar o administrador padrão do sistema, siga estas etapas:

  1. Crie um novo administrador de sistema conforme descrito acima ou verifique se a conta de usuário do novo administrador de sistema já está configurada como um administrador de sistema.
  2. Edite /opt/apigee/customer/defaults.sh para definir ADMIN_EMAIL como o endereço de e-mail do novo administrador do sistema.
  3. Edite o arquivo de configuração silenciosa usado para instalar a interface do Edge para definir as seguintes propriedades:
    ADMIN_EMAIL=emailAddressOfNewSysAdmin
    APIGEE_ADMINPW=pwOfNewSysAdmin

    SMTPHOST=smtp.gmail.com
    SMTPUSER=foo@gmail.com
    As propriedades SMTPUSER=foo@gmail.com
    as propriedades SMTPUSER=foo@gmail.com foram redefinidas para o SMTP

  4. Reconfigure a interface do Edge:
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui start

Se você quiser apenas alterar o endereço de e-mail da conta de usuário para o administrador de sistema padrão atual, primeiro atualize a conta de usuário para definir o novo endereço de e-mail e, em seguida, altere o endereço de e-mail do administrador padrão do sistema:

  1. Atualize a conta de usuário do usuário administrador padrão atual do sistema com um novo endereço de e-mail:
    > curl -H content-type:application/json -X PUT /
    -u currentSysAdminEmail:passwd /
    http://<ms_IP>:8080/v1/users/currentSysAdminEmail /
    -adminId
    "newEmail /
    -admin.
  2. Repita as etapas 2, 3 e 4 do procedimento anterior para atualizar o arquivo /opt/apigee/customer/defaults.sh e a IU do Edge.

Especificar o domínio de e-mail de um administrador do sistema

Para aumentar a segurança, é possível especificar o domínio de e-mail necessário de um administrador de sistema de Edge. Durante a adição de um administrador do sistema, se o endereço de e-mail do usuário não estiver no domínio especificado, não será possível adicionar o usuário ao papel sysadmin.

Por padrão, o domínio obrigatório está vazio, o que significa que é possível adicionar qualquer endereço de e-mail ao papel sysadmin.

Para definir o domínio do e-mail:

  1. Abra em um editor management-server.properties:
    vi /opt/apigee/customer/application/management-server.properties

    Crie o arquivo se ele não existir.
  2. Defina a propriedade conf_security_rbac.global.roles.allowed.domains para a lista separada por vírgulas de domínios permitidos. Por exemplo:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. Salve as mudanças.
  4. Reinicie o Servidor de gerenciamento de borda:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    Se você tentar adicionar um usuário ao papel de administrador do sistema e o endereço de e-mail dele não estiver em um dos domínios especificados, a adição vai falhar.

Como excluir um usuário

É possível criar um usuário usando a API Edge ou a interface do usuário do Edge. No entanto, só é possível excluir um usuário usando a API.

Para ver a lista de usuários atuais, incluindo o endereço de e-mail, use o seguinte comando cURL:

curl -u <sysAdminEmail>:<passwd> http://<ms-IP>:8080/v1/users

Use o seguinte comando cURL para excluir um usuário:

curl -u <sysAdminEmail>:<passwd> -X DELETE http://<ms-IP>:8080/v1/users/<userEmail>