Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
technique:adminsys:ldap:add_service [2020/09/08 19:01] – qduchemi | technique:adminsys:ldap:add_service [2022/09/23 10:20] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{indexmenu_n> | {{indexmenu_n> | ||
- | # Ajout d'un service connecté au LDAP | + | # Ajout d'un service |
+ | |||
+ | Cette page suppose que vous êtes [[technique: | ||
+ | |||
+ | Elle décrit les étapes générales à effectuer pour connecter un service quelconque au serveur LDAP. En pratique, cela veut dire que les utilisateurs disposant d'un compte sur le LDAP pourront se connecter au service en l' | ||
+ | |||
+ | C'est donc essentiellement pertinent pour les services " | ||
+ | |||
+ | ## Ajout d'un utilisateur en lecture seule | ||
+ | |||
+ | Cette étape est **optionnelle**. En effet, il existe déjà un utilisateur en lecture seule sur le LDAP, `nss`. Si malgré tout vous voulez créer un utilisateur dédié qui aura le droit de lire sur le LDAP, suivez ces étapes. Sinon, passez à la section suivante. | ||
+ | |||
+ | < | ||
+ | |||
+ | C'est parce que pour s' | ||
+ | |||
+ | On créera un compte sous `ou=Services`, | ||
+ | |||
+ | On lui attribuera ensuite les classes `organizationalRole` et `simpleSecurityObject`, | ||
+ | |||
+ | Maintenant que notre utilisateur est créé, on doit lui donner les accès en lecture seule au LDAP. | ||
+ | |||
+ | < | ||
+ | |||
+ | Le plus simple est de [[technique: | ||
+ | |||
+ | Dans l' | ||
+ | |||
+ | On cherche l' | ||
+ | |||
+ | ``` | ||
+ | to * by self read by dn=" | ||
+ | ``` | ||
+ | |||
+ | On modifie cet attribue pour lui ajouter, avant `by * none`, la chaîne suivante : | ||
+ | |||
+ | ``` | ||
+ | by cn=< | ||
+ | ``` | ||
+ | |||
+ | où `< | ||
+ | |||
+ | La valeur de l' | ||
+ | |||
+ | ``` | ||
+ | to * by self read by dn=" | ||
+ | ``` | ||
+ | |||
+ | On peut tester le compte a bien les droits en lecture avec la requête suivante : | ||
+ | |||
+ | ```bash | ||
+ | ldapsearch -x -D " | ||
+ | ``` | ||
+ | |||
+ | Après avoir entré le mot de passe, si le résultat contient les entrées du LDAP, c'est que le compte est fonctionnel. | ||
+ | |||
+ | ## Configuration du service | ||
+ | |||
+ | ### Configuration de l' | ||
+ | |||
+ | Chaque service a sa propre configuration, | ||
+ | |||
+ | * `User bind DN` : c'est le DN de notre utilisateur en lecture seule. On utilisera `cn=< | ||
+ | * `User bind password` : le mot de passe de l' | ||
+ | * `URL` : `ldaps:// | ||
+ | * `Port` : `636` | ||
+ | |||
+ | ### Filtre | ||
+ | |||
+ | On demande généralement le DN racine à partir duquel chercher les utilisateurs. On choisira `ou=People, | ||
+ | |||
+ | Ensuite, il y a généralement un filtre pour pouvoir chercher l' | ||
+ | |||
+ | ``` | ||
+ | (& | ||
+ | ``` | ||
+ | |||
+ | Dans cet exemple, on cherche une entrée qui a : | ||
+ | |||
+ | * La classe `posixAccount` | ||
+ | * Et l'UID correspondant au login que l' | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | Encore une fois, tout ceci est modulable : vous pouvez faire des filtres n' | ||
+ | |||
+ | ### Utilisation de authorizedService | ||
+ | |||
+ | Si le service que vous déployé doit être réservé aux personnes ayant un attribut `authorizedService` à `< | ||
+ | |||
+ | ``` | ||
+ | (& | ||
+ | ``` | ||
+ | |||
+ | Ce qui signifie qu'il ne faut autoriser que les utilisateurs : | ||
+ | |||
+ | * Qui ont une classe `posixAccount` et un `uid` correspondant au login | ||
+ | * Et dont l' |