Repositorio de Liberty[8.5.5.4 o posterior]

Configuración de un proveedor de OpenID Connect en el perfil Liberty

Puede configurar un servidor de perfiles Liberty para que funcione como un proveedor de OpenID Connect, o un servidor de autorización, para aprovechar el inicio de sesión único web.

Acerca de esta tarea

Puede configurar un servidor de perfiles Liberty para actuar como un proveedor de OpenID Connect habilitando la característica openidConnectServer-1.0 del perfil Liberty, además de otra información de configuración.

Procedimiento

  1. Añada la característica de Liberty openidConnectServer-1.0 y otras características necesarias al archivo server.xml. La característica ssl-1.0 también es necesaria para la característica openidConnectServer-1.0.
    <feature>openidConnectServer-1.0</feature>
    <feature>ssl-1.0</feature>
  2. Defina un proveedor de servicios OAuth. OpenID Connect se compila encima del protocolo OAuth 2.0 y debe configurar un proveedor de servicios OAuth válido. La configuración de un proveedor de servicios OAuth incluye los elementos oauth-roles, oauthProvider y de registro de usuarios adecuados. Cualquier usuario que esté autorizado para utilizar OpenID Connect también debe correlacionarse con authenticated oauth-roles. Consulte Definición de un proveedor de servicios OAuth para obtener más información.

    Los metadatos de OAuth se actualizan para OpenID Connect y las principales adiciones se realizan en los metadatos del cliente. Si utiliza la modalidad databaseStore para el registro de clientes, consulte Configuración de un proveedor de OpenID Connect para que acepte solicitudes de registro de cliente para obtener más información. Se recomienda seguir el documento para gestionar los clientes. Si utiliza la modalidad localStore para el registro de clientes, puede registrar scope, preAuthorizedScope, grantTypes, responseTypes, introspectTokens y functionalUserId, así como otros atributos.

  3. Añada un elemento openidConnectProvider, cuyo atributo oauthProviderRef hace referencia al oauthProvider configurado. Cada oauthProvider sólo puede estar referenciado por un openidConnectProvider, y dos o más elementos openidConnectProvider no pueden hacer referencia al mismo oauthProvider. El atributo name y el atributo secret del elemento del cliente deben coincidir con los atributos client ID y client secret del cliente de OpenID Connect correspondiente. Este ejemplo funciona con el cliente de OpenID Connect del el servidor de perfiles Liberty predeterminado.
    Nota: En este ejemplo, el OP espera que el puerto SSL del cliente se establezca en 443.
    <openidConnectProvider id="OidcConfigSample" oauthProviderRef="OAuthConfigSample" /> 
    
    <oauthProvider id="OAuthConfigSample"> 
    <localStore>
    <client name="client01" secret="{xor}LDo8LTor"
    displayname="client01" 
    scope="openid profile email" 
    redirect="https://server.example.com:443/oidcclient/redirect/client01"/> 
    </localStore>
    </oauthProvider>
    Nota: Un cliente válido debe registrar su nombre, redirección, ámbito y secreto para el tipo de otorgamiento authorization_code.
  4. Configure el almacén de confianza del servidor para que incluya los certificados de firmante de las partes dependientes de OpenID Connect o clientes que están soportados. Para obtener más información sobre los almacenes de claves, consulte Habilitación de la comunicación SSL para el perfil Liberty.
  5. Modifique la configuración SSL del servidor para que utilice el almacén de confianza configurado.
    <sslDefault sslRef="DefaultSSLSettings" /> 	
    <ssl id="DefaultSSLSettings" keyStoreRef="myKeyStore" trustStoreRef="myTrustStore" /> 	
    <keyStore id="myKeyStore" password="{xor}Lz4sLCgwLTs=" type="jks" location="${server.config.dir}/resources/security/BasicKeyStore.jks" /> 
    <keyStore id="myTrustStore" password="{xor}Lz4sLCgwLTs=" type="jks" location="${server.config.dir}/resources/security/BasicTrustStore.jks" />

    OpenID Connect se ha configurado para utilizar la configuración SSL predeterminada especificada por el servidor. Por lo tanto, la configuración SSL predeterminada del servidor debe utilizar el almacén de confianza que se ha configurado para OpenID Connect.

    El formulario de consentimiento del usuario en OpenID Connect es conectable, lo que permite a los proveedores crear y mantener su propio formulario de consentimiento. Como este formulario se recupera a través de SSL, debe configurar el almacén de confianza para que incluya el certificado de firmante del servidor donde se aloja el formulario de consentimiento. Si se utiliza el formulario de consentimiento predeterminado y el almacén de confianza que se utiliza para OpenID Connect se configura para ser distinto del almacén de claves utilizado por el servidor de perfiles Liberty, debe importar el certificado de firmante del servidor de perfiles Liberty al almacén de confianza de OpenID Connect.

    Para ver más opciones de configuración del proveedor de OpenID Connect, consulte Elementos de configuración en el archivo server.xml.

    Nota: Para poder utilizar OpenID Connect, el atributo scope debe incluir openid en la lista de ámbitos.

Resultados

Ahora, ha completado la configuración mínima que se necesita para configurar un servidor de perfiles Liberty como un proveedor de OpenID Connect capaz de comunicarse con otros servidores de perfiles Liberty configurados como clientes de OpenID Connect.

Icono que indica el tipo de tema Tema de tarea

Términos y condiciones para centros de información | Comentarios


Icono de indicación de fecha y hora Última actualización: 15 de junio de 2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_config_oidc_op
Nombre de archivo:twlp_config_oidc_op.html