![[17.0.0.2 and later]](../ng_v17002plus.gif)
Configuration du login social dans Liberty
Vous pouvez configurer un serveur Liberty de manière à ce que les utilisateurs puissent s'authentifier sur les sites Web qui sont hébergés sur le serveur Liberty en se connectant avec leurs comptes de médias sociaux. Sélectionnez une configuration de plateforme de médias sociaux prédéfinie ou définissez votre propre configuration pour une plateforme de médias sociaux basée sur la norme OAuth 2.0 ou OpenID Connect 1.0.
Pourquoi et quand exécuter cette tâche
Le login social est une forme de connexion unique (SSO) qui permet aux utilisateurs de se connecter à un site Web à l'aide d'un compte de média social existant au lieu de créer un compte spécifique pour le site Web. Par exemple, vous pouvez configurer le login social de manière à ce que les utilisateurs puissent se connecter à votre site Web avec leur compte Facebook ou Twitter. Vous pouvez activer le login social pour n'importe quelle plateforme de médias sociaux utilisant la norme OAuth 2.0 ou OpenID Connect 1.0 pour les autorisations.
Procédure
- Configurez le login social pour Facebook.
- Créez une application Facebook. Pour plus d'informations, voir Développement d'une application Facebook.Lorsque vous configurez votre application, enregistrez votre serveur Liberty dans l'application en fournissant une URL de réacheminement dans le format suivant :
https://liberty_host:SSL_port/ibm/api/social-login/redirect/facebookLogin
Après avoir créé l'application, notez l'ID d'application et le secret d'application que vous ajouterez à votre configuration Liberty.
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es
fonctions socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément facebookLogin et configurez-le avec l'ID d'application et le secret d'application.
<facebookLogin clientId="facebook_app_id" clientSecret="facebook_app_secret" />
L'élément facebookLogin spécifie certaines valeurs par défaut pour la connexion à Facebook. Vous pouvez redéfinir les valeurs par défaut et spécifier d'autres paramètres en configurant des attributs supplémentaires, comme décrits sous Facebook Login.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat depuis le noeud final Facebook vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat dans le magasin de clés de confiance Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément facebookLogin et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certains cas, il est possible que vous ayez à importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log.
- Créez une application Facebook. Pour plus d'informations, voir Développement d'une application Facebook.
- Configurez le login social pour GitHub.
- Créez une application OAuth GitHub. Pour plus d'informations, voir les informations concernant les applications Web sous GitHub:
OAuth API.Lorsque vous configurez votre application, enregistrez votre serveur Liberty dans l'application en fournissant une URL de réacheminement dans le format suivant :
https://liberty_host:SSL_port/ibm/api/social-login/redirect/githubLogin
Après avoir créé l'application, notez l'ID client et le secret client que vous ajouterez à votre configuration Liberty.
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es fonctions
socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément githubLogin et configurez-le avec l'ID client et le secret client.
<githubLogin clientId="github_client_id" clientSecret="github_client_secret" />
L'élément githubLogin spécifie certaines valeurs par défaut pour la connexion à GitHub. Vous pouvez redéfinir les valeurs par défaut et spécifier d'autres paramètres en configurant des attributs complémentaires, comme décrits sous GitHub Login.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat du noeud final GitHub vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat vers le magasin de clés de confiance Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément githubLogin et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certains cas, il est possible que vous ayez à importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log.
- Créez une application OAuth GitHub. Pour plus d'informations, voir les informations concernant les applications Web sous GitHub:
OAuth API.
- Configurez le login social pour Google.
- Créez un ID client OAuth dans un projet Google API Console. Pour plus d'informations, voir Creating a Google API Console project and client ID.Lorsque vous configurez votre application, enregistrez votre serveur Liberty dans l'application en fournissant une URL de réacheminement dans le format suivant :
https://liberty_host:SSL_port/ibm/api/social-login/redirect/googleLogin
Après avoir créé l'ID client, notez l'ID client et le secret client que vous ajouterez à votre configuration Liberty.
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es fonctions
socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément googleLogin et configurez-le avec l'ID client et le secret client.
<googleLogin clientId="google_client_id" clientSecret="google_client_secret" />
L'élément googleLogin spécifie certaines valeurs par défaut pour la connexion à Google. Vous pouvez redéfinir les valeurs par défaut et spécifier d'autres paramètres en configurant des attributs supplémentaires, comme décrits sous Google Login.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat du noeud final Google vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat vers le magasin de clés de confiance Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément googleLogin et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certains cas, il est possible que vous ayez à importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log.
- Créez un ID client OAuth dans un projet Google API Console. Pour plus d'informations, voir Creating a Google API Console project and client ID.
- Configurez le login social pour LinkedIn.
- Créez une application LinkedIn. Pour plus d'informations, voir LinkedIn: Authenticating with OAuth 2.0.Lorsque vous configurez votre application, enregistrez votre serveur Liberty dans l'application en fournissant une URL de réacheminement dans le format suivant :
https://liberty_host:SSL_port/ibm/api/social-login/redirect/linkedinLogin
Après avoir créé l'application, notez l'ID client et le secret client que vous ajouterez à votre configuration Liberty.
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es fonctions
socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément linkedinLogin et configurez-le avec l'ID client et le secret client.
<linkedinLogin clientId="linkedin_client_id" clientSecret="linkedin_client_secret" />
L'élément linkedinLogin spécifie certaines valeurs par défaut pour la connexion à LinkedIn. Vous pouvez redéfinir les valeurs par défaut et spécifier d'autres paramètres en configurant des attributs supplémentaires, comme décrits sous LinkedIn Login.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat du noeud final LinkedIn vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat vers le magasin de clés de confiance Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément linkedinLogin et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certains cas, il est possible que vous ayez à importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log.
- Créez une application LinkedIn. Pour plus d'informations, voir LinkedIn: Authenticating with OAuth 2.0.
- Configurez le login social pour Twitter.
- Créez une application Twitter. Pour plus d'informations, voir Twitter Apps.
Après avoir créé l'application, activez l'autorisation Request email addresses from users. Assurez-vous de noter la clé de consommateur et la valeur confidentielle du consommateur que vous ajouterez à votre configuration Liberty.
Vous pouvez également activer le blocage de rappel pour vous assurer que les applications ne peuvent pas redéfinir l'URL de rappel. Sous Settings, entrez l'URL de rappel dans le format suivant et vérifiez le paramètre Enable Callback Locking.https://liberty_host:SSL_port/ibm/api/social-login/redirect/twitterLogin
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es fonctions
socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément twitterLogin et configurez-le avec l'ID client et le secret client.
<twitterLogin consumerKey="twitter_consumer_key" consumerSecret="twitter_consumer_secret" />
L'élément twitterLogin spécifie certaines valeurs par défaut pour la connexion à Twitter. Vous pouvez redéfinir les valeurs par défaut et spécifier d'autres paramètres en configurant des attributs supplémentaires, comme décrits sous Twitter Login.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat du noeud final Twitter vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat vers le magasin de clés de confiance Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément twitterLogin et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certains cas, il est possible que vous ayez à importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log.
- Créez une application Twitter. Pour plus d'informations, voir Twitter Apps.
- Configurez le login social pour une plateforme de médias sociaux prenant en charge OAuth 2.0, comme par exemple Instagram ou Pinterest.
- Créez une application pour la plateforme de médias sociaux. Pour plus d'informations, voir la documentation de la plateforme de médias sociaux spécifique.
Après avoir créé l'application, notez l'ID client et le secret client que vous ajouterez à votre configuration Liberty.
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es fonctions
socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément oauth2Login et configurez la connexion à la plateforme de médias sociaux. Pour obtenir des informations sur les attributs configurables, voir OAuth 2.0 Login.Par exemple, la configuration suivante définit le login social pour une application Instagram :
<oauth2Login id="instagramLogin" clientId="client_id" clientSecret="client_secret" 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>
Conseils de configuration :- Le serveur Liberty transmet la valeur de portée OAuth que vous définissez sur l'attribut scope dans la plateforme de médias sociaux. La portée définie doit être prise en charge par la plateforme de médias sociaux et la portée doit offrir un accès suffisant au serveur Liberty pour lire les données d'utilisateur à partir de la plateforme de médias sociaux. De plus, si vous souhaitez que l'application de médias sociaux appelle d'autres API de médias sociaux, comme une API de marketing par exemple, la valeur définie doit inclure la portée requise par ces API.
- Définissez les noeux finaux de la plateforme de médias sociaux sur les attributs authorizationEndpoint et tokenEndpoint. Le serveur Liberty réachemine d'abord l'utilisateur au noeud final d'autorisation pour authentifier l'utilisateur et obtenir le code d'autorisation OAuth. Ensuite, il appelle le noeud final de jeton pour échanger le code d'autorisation OAuth contre un jeton OAuth.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat du noeud final des médias sociaux vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat du magasin de clés de confiance Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément oauth2Login et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certaines plateformes de média sociaux, il peut être nécessaire d'importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log. - Retournez à votre application de médias sociaux et configurez une URL de réacheminement ou de rappel pointant vers l'ID de l'élément oauth2Login que vous avez configuré dans le format suivant.
Par exemple, l'URL de réacheminement de l'exemple de configuration oauth2Login pour Instagram possède le format suivant :https://liberty_host:SSL_port/ibm/api/social-login/redirect/oauth2login_id
https://liberty_host:SSL_port/ibm/api/social-login/redirect/instagramLogin
- Créez une application pour la plateforme de médias sociaux. Pour plus d'informations, voir la documentation de la plateforme de médias sociaux spécifique.
- Configurez le login social pour une plateforme de médias sociaux prenant en charge OpenID Connect 1.0.
- Créez une application pour la plateforme de médias sociaux. Pour plus d'informations, voir la documentation de la plateforme de médias sociaux spécifique.
Après avoir créé l'application, notez l'ID client et le secret client que vous ajouterez à votre configuration Liberty.
- Ouvrez le fichier de configuration server.xml du serveur Liberty et ajoutez le es fonctions
socialLogin-1.0 et appSecurity-2.0.
<featureManager> <feature>socialLogin-1.0</feature> <feature>appSecurity-2.0</feature> ... </featureManager>
- Ajoutez l'élément oidcLogin et configurez la connexion à la plateforme de médias sociaux. Pour obtenir des informations sur les attributs configurables, voir OpenID Connect 1.0 Login.Par exemple, la configuration suivante définit le login social pour une application Google utilisant OpenID Connect :
<oidcLogin id="googleOIDCLogin" clientId="client_id" clientSecret="client_secret" 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>
Conseils de configuration :- Le serveur Liberty transmet la valeur de portée OAuth que vous définissez sur l'attribut scope dans la plateforme de médias sociaux. La portée définie doit être prise en charge par la plateforme de médias sociaux et la portée doit offrir un accès suffisant au serveur Liberty pour lire les données d'utilisateur à partir de la plateforme de médias sociaux. De plus, si vous souhaitez que l'application de médias sociaux appelle d'autres API de médias sociaux, comme une API de marketing par exemple, la valeur définie doit inclure la portée requise par ces API.
- Définissez les noeux finaux de la plateforme de médias sociaux sur les attributs authorizationEndpoint et tokenEndpoint. Le serveur Liberty réachemine d'abord l'utilisateur au noeud final d'autorisation pour authentifier l'utilisateur et obtenir le code d'autorisation OAuth. Ensuite, il appelle le noeud final de jeton pour échanger le code d'autorisation OAuth contre un jeton OAuth.
- Configurez un magasin de clés de confiance sur l'élément keyStore et importez le certificat du noeud final des médias sociaux vers le magasin de clés de confiance.
Par exemple, la configuration suivante point vers le fichier de clés de confiance Liberty par défaut.
Pour importer le certificat vers le magasin de clés Liberty, dans votre navigateur, accédez à l'un des noeuds finaux spécifiés par l'élément oidcLogin et exportez le certificat. Utilisez un outil de gestion des clés comme iKeyman ou l'utilitaire Java keytool pour ajouter le certificat au magasin de clés de confiance Liberty.<keyStore id="defaultKeyStore" password="keyspass" />
Conseil : Dans certaines plateformes de média sociaux, il peut être nécessaire d'importer plusieurs certificats. Pour savoir quels certificats doivent être importés, reportez-vous au fichier messages.log. - Retournez à votre application de médias sociaux et configurez une URL de réacheminement ou de rappel pointant vers l'ID de l'élément oidcLogin que vous avez configuré dans
le format suivant.
Par exemple, l'URL de réacheminement de l'exemple de configuration oidcLogin possède le format suivant :https://liberty_host:SSL_port/ibm/api/social-login/redirect/oidclogin_id
https://liberty_host:SSL_port/ibm/api/social-login/redirect/googleOIDCLogin
- Créez une application pour la plateforme de médias sociaux. Pour plus d'informations, voir la documentation de la plateforme de médias sociaux spécifique.
Sous-rubriques
Formulaire de sélection de chaînes de médias sociaux pour Liberty
Si plusieurs fournisseurs de médias sociaux sont configurés pour protéger une demande, WebSphere Application Server Liberty fournit un formulaire de sélection de médias sociaux par défaut. Le formulaire vous offre la possibilité de choisir entre les différents fournisseurs disponibles qui sont configurés dans le serveur Liberty afin de vous authentifier pour des demandes de ressource protégées.Configuration d'un formulaire de sélection de médias sociaux personnalisé pour Liberty
vous pouvez configurer votre propre sélection de médias sociaux plutôt que de configurer le formulaire de sélection par défaut fourni par Liberty. Vous pouvez choisir cette option si plusieurs fournisseurs de médias sociaux sont configurés pour protéger une demande.

Nom du fichier : twlp_sec_sociallogin.html