Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core Module und Plugins > System l Verzeichnissynchronisierung (LDAP, ADS)
Hinweis: Diese Dokumentation bezieht sich auf die aktuellste Version des Plugins agorum core directory sync. Aktualisieren Sie das hier beschriebene Plugin, um die Dokumentation verwenden zu können.
Diese Seite beschreibt die Vorgehensweise für die Migration von bestehenden Admin Sync-Konfigurationen zum neuen Directory Sync Plugin. Der Migrationsprozess überträgt Ihre Konfigurationen, Benutzer und Gruppen.
Achtung: Directory Sync legt synchronisierte Benutzer und Gruppen in einer anderen Ordnerstruktur ab als Admin Sync. Prüfen Sie nach der Migration nicht die bisherige Admin-Sync-Struktur, sondern die Verzeichnisse unterhalb von /agorum/roi/Administration/User und /agorum/roi/Administration/Group.
Bevor Sie mit der Migration beginnen, stellen Sie sicher, dass folgende Voraussetzungen erfüllt sind:
Für die Migration können Sie das folgende Migrationsskript verwenden:
let metadb = require('common/metadb');
let transaction = require('common/transaction');
let configurations = require('/agorum/roi/customers/agorum.directory.sync/js/lib/configurations');
let PREFIX = 'MAIN_MODULE_MANAGEMENT/ngosadminsync/control/';
Object.keys(metadb.read(PREFIX)).forEach(name => {
let prefix = PREFIX + name + '/';
// only consider active remote-to-local configurations
if (!metadb.readBoolean(prefix + 'Active') || !metadb.readString(prefix + 'LocalServer')) return;
let baseDn = metadb.readString(prefix + 'baseDN');
let isUser = metadb.readArray(prefix + 'SyncPathControl').map(local => local.toLowerCase().startsWith('user'));
transaction(() => {
// deactivate adminsync configuration
metadb.write(prefix + 'Active', 'false');
// create directory sync configuration
configurations.create({
active: true,
name: name,
login: {
server: metadb.readString(prefix + 'ConnectString'),
domain: baseDn
.split(',')
.filter(seg => seg.toLowerCase().startsWith('dc='))
.map(seg => seg.slice(3))
.join('.'),
username: metadb.readString(prefix + 'AdminDn'),
password: metadb.decrypt(metadb.readString(prefix + 'AdminPw')),
auth: 'simple',
trustAll: true,
},
rules: metadb.readArray(prefix + 'SyncPathControlRemote').map((path, i) => ({
baseDn: path + ',' + baseDn,
query: '',
selection: [],
options: {
mode: isUser[i] ? 'syncUsers' : 'syncGroups',
},
})),
});
});
});
Das Skript führt folgende Aktionen automatisch aus:
Hinweis: Das Skript läuft in einer Transaktion. Bei Fehlern wird die gesamte Migration zurückgerollt.
Hinweis: Admin Sync und Directory Sync können temporär parallel aktiv sein. Nach erfolgreicher Migration deaktivieren Sie Admin Sync (s. Schritt 5).
Hinweis: Wenn Sie in Admin Sync bisher Gruppen inkl. Mitgliedschaften synchronisiert haben, müssen Sie nach der Migration die migrierten Regeln prüfen. Aktivieren Sie in den Regeln die Option Gruppeninhalt automatisch synchronisieren, damit die Benutzerzugehörigkeiten in Gruppen mit synchronisiert werden. Ist die Option deaktiviert, erscheinen Gruppen ggf. als „leer“.
• Servername und Verbindungsparameter
• Domain
• Benutzername (sollte im LDAP-Format vorliegen)
• Synchronisierungsregeln
• Wurden alle Benutzer unterhalb von /agorum/roi/Administration/User gefunden?
• Wurden alle Gruppen unterhalb von /agorum/roi/Administration/Group.gefunden?
• Sind die Mitgliedschaften korrekt?
Testen Sie die Benutzeranmeldung mit ausgewählten Benutzern.
Nach erfolgreicher Migration und ausreichender Testphase: