Dominios de identidad de OCI con Postman

En este tutorial, realiza llamadas de interfaz de programación de aplicaciones (API) REST a un dominio de identidad mediante Postman, un software que se utiliza normalmente para pruebas de API de REST.

Las API de REST de los dominios de identidad proporcionan una forma de integrar los dominios de identidad con clientes REST para gestionar usuarios, grupos, aplicaciones y valores, y realizar la conexión única federada (SSO) y la autorización en la nube. Las API soportan OAuth 2.0, OpenID Connect y System for Cross-Domain Identity Management (SCIM).

En este tutorial:

  • Registro de una aplicación de cliente OAuth
  • Configuración de los parámetros del entorno en Postman
  • Importar los dominios de identidad Colección Postman
  • Solicitar un token de acceso OAuth
  • Crear Usuario
  • Obtener un usuario
  • Suprimir usuario

Este tutorial tarda aproximadamente 20 minutos en realizarse.

Nota

Este tutorial es específico de OCI Identity and Access Management con dominios de identidad.

Antes de empezar

Para realizar este tutorial, debe tener lo siguiente:

1. Registro de una aplicación cliente

Para autenticar una llamada de API de REST en un dominio de identidad, registre una aplicación cliente OAuth en el dominio de identidad.

Esta tarea es necesaria para obtener las credenciales (ID de cliente y secreto de cliente) que se utilizan para la autenticación. Las credenciales son equivalentes a las credenciales de servicio (ID y contraseña) que el cliente utiliza para comunicarse con un dominio de identidad. Esta tarea también le ayuda a determinar qué solicitudes se autorizan mediante la API de REST.

  1. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Dominios.
  2. Seleccione el nombre del dominio de identidad en el que desea trabajar. Puede que necesite cambiar el compartimento para buscar el dominio que desee.
  3. En la página de detalles del dominio, seleccione Aplicaciones integradas.
  4. Seleccione Agregar aplicación.
  5. En el cuadro de diálogo Agregar aplicación, seleccione Aplicación confidencial y, a continuación, seleccione Iniciar flujo de trabajo.
  6. En el paso Agregar detalles de aplicación del flujo de trabajo, introduzca un nombre de aplicación y una descripción y, a continuación, seleccione Siguiente.
  7. En el paso Configurar OAuth, realice las siguientes acciones:
    1. En el cuadro Configuración del cliente, seleccione Configurar esta aplicación como un cliente ahora.

      El cuadro se expande y muestra más opciones.

    2. En Autorización, seleccione solo Credenciales de cliente como tipo de permiso permitido.
    3. Desplácese hacia abajo hasta el final del cuadro. Seleccione Agregar roles de aplicación y, a continuación, Agregar roles.
    4. En el panel Agregar roles de aplicación, seleccione Administrador de dominio de identidad y, a continuación, Agregar.
  8. En el paso Configurar OAuth, seleccione Siguiente y, a continuación, seleccione Terminar.

    Puede omitir el paso de configuración de políticas en este tutorial.

    Cuando se crea la aplicación, su estado inicial es Inactivo.

  9. En la página de detalles de la aplicación, seleccione Activar. A continuación, seleccione Activar aplicación para confirmar la activación de esta aplicación.
  10. En la página de detalles de la aplicación, desplácese a Información general y siga estos pasos para copiar el ID de cliente y los valores secretos de cliente.
    1. Resalte el valor que se muestra junto a ID de cliente y copie el valor en un archivo de texto.
    2. En Secreto de cliente, seleccione Mostrar secreto. En el cuadro de diálogo que aparece, seleccione Copiar y, a continuación, seleccione Cerrar. El valor se copia en el portapapeles. Pegue el valor en un archivo de texto.
    3. Almacene el ID de cliente y los valores secretos de cliente que ha copiado en un lugar seguro.

2. Definición de los Parámetros del Entorno en Postman

