Authentication, SSO and SSL: Difference between revisions

m
Tag: 2017 source edit
Tag: 2017 source edit
Line 55: Line 55:


=== Connect to dolibarr using Openid and the HTTP Basic of Apache ===
=== Connect to dolibarr using Openid and the HTTP Basic of Apache ===
TODO...
L'idée est d'utiliser deux éléments :
Le plugin auth_openidc pour Apache
L'authentification HTTP Dolibarr.  
La procédure va donc nécessiter d'avoir Dolibarr installé avec Apache et le module apache https://github.com/zmartzone/mod_auth_openidc. Ce dernier est souvent directement disponible sur Linux via une commande du gestionnaire de package.
La seconde partie va donc être de configurer ce module apache afin d'authentifier les utilisateurs avec le protocole OpenID Connect. Dans le cas général, il vous faudra seulement l'URL des métadata.
Chez Dites Télécom, nous utilisons AzureAD pour authentifier nos utilisateurs. Voici un exemple de configuration apache :
 
<syntaxhighlight lang="ini">
OIDCProviderMetadataURL https://login.microsoftonline.com/your-tenant-id/v2.0/.well-known/openid-configuration
OIDCClientID youropenidclient
OIDCClientSecret yoursecret
OIDCCryptoPassphrase randomstring
OIDCRedirectURI https://mydolibarr.exemple.com/sso_redirect
OIDCScope "openid email profile"
OIDCRemoteUserClaim email ^(.*)@
 
<Directory /var/ht>
 
# Docroot
AuthType openid-connect
Require valid-user
Require env no-auth
 
</Directory>
 
</syntaxhighlight>
 
 
Dans l'exemple ci-dessus, les informations à rentrer dans OIDCProviderMetadataURL, OIDCClientID et OIDCClientSecret sont communiqués par votre fournisseur OpenID Connect.
La variable '''OIDCRemoteUserClaim''' défini quel claim sera utilisé pour le nom d'utilisateur. Dans notre exemple de configuration, nous considérons que le nom d'utilisateur qui sera utilisé dans Dolibarr Est-ce qui précède l'arobase dans l'adresse email.
Après cette manipulation, vous devriez être invité à vous connecter à votre compte OpenID Connect pour accéder à votre installation Dolibarr. Cependant, il reste à indiquer à Dolibarr qu'il doit utiliser le nom d'utilisateur défini par Apache. C'est dans le fichier conf/conf.php que nous allons réaliser cette manipulation. Ajoutez à la fin du fichier la ligne suivante :
$dolibarr_main_authentication='http';
$dolibarr_main_authentication='http';
Votre authentification OpenID Connect est maintenant pleinement fonctionnelle ! Attention toutefois, il peut y avoir des ajustements à faire pour que cette configuration fonctionne avec certains modules. Par exemple, l'usage de WebDav dans Dolibarr n'est pas compatible avec cette configuration.
En adaptant plus loin cette configuration, est est aussi possible d'utiliser l'authentification ActiveDirectory et autres services d'authentification.
<br />
<br />