Más información sobre el uso de SDK para autenticar aplicaciones

Oracle Identity Cloud Service proporciona gestión de identidad, conexión única (SSO) y gobernanza de identidades para sus aplicaciones. También proporciona la plataforma de seguridad para Oracle Cloud, que le permite acceder, desarrollar y desplegar aplicaciones de forma segura y sencilla.

Oracle Identity Cloud Service puede funcionar como proveedor de identidad, centralizando el mecanismo de autenticación, gestionando todas las responsabilidades de gestión de contraseñas y proporcionando SSO para sus aplicaciones. Además, puede mejorar la seguridad de las aplicaciones mediante la activación de la autenticación multifactor (MFA) y la implantación de políticas que apliquen una acción de solución, como permitir o denegar el acceso de los usuarios a las aplicaciones.

Cuando desee desarrollar aplicaciones que utilicen el mecanismo de autenticación de Oracle Identity Cloud Service, utilice SDK. Los SDK de Oracle Identity Cloud Service se basan en protocolos y capas estándar del sector, como OAuth 2.0 y OpenID Connect 1.0. Los SDK facilitan el trabajo al encapsular todas las llamadas de punto final de la API de REST necesarias para autenticar a los usuarios con Oracle Identity Cloud Service.

Los SDK de Oracle Identity Cloud Service soportan los siguientes flujos para OAuth 2.0 y OpenID Connect 1.0:

  • Flujo de tres partes: los usuarios interactúan directamente con Oracle Identity Cloud Service. Después de que un usuario se conecte, Oracle Identity Cloud Service emite un código de autorización que el SDK intercambia por un token de acceso de usuario. Este token de acceso se utiliza para otorgar al usuario acceso a los recursos protegidos de la aplicación. El flujo de tres partes utiliza el tipo de permiso de código de autorización.

    Oracle recomienda utilizar flujos de tres partes para integrar las aplicaciones web con Oracle Identity Cloud Service para la autenticación. Además, mediante el tipo de permiso de código de autorización, puede acceder a otras aplicaciones protegidas por Oracle Identity Cloud Service sin necesidad de volver a autenticarse.

  • Flujo de dos partes: los usuarios no interactúan directamente con Oracle Identity Cloud Service. En su lugar, toda la comunicación se produce entre las aplicaciones de confianza y Oracle Identity Cloud Service. Estas aplicaciones solicitan y reciben tokens de acceso de usuario de Oracle Identity Cloud Service para otorgar a los usuarios acceso a los recursos protegidos de las aplicaciones. Los flujos de dos partes utilizan las credenciales de cliente o los tipos de permiso de propietario de recurso.

Arquitectura

Los siguientes diagramas de arquitectura ilustran una aplicación web que utiliza la biblioteca SDK para realizar flujos de autenticación de dos y tres partes para OAuth 2.0 y OpenID Connect 1.0. El flujo de tres partes utiliza el tipo de permiso de código de autorización y los flujos de dos partes utilizan las credenciales de cliente y los tipos de permiso de propietario de recurso.

Tipo de concesión de código de autorización

Descripción de authorization-code-grant-type.png a continuación
Descripción de la ilustración authorization-code-grant-type.png

El flujo de datos consta de los siguientes pasos:

  1. El usuario solicita una URL protegida.

  2. Oracle Identity Cloud Service muestra la página Conectar.

  3. El usuario envía sus credenciales de conexión.

  4. Oracle Identity Cloud Service emite un código de autorización para la aplicación web a través del explorador web.

  5. La aplicación web utiliza el SDK para intercambiar el código de autorización por un token de acceso de usuario.

  6. La aplicación web muestra el contenido del usuario.

Tipo de permiso de credenciales de cliente

Descripción de client-credentials-grant-type.png a continuación
Descripción de la ilustración client-credentials-grant-type.png

El flujo de datos consta de los siguientes pasos:

  1. El usuario solicita una URL protegida.

  2. La solicitud se envía a la aplicación web.

  3. La aplicación web utiliza el SDK para enviar el ID de cliente y el secreto a Oracle Identity Cloud Service para su validación.

  4. Oracle Identity Cloud Service emite un token de acceso a la aplicación web.

  5. La aplicación web muestra el contenido del usuario.

También puede utilizar el tipo de permiso de credenciales de cliente si la aplicación web necesita acceder a las API de REST de Oracle Identity Cloud Service. El token de acceso de usuario emitido por Oracle Identity Cloud Service no contiene información de usuario.

Tipo de permiso de propietario de recurso

Descripción de resource-owner-grant-type.png siguiente
Descripción de la ilustración resource-owner-grant-type.png

El flujo de datos consta de los siguientes pasos:

  1. El usuario solicita una URL protegida.

  2. La aplicación muestra la página Conectar.

  3. El usuario envía sus credenciales de conexión.

  4. La aplicación utiliza el SDK para enviar las credenciales del usuario, así como el ID de cliente y el secreto de la aplicación, a Oracle Identity Cloud Service para su validación.

  5. Oracle Identity Cloud Service emite un token de acceso de usuario a la aplicación.

  6. La aplicación muestra el contenido del usuario.

El tipo de permiso de propietario de recurso es similar al tipo de permiso de código de autorización de tres partes, pero la aplicación recopila las credenciales del usuario y las utiliza junto con el ID de cliente y el secreto de cliente de la aplicación para solicitar un token de acceso de usuario de Oracle Identity Cloud Service.

Note:

En el tipo de permiso de propietario de recurso, la aplicación no puede participar en el proceso de SSO proporcionado por Oracle Identity Cloud Service. Si desea que la aplicación utilice el mecanismo de autenticación de Oracle Identity Cloud Service, utilice el tipo de permiso de código de autorización de tres partes.

Acerca de los servicios y los roles necesarios

Esta solución necesita Oracle Identity Cloud Service.

Estos son los roles necesarios.

Función Necesario para...
Security administrator Acceda a la página Descargas de la consola de Oracle Identity Cloud Service. Desde esta página, puede descargar el SDK de Java.
Application administrator Gestionar aplicaciones en Oracle Identity Cloud Service. Esto incluye el registro de la aplicación Java de ejemplo con Oracle Identity Cloud Service.

Consulte Productos, soluciones y servicios de Oracle para obtener lo que necesita.