Legt Konten und Gruppen auf externen Systemen (SCIM 2.0, Nextcloud, Mailman 3) entsprechend den Mitgliedern und Rollen von Admidio an, aktualisiert und deaktiviert sie.
provisioningDieses Plugin legt Benutzerkonten und Gruppen auf externen Systemen an, aktualisiert, deaktiviert und löscht sie entsprechend den Mitgliedern und Rollen von Admidio. Änderungen in Admidio erreichen die angebundenen Systeme innerhalb von Sekunden. Das Plugin bringt drei Konnektoren mit:
Weitere Konnektoren können von anderen Plugins ergänzt werden.
Es wurden noch keine Versionen veröffentlicht.
Gehe als Administrator zum Plugin-Manager von Admidio (Admidio 6.0 oder neuer und PHP 8.2 oder neuer erforderlich, PHP-Erweiterung curl nötig), wähle „Plugin hinzufügen“, lade die Plugin-ZIP-Datei hoch und aktiviere das Plugin. Die Datenbanktabellen des Plugins werden bei der Installation angelegt. Beim Entfernen des Plugins werden sie gelöscht, einschließlich der Zuordnung, welches Konto auf dem Zielsystem zu welchem Admidio-Benutzer gehört – trenne daher vorher die Ziele oder räume sie auf.
Änderungen in Admidio erreichen die Ziele am Ende der Anfrage, die sie ausgelöst hat. Beginn und Ende von Mitgliedschaften, die Admidio nur als ganze Tage kennt, werden mit dem täglichen Abgleich kurz nach Mitternacht wirksam. Lasse die Wartungsaufträge von Admidio stündlich laufen, eine Zeile je Organisation; das Plugin registriert dort seinen Auftrag provisioning:sync:
15 * * * * php /pfad/zu/admidio/admidio maintenance:run --organization=KURZNAME --no-interaction --quiet
Der Befehl benötigt einen ausführenden Administrator der Organisation, zum Beispiel über $gCliDefaults in adm_my_files/cli-config.php. Ohne Cron startet der erste Seitenaufruf nach Mitternacht den Abgleich; beendete Mitgliedschaften bleiben dann auf dem Ziel aktiv, bis jemand Admidio öffnet.
Der Menüpunkt Provisionierung (unter Erweiterungen, für Administratoren sichtbar) listet die Ziele auf. Ein Ziel besteht aus
userName) und den Attributen, die aus Profilfeldern übernommen werden;Die Statusseite eines Ziels zeigt die Warteschlange, die letzten Läufe sowie jedes Konto und jede Gruppe, die Aufmerksamkeit braucht, und bietet Jetzt synchronisieren, Jetzt prüfen, Verbindung testen und Wiederholen.
allowed_no_password_confirmation_ranges in der config.php von Nextcloud ein (hinter einem Reverse-Proxy muss auch der Proxy in trusted_proxies stehen):'allowed_no_password_confirmation_ranges' => ['192.0.2.10/32'],
externalId), werden nie angefasst.Administration → Einstellungen → Anmeldung & Sicherheit → Provisionierung
| Einstellung | Standard | Bedeutung |
|---|---|---|
| Sekunden pro Seitenaufruf für die Synchronisierung | 5 | Nach einer Änderung werden die Ziele nach dem Ausliefern der Seite höchstens so viele Sekunden lang aktualisiert. 0 überlässt die Synchronisierung Cron. |
| Ziele in privaten Netzwerken erlauben | aus | Erlaubt Zielsysteme mit privaten oder reservierten IP-Adressen und unverschlüsseltes HTTP. Nur einschalten, wenn das Zielsystem im eigenen Netzwerk liegt. |
| Administratoren über Probleme benachrichtigen | an | Sendet den Administratoren der Organisation höchstens eine E-Mail je Ziel und Tag, wenn Konten oder Gruppen Aufmerksamkeit brauchen. |
| Befehl | Zweck |
|---|---|
provisioning:sync [–target=UUID] [–full] [–verify] [–budget=S] [–dry-run] | Fälliges ausführen (für Cron) |
provisioning:status | Ziele, Warteschlangen und letzte Läufe; Exit-Code 3, wenn ein Ziel pausiert ist oder Einträge Aufmerksamkeit brauchen |
provisioning:test –target=UUID | Verbindung testen |
provisioning:queue –target=UUID [–retry] [–clear –yes] | Einträge, die Aufmerksamkeit brauchen; wiederholen oder löschen |
provisioning:deprovision –target=UUID –yes | Löscht, was Admidio auf dem Zielsystem angelegt hat, und danach das Ziel |
Ein Konnektor erweitert AdmidioPlugin\Provisioning\Connector\Connector und wird über den Filter provisioning_connectors registriert. Ein vollständiges Beispiel und einen kleinen SCIM-Mock-Server zum Ausprobieren findest du im Quellcode.