Ce plugin permet d'acceder à des ressources via le protocole oauth2. Grâce à l'authentification par le biais d'un fournisseur d'identités Oauth2, un fournisseur de service peut ensuite accéder à des ressources liées à l'utilisateur (et avec son consentement).
Ce plugin propose aux fournisseurs de service une API Java DataClient qui permet de créer des services d'accès aux données. Pour plus d'informations sur l'utilisation de cette API, reportez-vous à la documentation du Wiki.
Ce plugin est également utilisé par le Module MyLutece Oauth2 qui permet de faire une authentification Lutece basée sur le protocole oauth2.
Configurer le fichier de context du plugin (WEB-INF/conf/plugins/oauth2_context.xml).
Il faut notamment paramétrer :
<bean id="oauth2.server" class="fr.paris.lutece.plugins.oauth2.business.AuthServerConf"> <property name="issuer" value=" **** à renseigner **** "/> <property name="authorizationEndpointUri" value=" **** à renseigner **** "/> <property name="tokenEndpointUri" value=" **** à renseigner **** "/> <property name="logoutEndpointUri" value=" **** à renseigner **** "/> <property name="enableJwtParser" value="true" ****True si le serveur utilise JWT **** > </bean> <bean id="oauth2.client" class="fr.paris.lutece.plugins.oauth2.business.AuthClientConf"> <property name="clientId" value=" **** à renseigner **** "/> <property name="clientSecret" value=" **** à renseigner **** "/> <property name="redirectUri" value=" **** à renseigner **** "/> </bean> <bean id="oauth2.callbackHandler" class="fr.paris.lutece.plugins.oauth2.web.CallbackHandler" > ;<property name="authServerConf" ref="oauth2.server"> <property name="authClientConf" ref="oauth2.client"> <property name="jWTParser" ref="oauth2.jWTParser""> </bean> <!-- DataClient UserInfo --> <bean id="oauth2.logUserInfoDataClient" class="fr.paris.lutece.plugins.oauth2.dataclient.LogUserInfoDataClient"> <property name="name" value="logUserInfo" /> <property name="dataServerUri" value="https://fcp.integ01.dev-oauth2.fr/api/v1/userinfo"/> <property name="tokenMethod" value="HEADER"/> <property name="scope"> <set value-type="java.lang.String"> <value>openid </value> <value>profile </value> <value>email </value> <value>address </value> <value>phone </value> </set> </property> <!-- Optional eIDAS management --> <!-- <property name="acrValuesSet"> <set value-type="java.lang.String"> <value>eidas2 </value> </set> </property> --> </bean> <!-- <bean id="oauth2.jwtParser" class="fr.paris.lutece.plugins.oauth2.oidc.jwt.MitreJWTParser" /> --> <bean id="oauth2.jwtParser" class="fr.paris.lutece.plugins.oauth2.jwt.JjwtJWTParser" />
log4j.logger.lutece.oauth2=DEBUG, Console