IAM

Identity and Access Management

Les ACL dans OpenLDAP

Principes généraux

Les ACL dans OpenLDAP peuvent se trouver à 2 niveaux, database ou backEnd, sachant qu'il est assez courant d'avoir un backend par database (ou vice-versa).

Les ACL sont donc généralement positionnées dans la configuration de la database.

Syntaxe

La syntaxe globale est :

olcAccess: to [ressource]
  by [à qui] [type d'accès autorisé]
  by [à qui] [type d'accès autorisé]
  by [à qui] [type d'accès autorisé]

Un exemple de base, qui limite l'accès à l'attribut userPassword :

Migration de schéma Sun DSEE vers OpenLDAP

Comme vu précédemment (https://www.vincentliefooghe.net/content/migration-sun-dsee-vers-openld…) la migration Sun DSEE vers OpenLDAP nécessite une phase d'adaptation des schémas spécifiques.

Si on utilise des attributs ou classes d'objets propres à la structure (ce qui est bien souvent le cas) il faudra adapter la définition pour OpenLDAP.

Exemple d'un fichier 99user.ldif :

Migration Sun DSEE vers OpenLDAP

Suite au rachat de Sun par Oracle, et à la fin de support de l'annuaire Sun DSEE (la version 7 étant la dernière, avec un support étendu jusque Décembre 2017), pas mal de clients regardent ailleurs pour migrer leur annuaire LDAP.

Nous voyons ainsi des migration vers OpenDJ, mais aussi vers OpenLDAP.

Si les deux annuaires respectent le protocole LDAP, l'implémentation réalisée par OpenLDAP est beaucoup plus stricte (ou moins permissive) que ne l'était celle de Sun. Il faut ainsi faire attention à plusieurs points :

CA Identity Manager - Problèmes au lancement

Récemment, nous avons eu un souci lors du redémarrage d'une instance CA Identity Manager.

Démarrage du UserStore impossible

D'une part, l'annuaire UserStore ne veut pas se lancer. Lorsqu'on tente un démarrage avec la commande dxserver start, on a le message :

dxserver start userstore

Message
userstore does not exist

On vérifie bien que la configuration est là, que les fichiers de données sont également présents... Pas de processus en cours d'exécution.

OpenIDM : purge des tables audit

Contexte

Dans un environnement client OpenIDM 3.1 en production depuis plusieurs mois, l'accès à l'écran d'administration des mappings met de plus en plus longtemps à s'afficher.

English Summary

It may help : if the access time to mapping administration form in OpenIDM becomes very slow, then check the numbers of lines in auditrecon table, and delete old records.

OpenIDM : réduire les logs du scheduler

Chez un client, nous avons activé le niveau de log à INFO par défaut afin d'avoir des traces des opérations, notamment car on travaille sur la base d'un changelog depuis un annuaire LDAP Sun, avec un polling toutes les 10 secondes. Plusieurs providers sont ainsi déclenchés : l'un pour les utilisateurs du LDAP, un autre pour les groupes, et encore un pour les groupes AD.

Ceci a pour effet de bord de remplir les logs d'informations peu utiles, du genre :

OpenLDAP : setup multiple instances on a server

Abstract : in some cases, it is interesting to have multiples instances of OpenLDAP running on the same machine. This could be used to separate data, test replication on the same server, or whatever you want.

This note will explain how to do this.

Main principles

In a standard GNU/Linux OpenLDAP install (Red Hat or Debian based), there are several files or directories used to set up OpenLDAP instance and data :

Tuning OpenLDAP avec DB_CONFIG

Afin d'améliorer les performances de OpenLDAP, il est recommandé de pouvoir utiliser le plus de cache possible pour monter en mémoire les données OpenLDAP.

Ceci se fait via les réglagles du fichier DB_CONFIG, qui se trouve dans le répertoire contenant les données de l'annuaire, et qui permet de paramétrer la base de données Berkeley, utilisée comme back-end de stockage par OpenLDAP.
Par défaut, il n'y a pas de fichier DB_CONFIG créé. Par contre on peut trouver un exemple dans /usr/share/openldap-servers/DB_CONFIG.example :