![[17.0.0.2 and later]](../ng_v17002plus.gif)
Configuración de inicio de sesión de medios sociales en Liberty
Puede configurar el servidor Liberty de forma que los usuarios se pueden autenticar en sitios web que están alojados en el servidor Liberty iniciando sesión con sus cuentas de medios de comunicación sociales. Elija entre las configuraciones de la plataforma de medios de comunicación sociales predefinidas, o defina su propia configuración para cualquier plataforma de medios de comunicación sociales que se base en los estándares OAuth 2.0 u OpenID Connect 1.0.
Acerca de esta tarea
El inicio de sesión de medios de comunicación sociales es una forma de inicio de sesión único (SSO) que permite a los usuarios iniciar sesión en un sitio web utilizando su cuenta de medios de comunicación sociales existente, en lugar de creando una cuenta específicamente para el sitio web. Por ejemplo, puede configurar el inicio de sesión de medios de comunicación socuales para que los usuarios puedan iniciar sesión en el sitio web con sus cuentas de Facebook o Twitter. Puede habilitar el inicio de sesión de medios de comunicación sociales para cualquier plataforma de medios de comunicación sociales que utilice el estándar OAuth 2.0 u OpenID Connect 1.0 para la autorización.
Procedimiento
- Configurar inicio de sesión de medios de comunicación sociales para Facebook.
- Crear una aplicación de Facebook. Si desea más información, consulte Desarrollo de aplicaciones de Facebook.Al configurar la aplicación, registre el servidor Liberty con la aplicación proporcionando un URL de redirección en el formato siguiente:
https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/facebookLogin
Después de crear la aplicación, anote el ID de la aplicación y el secreto de la aplicación, que añadirá a la configuración de Liberty.
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento facebookLogin y configúrelo con el ID de la aplicación y el secreto de la aplicación.
<facebookLogin clientId="id_apl_facebook" clientSecret="secreto_apl_facebook" />
El elemento facebookLogin especifica determinados valores predeterminados para la conexión a Facebook. Puede alterar temporalmente los valores predeterminados y especificar otros valores configurando más atributos como se listan en Inicio de sesión de Facebook.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final de Facebook al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento facebookLogin y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: En algunos casos, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log.
- Crear una aplicación de Facebook. Si desea más información, consulte Desarrollo de aplicaciones de Facebook.
- Configurar inicio de sesión de medios de comunicación sociales para GitHub.
- Crear una aplicación GitHub OAuth. Si desea más información, consulte la información sobre aplicaciones web en GitHub: API OAuth.Al configurar la aplicación, registre el servidor Liberty con la aplicación proporcionando un URL de redirección en el formato siguiente:
https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/githubLogin
Después de crear la aplicación, anote el ID del cliente y el secreto del cliente, que añadirá a la configuración de Liberty.
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento githubLogin y configúrelo con el ID de cliente y el secreto del cliente.
<githubLogin clientId="id_cliente_github" clientSecret="secreto_cliente_github" />
El elemento githubLogin especifica determinados valores predeterminados para la conexión a GitHub. Puede alterar temporalmente los valores predeterminados y esspecificar otros valores configurando más atributos como están listados en Inicio de sesión de GitHub.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final GitHub al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento githubLogin y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: En algunos casos, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log.
- Crear una aplicación GitHub OAuth. Si desea más información, consulte la información sobre aplicaciones web en GitHub: API OAuth.
- Configurar inicio de sesión de medios de comunicación sociales para Google.
- Crear un ID de cliente OAuth en una proyecto de Google API Console. Si desea más información, consulte Creación de un proyecto de Google API Console y un ID de cliente.Al configurar la aplicación, registre el servidor Liberty con la aplicación proporcionando un URL de redirección en el formato siguiente:
https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/googleLogin
Después de crear el ID de cliente, anote el ID de cliente y el secreto de cliente, que añadirá a la configuración de Liberty.
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento googleLogin y configúrelo con el ID de cliente y el secreto de cliente.
<googleLogin clientId="id_cliente_google" clientSecret="secreto_cliente_google" />
El elemento googleLogin especifica determinados valores predeterminados para la conexión a Google. Puede alterar temporalmente los valores predeterminados y especificar otros valores configurando más atributos como se listan en Inicio de sesión de Google.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final Google al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento googleLogin y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: En algunos casos, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log.
- Crear un ID de cliente OAuth en una proyecto de Google API Console. Si desea más información, consulte Creación de un proyecto de Google API Console y un ID de cliente.
- Configurar inicio de sesión de medios de comunicación sociales para LinkedIn.
- Crear una aplicación LinkedIn. Si desea más información, consulte LinkedIn: Autenticación con OAuth 2.0.Al configurar la aplicación, registre el servidor Liberty con la aplicación proporcionando un URL de redirección en el formato siguiente:
https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/linkedinLogin
Después de crear la aplicación, anote el ID del cliente y el secreto del cliente, que añadirá a la configuración de Liberty.
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento linkedinLogin y configírelo con el ID de cliente y el secreto de cliente.
<linkedinLogin clientId="id_cliente_linkedin" clientSecret="secreto_cliente_linkedin" />
El elemento linkedinLogin especifica determinados valores predeterminados para la conexión a LinkedIn. Puede alterar temporalmente los valores predeterminados y especificar otros valores configurando más atributos como se listan en Inicio de sesión de LinkedIn.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final LinkedIn al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento linkedinLogin y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: En algunos casos, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log.
- Crear una aplicación LinkedIn. Si desea más información, consulte LinkedIn: Autenticación con OAuth 2.0.
- Configurar inicio de sesión de medios de comunicación sociales para Twitter.
- Crear una aplicación de Twitter. Si desea más información, consulte Aplicaciones de Twitter.
Tras crear la aplicación, habilite el permiso Solicitar direcciones de correo electrónico de usuarios. Asegúrese de que anota la clave y el secreto del cliente, que añadirá a la configuración de Liberty.
Si lo desea, puede habilitar el bloqueo de devolución de llamada para asegurarse de que las aplicaciones no sobrescriben el URL de devolución de llamada. Bajo Configuración, entre el URL de devolución de llamada en el formato siguiente y marque el valor Habilitar bloqueo de devolución de llamada.https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/twitterLogin
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento twitterLogin y configúrelo con el ID de consumidor y el secreto de consumidor.
<twitterLogin consumerKey="clave_consumidor_twitter" consumerSecret="secreto_consumidor_twitter" />
El elemento twitterLogin especifica determinados valores predeterminados para la conexión a Twitter. Puede alterar temporalmente los valores predeterminados y especificar otros valores configurando más atributos como se listan en Inicio de sesión de Twitter.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final Twitter al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento twitterLogin y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: En algunos casos, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log.
- Crear una aplicación de Twitter. Si desea más información, consulte Aplicaciones de Twitter.
- Configurar inicio de sesión de medios de comunicación sociales para una plataforma de medios de comunicación sociales que soporta OAuth 2.0 como, por ejemplo, Instagram
o Pinterest.
- Crear una aplicación para la plataforma de medios de comunicación sociales. Si desea más información, consulte la documentación para la plataforma de medios de comunicación sociales específica.
Después de crear la aplicación, anote el ID del cliente y el secreto del cliente, que añadirá a la configuración de Liberty.
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento oauth2Login y configure la conexión a la plataforma de medios de comunicación sociales. Si desea más información sobre atributos configurables, consulte Inicio de sesión de OAuth 2,0.Por ejemplo, la configuración siguiente define el inicio de sesión de medios de comunicación sociales para una aplicación de Instagram.
<oauth2Login id="instagramLogin" clientId="id_cliente" clientSecret="secreto_cliente" scope="basic public_content" responseType="code" tokenEndpointAuthMethod="client_secret_post" authorizationEndpoint="https://api.instagram.com/oauth/authorize" tokenEndpoint="https://api.instagram.com/oauth/access_token" userApi="https://api.instagram.com/v1/users/self" userNameAttribute="username" website="https://www.instagram.com/developer/authentication/"> </oauth2Login>
Consejos para la configuración:- El servidor Liberty pasa el valor de ámbito OAuth que se define en el atributo scope a la plataforma de medios de comunicación sociales. El ámbito definido debe estar soportado por la plataforma de medios de comunicación sociales, y el ámbito debe otorgar acceso suficiente para que el servidor Liberty lea los datos de usuario de la plataforma de medios de comunicación sociales. Además, si tiene previsto que la aplicación de medios de comunicación sociales llame a otras API de medios de comunicación sociales, el valor definido debe incluir el ámbito necesario para estas API.
- Defina los puntos finales de la plataforma de medios de comunicación sociales en los atributos authorizationEndpoint y tokenEndpoint En primer lugar, el servidor Liberty redirige el usuario al punto final de autorización para autenticar el usuario y obtener el código de autorización OAuth. A continuación, invoca al punto final de señal para intercambiar el código de autorización OAuth para una señal OAuth.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final de los medios de comunicación sociales al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento oauth2Login y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: Para algunas plataformas de medios de comunicación sociales, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log. - Vuelva a la aplicación de los medios de comunicación sociales y configure un URL de redirección o de devolución de llamada que apunta al ID del elemento oauth2Login configurado en el formato siguiente.
Por ejemplo, el URL de redirección para el ejemplo de configuración oauth2Login para Instagram tiene el formato siguiente:https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/oauth2login_id
https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/instagramLogin
- Crear una aplicación para la plataforma de medios de comunicación sociales. Si desea más información, consulte la documentación para la plataforma de medios de comunicación sociales específica.
- Configurar inicio de sesión de medios de comunicación sociales para una plataforma de medios de comunicación sociales que admite OpenID Connect 1.0.
- Crear una aplicación para la plataforma de medios de comunicación sociales. Si desea más información, consulte la documentación para la plataforma de medios de comunicación sociales específica.
Después de crear la aplicación, anote el ID del cliente y el secreto del cliente, que añadirá a la configuración de Liberty.
- Abra el archivo de configuración server.xml para el servidor Liberty y añada las características socialLogin-1.0 y appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Añada el elemento oidcLogin y configure la conexión a la plataforma de medios de comunicación sociales. Si desea más información sobre atributos configurables, consulte Inicio de sesión de OpenID Connect 1,0.Por ejemplo, la configuración siguiente define el inicio de sesión de medios de comunicación sociales para una aplicación de Google que utiliza OpenID Connect:
<oidcLogin id="googleOIDCLogin" clientId="id_cliente" clientSecret="secreto_cliente" authorizationEndpoint="https://accounts.google.com/o/oauth2/v2/auth" tokenEndpoint="https://www.googleapis.com/oauth2/v4/token" jwksUri="https://www.googleapis.com/oauth2/v3/certs" scope="openid profile email" userNameAttribute="email" isClientSideRedirectSupported="true" issuer="https://accounts.google.com" realmNameAttribute="iss" > </oidcLogin>
Consejos para la configuración:- El servidor Liberty pasa el valor de ámbito OAuth que se define en el atributo scope a la plataforma de medios de comunicación sociales. El ámbito definido debe estar soportado por la plataforma de medios de comunicación sociales, y el ámbito debe otorgar acceso suficiente para que el servidor Liberty lea los datos de usuario de la plataforma de medios de comunicación sociales. Además, si tiene previsto que la aplicación de medios de comunicación sociales llame a otras API de medios de comunicación sociales, el valor definido debe incluir el ámbito necesario para estas API.
- Defina los puntos finales de la plataforma de medios de comunicación sociales en los atributos authorizationEndpoint y tokenEndpoint En primer lugar, el servidor Liberty redirige el usuario al punto final de autorización para autenticar el usuario y obtener el código de autorización OAuth. A continuación, invoca al punto final de señal para intercambiar el código de autorización OAuth para una señal OAuth.
- Configure un almacén de confianza en el elemento keyStore e importe el certificado del punto final de los medios de comunicación sociales al almacén de confianza.
Por ejemplo, la configuración siguiente apunta al archivo de almacén de confianza predeterminado de Liberty.
Para importar el certificado al almacén de confianza de Liberty, en el navegador, vaya a uno de los puntos finales especificados por el elemento oidcLogin y exporte el certificado. Utilice una herramienta de gestión de llaves como iKeyman o el programa de utilidad de Java keytool para añadir el certificado al archivo de almacén de confianza Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Consejo: Para algunas plataformas de medios de comunicación sociales, es posible que tenga que importar más de un certificado. Si desea más detalles sobre qué certificados necesita importar, consulte el archivo messages.log. - Vuelva a la aplicación de medios de comunicación sociales y configure un URL de redirección o de devolución de llamada que apunta al ID del elemento oidcLogin configurado en el formato siguiente.
Por ejemplo, el URL de redirección para el ejemplo de configuración oidcLogin tiene el formato siguiente:https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/oidclogin_id
https://host_liberty:puerto_SSL/ibm/api/social-login/redirect/googleOIDCLogin
- Crear una aplicación para la plataforma de medios de comunicación sociales. Si desea más información, consulte la documentación para la plataforma de medios de comunicación sociales específica.
Subtemas
Formulario de selección de medios de comunicación sociales en Liberty
Si se han configurado varios proveedores de medios de comunicación sociales para proteger una petición, WebSphere Application Server Liberty proporciona un formulario de selección de medios de comunicación sociales predeterminado. El formulario le ofrece la opción de elegir entre los proveedores disponibles configurados en el servidor de Liberty para autenticarse a sí mismo en solicitudes de recursos protegidos.Configuración de un formulario de selección de medios de comunicación sociales personalizado para Liberty
Puede configurar su propio formulario de selección de medios de comunicación sociales en lugar de configurar el formulario de selección de medios de comunicación sociales predeterminado que Liberty proporciona. Puede elegir esta opción si se han configurado varios proveedores de medios de comunicación sociales para proteger una solicitud.

Nombre de archivo: twlp_sec_sociallogin.html