====== Gérer la branche DSA ====== La branche DSA ((**D**irectory **S**ystem **A**gent)) est utilisée pour créer des comptes systèmes sur l'annuaire. Ces comptes seront en général utilisé pour donner des droits particuliers sur certains attributs à certaines application. Par exemple, si vous connectez un serveur samba sur votre annuaire, il devra avoir des droits relativement élevé, sur beaucoup d'attribut (tous les attributs posix, ainsi que les mot de passe unix et samba). Plutôt que d'utiliser le compte admin de l'annuaire, on va créer un compte spécial pour samba. ===== Installation ===== Pour gérer cette branche DSA, il faut installer le plugin fusiondirectory-plugin-dsa yum install fusiondirectory-plugin-dsa ===== Schéma ===== Il est nécessaire de charger le schéma dsa-fd-conf dans l'annuaire. Si vous utilisez le format slapd.conf: [...] include /etc/openldap/schema/fusiondirectory/dsa-fd-conf.schema [...] ===== Sauver les préférences ===== Comme après l'installation de n'importe quel plugin, il faut aller dans les préférence de l'interface Fusion Directory puis sauvegarder (même sans faire de changement) pour que les nouvelles branches soient créées ===== Créez un compte DSA ===== Dans l'interface de Fusion Directory, un nouveau menu apparaît pour gérer la branche DSA: {{:tuto:fusiondirectory:dsa_list.png|Liste des comptes DSA}} {{:tuto:fusiondirectory:dsa_create.png|Création d'un nouveau compte}} ===== Utilisation dans les ACL ===== Vous pouvez maintenant utiliser ce nouveau compte dans vos ACL LDAP. Exemple pour OpenLDAP, avec le format slapd.conf: [...] # Access to passwords attributes access to attrs=userPassword,sambaLMPassword,sambaNTPassword by dn=cn=samba,ou=DSA,dc=firewall-services,dc=com ssf=256 write by anonymous peername.ip="127.0.0.1" auth by anonymous peername.ip="[::1]" auth by anonymous ssf=256 auth by self peername.ip="127.0.0.1" write by self peername.ip="[::1]" write by self ssf=256 write by * none # Access to SSH public keys access to attrs=sshPublicKey by dn=cn=ssh,ou=DSA,dc=firewall-services,dc=com peername.ip="127.0.0.1" read by dn=cn=ssh,ou=DSA,dc=firewall-services,dc=com peername.ip="[::1]" read by dn=cn=ssh,ou=DSA,dc=firewall-services,dc=com ssf=256 read by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="127.0.0.1" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" peername.ip="[::1]" write by group.exact="cn=admins,ou=Groups,dc=firewall-services,dc=com" ssf=256 write by self peername.ip="127.0.0.1" write by self peername.ip="[::1]" write by self ssf=128 write by * none [...]