2017-07-06 1 views
0

Wie kann ich einen Benutzer in OpenAM/OpenSSO mit create Realm Privileg (anders als amAdmin) erstellen? Wir brauchen diese Funktion, damit unsere b2b-Benutzer wiederum Unterorganisationen erstellen können.Wie erstellt man einen Benutzer in OpenAM mit Realm-Privilegien erstellen?

+0

Wenn Sie einen delegierten Administrator erstellen, der einen Bereich verwalten kann (z. B. "realm1"), kann der Administrator Bereiche unter seinem Bereich erstellen (z. B. '/ realm1/realm11'). Erfüllt es Ihre Anfrage? –

Antwort

1

Ein Teil der Delegierungs-API ist über ClientSDK verfügbar. Wenn der Arbeitsspeicher jedoch älteren Versionen von ClientSDK dient, sind zusätzliche serverseitige Bibliotheken im Klassenpfad erforderlich, damit diese APIs tatsächlich funktionieren können.

Das Wesen der delegierten Admins über ClientSDK zu schaffen wäre so etwas wie:

  • erstellen Sie einen Benutzer
  • eine neue Gruppe
  • fügen Sie den Benutzer zu der Gruppe geben
  • schaffen eine Delegation Privileg erstellen Zugang zu der Gruppe.

würde der Java-Code für den letzten Teil sein:

DelegationManager delegationManager = new DelegationManager(adminToken, realmName); 
Set<String> groups = Collections.singleton(group.getUniversalId()); 
DelegationPrivilege realmAdminPrivilege = new DelegationPrivilege("RealmAdmin", groups, realmName); 
delegationManager.addPrivilege(realmAdminPrivilege); 

Wenn die REST-APIs verwenden, würde ich mit der Politik zu interagieren vorschlagen statt (Delegation Privilegien sind in der Tat nur „besondere“ gespeichert Politik unter einem versteckten Bereich unter der sunAMDelegationService-Richtlinie gesetzt).

Verwandte Themen