Domínios de Identidades do OCI com Postman
Neste tutorial, você faz chamadas de interface de programação de aplicativo (API) REST para um domínio de identidades usando o Postman, um software que geralmente é usado para testes de API REST.
As APIs REST dos domínios de identidade fornecem uma maneira de integrar domínios de identidade com clientes REST para gerenciar usuários, grupos, aplicativos e definições, além de executar SSO (sign-on único) federado e autorização na nuvem. As APIs suportam OAuth 2.0, OpenID Connect e System for Cross-Domain Identity Management (SCIM).
Neste tutorial, você:
- Registrar um aplicativo cliente OAuth
- Definir os parâmetros do ambiente no Postman
- Importar a coleção Postman dos domínios de identidades
- Solicitar um token de acesso OAuth
- Crie um usuário
- Obter um usuário
- Excluir um usuário
Este tutorial demora aproximadamente 20 minutos para ser concluído.
Este tutorial é específico do OCI Identity and Access Management com domínios de identidades.
Antes de Começar
Para executar este tutorial, você deve ter o seguinte:
- Acesso a um domínio de identidades com a função de administrador de domínio de identidades. Certifique-se de ter os seguintes valores:
- O nome da tenancy, o nome do domínio de identidades e as credenciais (nome de usuário e senha) para acessar uma tenancy na Console do Oracle Cloud Infrastructure com um domínio de identidades.
- O URL do domínio mostrado na página de detalhes do domínio de identidades após o acesso. Por exemplo,
https://<idcs-letterandnumberstring>.identity.oraclecloud.com
. Se precisar de ajuda para localizar o URL do domínio, consulte Localizando um URL de Domínio de Identidades na documentação. O URL do domínio de identidades é usado para construir uma solicitação REST.
- Familiaridade com o estilo de arquitetura REST
- O aplicativo de desktop Postman instalado.
- A familiaridade com o carteiro não é necessária.
- Crie uma conta Postman. É necessária uma conta para usar variáveis de ambiente.
- (Opcional) Crie um espaço de trabalho no Postman.
1. Registrar um Aplicativo Cliente
Para autenticar uma chamada de API REST em um domínio de identidades, registre um aplicativo cliente OAuth no domínio de identidades.
Esta tarefa é necessária para obter as credenciais (ID do cliente e segredo do cliente) usadas para autenticação. As credenciais são equivalentes às credenciais de serviço (ID e senha) que o cliente usa para se comunicar com um domínio de identidades. Essa tarefa também ajuda a determinar quais solicitações são autorizadas por meio da API REST.
- Abra o menu de navegação e selecione Identidade e Segurança. Em Identidade, selecione Domínios.
- Selecione o nome do domínio de identidades no qual você deseja trabalhar. Talvez você precise alterar o compartimento para localizar o domínio desejado.
- Na página de detalhes do domínio, selecione Aplicativos integrados.
- Selecione Adicionar aplicativo.
- Na caixa de diálogo Adicionar aplicativo, selecione Aplicativo Confidencial e, em seguida, selecione Iniciar workflow.
- Na etapa Adicionar detalhes do aplicativo do workflow, digite o nome e a descrição do aplicativo e selecione Próximo.
- Na etapa Configurar OAuth, execute as seguintes ações:
- Na caixa Configuração do cliente, selecione Configurar este aplicativo como cliente agora.
A caixa se expande, mostrando mais opções.
- Em Autorização, selecione apenas Credenciais do Cliente como o tipo de concessão permitido.
- Role para baixo até o final da caixa. Selecione Adicionar atribuições de aplicativo e Adicionar atribuições.
- No painel Adicionar atribuições de aplicativo, selecione Administrador de Domínio de Identidades e Adicionar.
- Na caixa Configuração do cliente, selecione Configurar este aplicativo como cliente agora.
- Na etapa Configurar OAuth, selecione Próximo e, em seguida, Finalizar.
Você pode ignorar a etapa de configuração da política neste tutorial.
Quando o aplicativo é criado, seu estado inicial é Inativo.
- Na página de detalhes do aplicativo, selecione Ativar. Em seguida, selecione Ativar aplicativo para confirmar a ativação desse aplicativo.
- Na página de detalhes do aplicativo, role para baixo até Informações Gerais e siga estas etapas para copiar o ID do cliente e os valores de segredo do cliente.
- Destaque o valor exibido ao lado de ID do Cliente e copie o valor para um arquivo de texto.
- Em Segredo do Cliente, selecione Mostrar segredo. Na caixa de diálogo exibida, selecione Copiar e, em seguida, selecione Fechar. O valor é copiado para a área de transferência. Cole o valor em um arquivo de texto.
- Armazene o ID do cliente e os valores de segredo do cliente que você copiou em um local seguro.
2. Definir os Parâmetros do Ambiente no Postman
Para executar com sucesso este tutorial no Postman, importe as amostras de variáveis REST idcs-rest-clients
e defina os parâmetros do ambiente.
- Abra o aplicativo de desktop Postman e entre usando sua conta. Se você tiver um espaço de trabalho, selecione Espaço de Trabalho e selecione o espaço de trabalho. Caso contrário, você poderá usar o espaço de trabalho padrão.
- No espaço de trabalho, selecione Importar.
- Na caixa de diálogo Importar, cole o URL de variáveis de ambiente GitHub a seguir no campo.
https://github.com/oracle/idm-samples/raw/master/idcs-rest-clients/example_environment.json
Postman começa a importar assim que você cola o URL. Quando a importação estiver concluída, selecione Descartar para fechar a caixa de mensagem.
- Na barra lateral à esquerda, selecione Ambientes. Em seguida, clique com o botão direito do mouse em Ambiente de Exemplo do Oracle Identity Cloud Service com Variáveis e selecione Duplicar.
- Na lista de ambientes, clique com o botão direito do mouse em Ambiente de Exemplo do Oracle Identity Cloud Service com Cópia de Variáveis que aparece abaixo do ambiente original e selecione Renomear. No campo, digite
Environment A for REST API Testing
e pressione Enter. - Para atualizar as variáveis no ambiente renomeado, informe os valores a seguir nos campos Valor Inicial e Valor Atual.
- HOST: O URL do domínio que você obteve na página de detalhes do domínio de identidades após acessar a Console do Oracle Cloud Infrastructure. Por exemplo,
https://<idcs-letterandnumber123string>.identity.oraclecloud.com
. Se precisar de ajuda para localizar o URL do domínio, consulte Localizando um URL de Domínio de Identidades na documentação. - CLIENT_ID e CLIENT_SECRET: O ID do cliente e o segredo do cliente que você copiou em um arquivo de texto do aplicativo confiável do domínio de identidades, conforme descrito na tarefa do tutorial Registrar um Aplicativo Cliente.
- USER_LOGIN e USER_PW: Seu nome de usuário e senha de log-in
- HOST: O URL do domínio que você obteve na página de detalhes do domínio de identidades após acessar a Console do Oracle Cloud Infrastructure. Por exemplo,
- Selecione Salvar.
- Na lista de ambientes, selecione a marca de seleção no nome
Environment A for REST API Testing
para torná-lo o ambiente ativo.O ambiente ativo é mostrado no seletor de ambiente no canto superior direito da bancada.
3. Importar a Coleção Postman de Domínios de Identidades
Para executar com sucesso este tutorial no Postman, importe a coleção REST_API_for_Oracle_Identity_Cloud_Service
, que contém solicitações de API de amostra que podem ser usadas para fazer chamadas.
- No espaço de trabalho Postman, selecione Importar.
- Na caixa de diálogo Importar, cole o URL a seguir no campo para importar a coleção Postman da API REST dos domínios de identidade.
https://github.com/oracle/idm-samples/raw/master/idcs-rest-clients/REST_API_for_Oracle_Identity_Cloud_Service.postman_collection.json
O Postman começa a importar assim que a coleção é colada na URL. Quando a importação estiver concluída, você poderá selecionar Descartar para fechar a caixa de mensagem.
- Na barra lateral à esquerda, selecione Coleções.
- Selecione o nome REST_API_for_Oracle_Identity_Cloud_Service.
As solicitações na coleção são organizadas em pastas.
4. Solicitar um Token de Acesso
Para fazer chamadas de API para um domínio de identidades, autentique o cliente no domínio de identidades e obtenha um token de acesso OAuth.
O token de acesso fornece uma sessão entre um cliente (neste tutorial, Postman) e o domínio de identidades.
Por padrão, um token de acesso tem um intervalo de timeout de 60 minutos. Para executar chamadas de API REST além do intervalo, solicite um novo token de acesso.
- Na barra lateral à esquerda, selecione Coleções. Expanda REST_API_for_Oracle_Identity_Cloud_Service, se não estiver expandido.
- Expanda OAuth e, em seguida, expanda Tokens.
- Em Tokens, selecione POST Obtain access_token (credenciais do cliente).
A guia
POST
da API é exibida no workbench. O painel de solicitação da API é separado do painel de resposta por uma linha. Você pode arrastar a linha separadora para mostrar mais ou menos de cada painel.No painel de solicitações, o campo URL mostra:
POST {{HOST}}/oauth2/v1/token
As variáveis para
{{HOST}}
, acesso e credenciais de autenticação já estão definidas quando você concluiu a tarefa do tutorial Definir os Parâmetros do Ambiente no Postman. - Selecione Enviar.
No visualizador de resposta, confirme se o status
200 OK
é exibido e se o token de acesso é retornado no corpo da resposta. Um token de acesso é uma sequência muito longa de letras e números. - Para designar o valor do token de acesso a uma variável de ambiente, use as etapas a seguir.
- Na resposta, destaque o conteúdo do token de acesso que está entre aspas e clique com o botão direito do mouse. No menu de atalho, selecione Definir: Ambiente A para Teste de API REST e, em seguida, selecione access_token no menu secundário para designar o conteúdo destacado como o valor do ambiente do token de acesso.
- No canto superior direito da bancada, selecione o ícone para abrir o painel de variáveis.
O valor
access_token
designado é mostrado em Todas as variáveis.
- Na resposta, destaque o conteúdo do token de acesso que está entre aspas e clique com o botão direito do mouse. No menu de atalho, selecione Definir: Ambiente A para Teste de API REST e, em seguida, selecione access_token no menu secundário para designar o conteúdo destacado como o valor do ambiente do token de acesso.
- Para fechar o painel de variáveis, selecione X no canto superior direito do painel ou selecione o ícone de variáveis.
Se você enviar a próxima chamada de API REST ao domínio de identidades antes que o token expire, a chamada de API conterá o token de acesso e outras informações relacionadas à solicitação. As informações REST são enviadas por meio de um Universal Resource Identifier de solicitação, um cabeçalho, parâmetros ou código JSON e variam de acordo com a chamada e o método da API REST que você solicita.
5. Criar um Usuário
Essa tarefa pressupõe que você solicitou um token de acesso na última hora.
Se necessário, solicite um novo token antes de criar um usuário.
- Na barra lateral à esquerda, selecione Coleções. Expanda Usuários e, em seguida, expanda Criar.
- Em Criar, selecione Criar um usuário.
A guia
POST
da API é exibida no workbench. - Selecione a guia Corpo.
A amostra usa o modo bruto e o formato JSON para os dados do corpo.
- Selecione Enviar.
-
No visualizador de respostas, confirme se o status
201 Created
aparece e se o corpo da resposta contém detalhes sobre o usuário que foi criado com sucesso no domínio de identidades. -
Se o status
401 Unauthorized
aparecer, com a mensagem de erroProper authorization is required for this area
, solicite um novo token de acesso e tente criar o usuário novamente.
-
- No corpo da resposta de uma criação bem-sucedida, role para baixo até a linha 40, que tem o valor do OCID para o usuário que foi criado.
Por exemplo:
ocid1.user.oc1..aabaaacaaaq7xxxxxx
- Destaque o valor do OCID entre aspas duplas. No menu de atalho, selecione Definir: Ambiente A para Teste de API REST e, em seguida, selecione userid no menu secundário.
- No canto superior direito da bancada, selecione o ícone para abrir o painel de variáveis.
O valor
userid
designado é mostrado em Todas as variáveis.
6. Obter um Usuário
Esta tarefa recupera os detalhes de um usuário específico usando a variável userid
.
O procedimento a seguir pressupõe que você tenha concluído a tarefa anterior Criar um Usuário.
- Na barra lateral à esquerda, selecione Coleções. Expandir Usuários e, em seguida, expandir Pesquisa.
- Em Pesquisar, selecione Obter um usuário específico.
A guia
GET
da API é exibida no workbench. - Selecione Enviar.
-
Se bem-sucedido, confirme se o status
200 OK
aparece no visualizador de resposta. Você também deverá ver detalhes sobre esse usuário específico na guia Corpo. -
Se você vir o status
401 Unauthorized
com a mensagem de erroProper authorization is required for this area
, solicite um novo token de acesso e tente recuperar o usuário específico novamente.
-
7. Excluir um Usuário
Esta tarefa exclui um usuário especificado pela variável userid
.
O procedimento a seguir pressupõe que você tenha concluído as tarefas do tutorial Criar um Usuário e Obter um Usuário.
Se necessário, solicite um novo token de acesso antes de executar esta tarefa.
- Na barra lateral à esquerda, selecione Coleções. Expanda Usuários e, em seguida, expanda Excluir.
- Selecione Excluir usuário.
A guia
DELETE
da API é exibida no workbench. - No canto superior direito da bancada, selecione o ícone para abrir o painel de variáveis.
Em Todas as variáveis, confirme se a variável
userid
ainda mostra o mesmo valor de OCID que foi usado para recuperar os detalhes do usuário. - Selecione Enviar.
-
Se bem-sucedido, confirme se o status
204 No content
aparece no visualizador de resposta. A guia Corpo está em branco porque nenhum corpo de resposta é retornado para uma operaçãoDELETE
. -
Se você vir o status
401 Unauthorized
com a mensagem de erroProper authorization is required for this area
, solicite um novo token de acesso e tente excluir o usuário específico novamente.
-
- Quando a exclusão for bem-sucedida, selecione a guia OBTER um usuário específico na bancada. Em seguida, selecione Enviar.
No visualizador de resposta, confirme se o status
404 Not found
é exibido, o que indica que o usuário foi excluído.
O Que Vem a Seguir
Para explorar diretrizes para criar solicitações e casos de uso típicos usando APIs REST de domínios de identidade do OCI, consulte: