technique:adminsys:ldap:add_people

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
technique:adminsys:ldap:gestion [2020/09/07 14:09] qduchemitechnique:adminsys:ldap:add_people [2021/11/22 22:29] – ↷ Page déplacée de technique:internal_serv:ldap:add_people à technique:adminsys:ldap:add_people qduchemi
Ligne 1: Ligne 1:
 {{indexmenu_n>20}} {{indexmenu_n>20}}
  
-# Ajout d'une personne+# Ajout d'un compte utilisateur
  
-La manière la plus simple d'ajouter une personne est de créer une copie d'une personne déjà existante (clic droit puis «Copy Entry/DN»). Pensez à vérifier chaque attribut et le mettre à jour si besoin !+Cette page suppose que vous êtes [[technique:internal_serv:ldap:utilisation|connecté au serveur LDAP avec le compte d'administration]]. 
 + 
 +Toutes les personnes autorisées à accéder aux services ou aux machines se trouvent sous `ou=People`. 
 + 
 +La manière la plus simple d'ajouter une personne est de créer une copie d'une personne déjà existante (clic droit puis « Copy Entry/DN »). Pensez à vérifier chaque attribut et le mettre à jour si besoin !
  
 ## uidNumber/gidNumber ## uidNumber/gidNumber
  
-Ils représentent les ids POSIX de l'utilisateur et de son groupe. Pour l'`uidNumber`, nous avons commencé à 2000 et nous incrémentons de 1 pour chaque nouvelle personne. Il est possible de voir les valeurs déjà utilisées avec la _quick search_ «Users, UIDs and access» (qui devrait apparaître sous «ou=People»). Pour le `gidNumber`, on utilise une des 3 valeurs suivantes:+Ils représentent les ids POSIX de l'utilisateur et de son groupe. Pour l'`uidNumber`, nous avons commencé à 2000 et nous incrémentons de 1 pour chaque nouvelle personne.
  
-* 500 (`users`): à utiliser par défaut +L'`uidNumberdoit impérativement être **unique**. Une astuce pour trouver un UID non-utilisé est de lister les UID utilisés avec la commande suivante :
-503 (`tech`): donne accès au groupe `docker` sur les VMs +
-* 506 (`admin`)donne accès aux groupes `docker` et `sudo` sur les VMs+
  
-(Il y a d'autres groupes définis dans «ou=Groups»Ils servent pour les servicesPlus de détails dans [Accès aux services](#accs-aux-services))+```bash 
 +ldapsearch -H ldaps://ldap.picasoft.net:636 -b dc=picasoft,dc=net -D cn=admin,dc=picasoft,dc=net -W | grep uidNumber | cut -d ':' -f 2 | sort 
 +``` 
 + 
 +Puis de choisir le prochain UID non-utilisé. 
 + 
 +Le `gidNumber` est choisi en fonction des permissions à donner à l'utilisateur : 
 + 
 +* 502 (`member`) : à utiliser par défaut, donne un accès basique aux machines et aux services privés (e.g. Cloud) 
 +* 500 (`tech`): donne accès au groupe `docker` sur les VMs, permet d'administrer les conteneurs 
 +* 501 (`admin`): donne accès aux groupes `docker` et `sudo` sur les VMs
  
 ## Date d'expiration ## Date d'expiration
  
 Le champ `shadowExpire` représente la date à laquelle le compte va expirer. Il est donné en jours depuis le 1er janvier 1970. Le champ `shadowExpire` représente la date à laquelle le compte va expirer. Il est donné en jours depuis le 1er janvier 1970.
 +
 Pour avoir ce nombre de jours, on peut utiliser les commandes suivantes: Pour avoir ce nombre de jours, on peut utiliser les commandes suivantes:
 <code bash> <code bash>
 +# Remplacer par la date au format AAAAMMDD
 DATE=20200930 DATE=20200930
 DATE_SECONDS=`date -d "$DATE" +%s` DATE_SECONDS=`date -d "$DATE" +%s`
Ligne 28: Ligne 42:
 Il convient de prendre des dates environ un mois après le début du semestre suivant, pour avoir le temps de renouveler les accès si la personne souhaite continuer à s'investir. Il convient de prendre des dates environ un mois après le début du semestre suivant, pour avoir le temps de renouveler les accès si la personne souhaite continuer à s'investir.
  
-Voici quelques dates pré-calculées+Un valeur de `-1` indique que le compte n'expire jamais. 
 + 
 +## Champs informatifs : 
 + 
 +* `cn` et `uid` : même valeur, servira de login. On le calque en général sur le login UTC. 
 +* `givenName` : Prénom 
 +* `sn` : Nom de famille 
 +* `mail` : Adresse mail 
 + 
 +## Mot de passe 
 + 
 +Via l'attribut `userPassword`. La méthode hash sélectionnée doit être `SSHA`. Soit l'utilisateur entre directement son mot de passe, soit on génère un mot de passe sécurisé et on lui envoie en lui demandant de le changer. 
 + 
 +Les personnes ayant accès aux machines peuvent mettre à jour leur mot de passe via la commande `passwd`. Les personnes n'ayant pas accès aux machines peuvent utiliser le wiki ou le Cloud pour pouvoir mettre à jour leur mot de passe. 
 + 
 +## Accès aux machines 
 + 
 +Pour que le compte puisse se connecter aux machines (en SSH), il faut rajouter quelques attributs. 
 + 
 +L'attribut `host` peut être spécifié plusieurs fois, et contiendra l'une des valeurs suivantes : 
 + 
 +* `pica01` 
 +* `pica02` 
 +* `pica01-test` 
 +* `monitoring` 
 +* `*`, ce qui est un raccourci pour donner l'accès à toutes les machines.
  
-* **30/09/2020:** 18534 +L'attribut `sshPublicKey`, qui peut également être dupliqué, contiendra les clés publiques SSH de l'utilisateur qui sont autorisées à établir une connexion. Il s'agit en général du contenu du fichier `~/.ssh/id_rsa.pub` sur la machine de l'utilisateur.
-* **15/03/2021:** 18700 +
-* **30/09/2021:** 18899 +
-* **15/03/2022:** 19065+
  
-## Accès aux services+Enfin, on ajoutera l'attribut `homeDirectory`, qui vaut par convention `/home/users/<uid>`, et qui correspond au `$HOME` de l'utilisateur.
  
-[ToDo]+## Accès aux services reliés au LDAP
  
-## Accès aux VMs+Le simple fait d'avoir une entrée sous `ou=People` permet généralement d'accéder aux services reliés au LDAP (comme le wiki ou le Cloud). Tout ceci dépend de la configuration du service en question, donc on ne peut pas faire de généralités.
  
-[ToDo]+Les services nécessitant une autorisation spéciale utilisent l'attribut `authorizedService`, qui peut être dupliqué autant de fois que nécessaire et contient une valeur arbitraire utilisée par le service (e.g. `cloud` ou `wiki` - ce ne sont que des exemples, le wiki n'a pas besoin d'autorisation spéciale).
  
-## Changement du mot de passe par la personne elle-même+On peut aussi utiliser la valeur `*`, qui indique que l'utilisateur a accès à tous les services nécessitant une autorisation spéciale.
  
-Les personnes ayant accès aux VMs peuvent mettre à jour leur mot de passe via la commande `passwd`. Les personnes n'ayant pas accès aux VMs ont besoin d'un accès au wiki pour pouvoir mettre à jour leur mot de passe (bouton en haut à droite puis «Mettre à jour le profil»).+Notez bien que cet attribut ne donne en soi accès à rien : c'est aux services eux-mêmes de vérifier la valeur de cet attribut lors de la connexion, et de l'accepter ou non.
  • technique/adminsys/ldap/add_people.txt
  • de qduchemi