Para realizar correctamente este tutorial en Postman, importe los ejemplos de variables REST idcs-rest-clients y defina los parámetros de entorno.

  1. Abre la aplicación de escritorio de Postman e inicia sesión con tu cuenta. Si tiene un espacio de trabajo, seleccione Espacio de Trabajo y seleccione el espacio de trabajo. De lo contrario, puede utilizar el espacio de trabajo por defecto.
  2. En el área de trabajo, seleccione Importar.
  3. En el cuadro de diálogo Importar, pegue la siguiente URL de variables de entorno GitHub en el campo.
    https://github.com/oracle/idm-samples/raw/master/idcs-rest-clients/example_environment.json

    Postman comienza a importar en cuanto pega la URL. Cuando finalice la importación, seleccione Descartar para cerrar el cuadro de mensaje.

  4. En la barra lateral de la izquierda, seleccione Entornos. A continuación, haga clic con el botón derecho en Entorno de ejemplo de Oracle Identity Cloud Service con variables y seleccione Duplicar.
  5. En la lista de entornos, haga clic con el botón derecho en Entorno de ejemplo de Oracle Identity Cloud Service con copia de variables que aparece debajo del entorno original y seleccione Cambiar nombre. En el campo, escriba Environment A for REST API Testing y pulse Intro.
  6. Para actualizar las variables en el entorno con el nombre cambiado, introduzca los siguientes valores en los campos Valor inicial y Valor actual.
    • HOST: URL de dominio que ha obtenido de la página de detalles del dominio de identidad después de conectarse a la consola de Oracle Cloud Infrastructure. Por ejemplo, https://<idcs-letterandnumber123string>.identity.oraclecloud.com. Si necesita ayuda para buscar la URL de dominio, consulte Búsqueda de una URL de dominio de identidad en la documentación.
    • CLIENT_ID y CLIENT_SECRET: el ID de cliente y el secreto de cliente que ha copiado en un archivo de texto de la aplicación de confianza del dominio de identidad, como se describe en la tarea del tutorial Registrar una aplicación cliente.
    • USER_LOGIN y USER_PW: nombre de usuario y contraseña de conexión
      Variables de entorno de Postman modificadas

  7. Seleccione Guardar.
  8. En la lista de entornos, seleccione la marca de control en el nombre Environment A for REST API Testing para convertirlo en el entorno activo.

    El entorno activo se muestra en el selector de entorno en la esquina superior derecha del área de trabajo.

3. Importación de la recopilación de Postman de dominios de identidad

Para realizar correctamente este tutorial en Postman, importe la recopilación REST_API_for_Oracle_Identity_Cloud_Service, que contiene solicitudes de API de ejemplo que se pueden utilizar para realizar llamadas.

  1. En el espacio de trabajo Postman, seleccione Importar.
  2. En el cuadro de diálogo Importar, pegue la siguiente URL en el campo para importar la recopilación Postman de la API de REST de los dominios de identidad.
    https://github.com/oracle/idm-samples/raw/master/idcs-rest-clients/REST_API_for_Oracle_Identity_Cloud_Service.postman_collection.json

    Postman comienza a importar tan pronto como se pega la URL. Una vez finalizada la importación, puede seleccionar Descartar para cerrar el cuadro de mensaje.

  3. En la barra lateral de la izquierda, seleccione Recopilaciones.
  4. Seleccione el nombre REST_API_for_Oracle_Identity_Cloud_Service.

    Las solicitudes de la recopilación se organizan en carpetas.


    La recopilación aparece debajo del separador Recopilaciones.

4. Solicitar un token de acceso

Para realizar llamadas de API a un dominio de identidad, debe autenticar el cliente en el dominio de identidad y, a continuación, obtener un token de acceso OAuth.

El token de acceso proporciona una sesión entre un cliente (en este tutorial, Postman) y el dominio de identidad.

Nota

Por defecto, un token de acceso tiene un intervalo de timeout de 60 minutos. Para realizar llamadas a la API de REST más allá del intervalo, debe solicitar un nuevo token de acceso.
  1. En la barra lateral de la izquierda, seleccione Recopilaciones. Amplíe REST_API_for_Oracle_Identity_Cloud_Service, si no está ampliado.
  2. Amplíe OAuth y, a continuación, amplíe Tokens.
  3. En Tokens, seleccione POST Obtain access_token (credenciales de cliente).

    El separador POST de la API aparece en el Workbench. El panel de solicitud de la API está separado del panel de respuesta por una línea. Puede arrastrar la línea de separación para mostrar más o menos de cada panel.

    En el panel de solicitud, el campo URL muestra: POST {{HOST}}/oauth2/v1/token

    Las variables para {{HOST}}, la conexión y las credenciales de autenticación ya se han definido al finalizar la tarea del tutorial Definición de Parámetros de Entorno en Postman.

  4. Seleccione Enviar.

    En el visor de respuestas, confirme que aparece el estado 200 OK y que el token de acceso se devuelve en el cuerpo de la respuesta. Un token de acceso es una cadena muy larga de letras y números.

  5. Para asignar el valor del token de acceso a una variable de entorno, realice los siguientes pasos.
    1. En la respuesta, resalte el contenido del token de acceso que está entre comillas y haga clic con el botón derecho. En el menú contextual, seleccione Definir: Entorno A para prueba de API de REST y, a continuación, seleccione access_token en el menú secundario para asignar el contenido resaltado como valor de entorno de token de acceso.
      Token de acceso en los menús contextuales y de respuesta

    2. En la parte superior derecha del área de trabajo, seleccione el icono para abrir el panel de variables.

      El valor access_token asignado se muestra en Todas las variables.


      Variable de token de acceso en el panel Variables

  6. Para cerrar el panel de variables, seleccione X en la parte superior derecha del panel o seleccione el icono de variables.

Si envía la siguiente llamada de API de REST al dominio de identidad antes de que caduque el token, la llamada de API contiene el token de acceso y otra información relacionada con la solicitud. La información de REST se envía mediante una solicitud de identificador de recurso universal, una cabecera, parámetros o código JSON, y varía según la llamada y el método de la API de REST que solicite.

5. Creación de un usuario

En esta tarea se asume que ha solicitado un token de acceso en la última hora.

Si es necesario, solicite un nuevo token antes de crear un usuario.

  1. En la barra lateral de la izquierda, seleccione Recopilaciones. Amplíe Usuarios y, a continuación, amplíe Crear.
  2. En Crear, seleccione Crear un usuario.

    El separador POST de la API aparece en el Workbench.

  3. Seleccione el separador Cuerpo.

    El ejemplo utiliza el modo raw y el formato JSON para los datos del cuerpo.


    Separador Cuerpo con código JSON

  4. Seleccione Enviar.
    • En el visor de respuestas, confirme que aparece el estado 201 Created y que el cuerpo de la respuesta contiene detalles sobre el usuario que se ha creado correctamente en el dominio de identidad.

    • Si aparece el estado 401 Unauthorized, con el mensaje de error Proper authorization is required for this area, solicite un nuevo token de acceso e intente crear el usuario de nuevo.

  5. En el cuerpo de respuesta de una creación correcta, desplácese a la línea 40, que tiene el valor de OCID para el usuario que se ha creado.

    Por ejemplo: ocid1.user.oc1..aabaaacaaaq7xxxxxx

  6. Resalte el valor de OCID que está entre comillas dobles. En el menú contextual, seleccione Set: Environment A for REST API Testing (Establecer: Entorno A para prueba de API de REST) y, a continuación, seleccione userid (ID de usuario) en el menú secundario.
  7. En la parte superior derecha del área de trabajo, seleccione el icono para abrir el panel de variables.

    El valor userid asignado se muestra en Todas las variables.

6. Obtener un usuario

Esta tarea recupera los detalles de un usuario específico mediante la variable userid.

En el siguiente procedimiento, se asume que ha completado la tarea anterior Crear un usuario.

  1. En la barra lateral de la izquierda, seleccione Recopilaciones. Expanda Usuarios y, a continuación, Buscar.
  2. En Buscar, seleccione Obtener un usuario específico.

    El separador GET de la API aparece en el Workbench.

  3. Seleccione Enviar.
    • Si se realiza correctamente, confirme que el estado 200 OK aparece en el visor de respuestas. También debe ver detalles sobre ese usuario específico en el separador Cuerpo.

    • Si ve el estado 401 Unauthorized con el mensaje de error Proper authorization is required for this area, solicite un nuevo token de acceso e intente recuperar el usuario específico de nuevo.

7. Suprimir usuario

Esta tarea suprime un usuario especificado por la variable userid.

En el siguiente procedimiento se asume que ha completado las tareas del tutorial Creación de un usuario y Obtención de un usuario.

Si es necesario, solicite un nuevo token de acceso antes de realizar esta tarea.

  1. En la barra lateral de la izquierda, seleccione Recopilaciones. Amplíe Usuarios y, a continuación, amplíe Suprimir.
  2. Seleccione Suprimir usuario.

    El separador DELETE de la API aparece en el Workbench.

  3. En la parte superior derecha del área de trabajo, seleccione el icono para abrir el panel de variables.

    En Todas las variables, confirme que la variable userid sigue mostrando el mismo valor de OCID que se ha utilizado para recuperar los detalles del usuario.

  4. Seleccione Enviar.
    • Si se realiza correctamente, confirme que el estado 204 No content aparece en el visor de respuestas. El separador Cuerpo está en blanco porque no se devuelve ningún cuerpo de respuesta para una operación DELETE.

    • Si ve el estado 401 Unauthorized con el mensaje de error Proper authorization is required for this area, solicite un nuevo token de acceso e intente suprimir el usuario específico de nuevo.

  5. Cuando la supresión se realice correctamente, seleccione el separador GET a specific user (Obtener un usuario específico) en el área de trabajo. A continuación, seleccione Enviar.

    En el visor de respuestas, confirme que aparece el estado 404 Not found, que indica que se ha suprimido el usuario.