Die Benutzerregistry-Brücke wird genauso wie andere angepasste Adapter konfiguriert. Sie können die Scripting-Sprachen Jython und Jacl mit dem Scripting-Tool "wsadmin" verwenden, um die Benutzerregistry-Brücke
in der Konfiguration eingebundener Repositorys zu definieren.
Vorbereitende Schritte
Beenden Sie WebSphere Application Server und das wsadmin-Befehlsfenster.
Wichtig: Wenn Sie eine Migration von der eigenständigen
Benutzerregistry im lokalen Betriebssystem auf eingebundene Repositorys im lokalen Betriebssystem durchführen, müssen Sie zuerst
die aktuelle Benutzerregistry unter den eingebundenen Repositorys konfigurieren.
Weitere Informationen finden Sie im Artikel "Realm in einer Konfiguration für eingebundene Repositorys verwalten".
Es können
Berechtigungsfehler auftreten, wenn Benutzer oder Gruppen vor der Migration Rollen zugeordnet werden und Sie diese
Benutzer oder Gruppen nach der Migration auf die Benutzerregistry-Brücke verwenden. Diese Situation tritt ein, weil die
Zuordnung Registry-spezifische Informationen enthält.
Sie müssen die Benutzer oder Gruppen nach der Migration erneut zuordnen, um Berechtigungsfehler zu vermeiden.
Informationen zu diesem Vorgang
Weitere Informationen zu den Befehlen, die für diesen Artikel zu verwenden sind, finden Sie in der Beschreibung der Befehlsgruppe
IdMgrRepositoryConfig für das Objekt "AdminTask".
Verwenden Sie die folgenden Schritte, um einer Konfiguration für eingebundene Repositorys
und allen Realms, die in in der Konfiguration definiert sind, eine Benutzerregistry-Brücke hinzuzufügen.
Vorgehensweise
- Scripting-Tool "wsadmin" starten. Sie können den folgenden Befehl verwenden, um das Scripting-Tool "wsadmin" zu starten:
wsadmin –conntype none
- Mit dem Befehl createIdMgrCustomRepository ein neue Repositorykonfiguration für die Benutzerregistry-Brücke hinzufügen.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
Im folgenden Beispiel wird ein angepasstes Repository für die Verwendung der Klasse
"com.ibm.ws.wim.adapter.urbridge.URBridge"
konfiguriert und das Repository "urbcustom" als Kennung festgelegt:
- Mit Jython:
AdminTask.createIdMgrCustomRepository('-id urbcustom
-adapterClassName com.ibm.ws.wim.adapter.urbridge.URBridge')
- Mit Jacl:
$AdminTask createIdMgrCustomRepository {-id urbcustom
-adapterClassName com.ibm.ws.wim.adapter.urbridge.URBridge}
![[z/OS]](../images/ngzos.gif)
Im folgenden Beispiel wird ein angepasstes Repository für die Verwendung der Klasse
"com.ibm.ws.wim.adapter.urbridge.URBridge"
konfiguriert und das Repository "urbRACF" als Kennung festgelegt:
- Mit Jython:
AdminTask.createIdMgrCustomRepository('-id urbRACF
-adapterClassName com.ibm.ws.wim.adapter.urbridge.URBridge')
- Mit Jacl:
$AdminTask createIdMgrCustomRepository {-id urbRACF
-adapterClassName com.ibm.ws.wim.adapter.urbridge.URBridge}
Fehler vermeiden: Die Benutzerregistry-Brücke behandelt nur Anforderungen an eine einzige Benutzerregistry. Wenn Sie mehrere Repositorys definieren, muss jede Benutzerregistry-Implementierung deshalb eine separate Instanz
der Benutzerregistry-Brücke haben, und Sie müssen jede Implementierung als separates Repository mit einer eindeutigen Repository-ID
definieren.
Resource Access Control Facility (RACF) verwaltet
alle RACF-Attribute. Daher müssen keine angepassten
Eigenschaften hinzugefügt werden, um die Benutzerregistry-Brücke mit RACF zu verwenden.
gotcha
- Optional:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Erforderliche Registry-spezifische Eigenschaften als angepasste Eigenschaften hinzufügen. Führen Sie den
Befehl setIdMgrCustomProperty für jede Eigenschaft aus, die Sie hinzufügen möchten. Verwenden Sie diesen Befehl einmal pro Eigenschaft, wenn Sie Ihrer Konfiguration mehrere Eigenschaften hinzufügen möchten. Sie müssen die Parameter "name" und "value" angeben, um die angepasste Eigenschaft für das angegebene
Repository hinzuzufügen. Wenn Sie beispielsweise die angepasste Eigenschaft "uniqueUserIdProperty" hinzufügen möchten, geben Sie Folgendes ein:- Mit Jython:
AdminTask.setIdMgrCustomProperty('-id urbcustom
-name uniqueUserIdProperty -value "uniqueId"')
- Mit Jacl:
$AdminTask setIdMgrCustomProperty {-id urbcustom
-name uniqueUserIdProperty -value "uniqueId"}
Wenn Sie die Benutzerregistry-Brücke für die Verwendung einer angepassten
Benutzerregistry konfigurieren möchten, müssen Sie die Eigenschaft "registryImplClass" hinzufügen und die
genaue Registry-Implementierungsklasse angeben. Geben Sie beispielsweise "com.xyz.abc.MyCustomRegistry" als Wert für die Eigenschaft an.
Wenn Sie die Benutzerregistry-Brücke für die Verwendung der Benutzerregistry des lokalen Betriebssystems konfigurieren möchten,
geben Sie die Eigenschaft "registryImplClass" nicht an. Die Benutzerregistry-Brücke identifiziert die zugrunde liegende Benutzerregistry-Implementierung, die von WebSphere Application Server für das lokale Betriebssystem bereitgestellt wird.
Sie können weitere optionale Eigenschaften als angepasste Eigenschaften festlegen, um die Zuordnung
zwischen Eigenschaften des eingebundenen Repositorys und Eigenschaften der Benutzerregistry zu definieren, wie z. B.
uniqueUserIdProperty, userSecurityNameProperty, userDisplayNameProperty,
uniqueGroupIdProperty, groupSecurityNameProperty und groupDisplayNameProperty. Weitere Informationen zu den verfügbaren angepassten Eigenschaften und ihren Standardwerten finden Sie
im Artikel "Angepasste Eigenschaften für die Sicherheit".
Wenn Sie Eigenschaften auf der Ebene der
Benutzerregistry überschreiben möchten, konfigurieren Sie die jeweilige Eigenschaft als angepasste Eigenschaft.
Fehler vermeiden: Die Zuordnung zwischen einer Eigenschaft für ein eingebundenes Repository und einer Eigenschaft für die Benutzerregistry ist
eine 1:1-Zuordnung. Sie können eine Eigenschaft für ein eingebundenes Repository nur einer einzigen Eigenschaft für eine Benutzerregistry zuordnen.
gotcha
- Der Konfiguration der Benutzerregistry-Brücke einen Basiseintrag hinzufügen. Verwenden Sie den
Befehl addIdMgrRepositoryBaseEntry, um den Namen des Basiseintrags für das angegebene
Repository anzugeben.
Beispiel:
- Mit Jython:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
AdminTask.addIdMgrRepositoryBaseEntry('-id urbcustom
-name o=custom')
![[z/OS]](../images/ngzos.gif)
AdminTask.addIdMgrRepositoryBaseEntry('-id urbRACF
-name o=local')
- Mit Jacl:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
$AdminTask addIdMgrRepositoryBaseEntry {-id urbcustom
-name o=custom}
![[z/OS]](../images/ngzos.gif)
$AdminTask addIdMgrRepositoryBaseEntry {-id urbRACF
-name o=local}
- Befehl addIdMgrRealmBaseEntry verwenden, um dem Realm den Basiseintrag hinzuzufügen, der den Realm mit dem Repository
verknüpft.
Anmerkung: Der Standardrealmname ist "defaultWIMFileBasedRealm".
Wenn dieser Realm umbenannt wurde, verwenden Sie den neuen Realmnamen an
Stelle von "defaultWIMFileBasedRealm". Zur Gewährleistung der Konsistenz können Sie als Realmnamen für die Konfiguration des eingebundenen Repositorys
beispielsweise den Namen der Benutzerregistry des lokalen Betriebssystems verwenden, der in der Datei
security.xml angegeben ist. Weitere Informationen zum Festlegen des Realmnamens finden Sie in den Beschreibungen der
Einstellungen für die Realmkonfiguration.
- Sichern Sie die Konfigurationsänderungen. Geben Sie die folgenden Befehle ein, um die neue Konfiguration zu speichern
und das Scripting-Tool "wsadmin" zu schließen:
- Mit Jython:
AdminConfig.save()
exit
- Mit Jacl:
$AdminConfig save
exit
SAF-Zuordnungsmodul (System Authorization Facility) für die Gewährleistung der Eigenschaftenverfügbarkeit
der SAF-Berechtigung konfigurieren. Weitere Informationen zum Konfigurieren eines SAF-Zuordnungsmoduls finden Sie im Artikel zum Installieren und Konfigurieren
eines angepassten SAF-Zuordnungsmoduls für WebSphere Application Server. In diesem Artikel finden Sie
Beispiel für ein SAF-Zuordnungsmodul, das Sie installieren und verwenden können. Wenn Sie das SAF-Zuordungsmodul für eingebundene Repositorys verwenden möchten,
lesen Sie die Informationen im Artikel "Angepasstes SAF-Zuordnungsmodul (System Authorization Facility) für eingebundene Repositorys".
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Anmerkung: Wenn Sie die verteilte SAF-Identitätszuordnung verwenden möchten, ist es nicht erforderlich, dieses Zuordnungsmodul zu konfigurieren.
Anmerkung: Eventuell sind müssen Sie einzige
zusätzliche Schritt ausführen, wenn RACF in einem anderen Realm
als dem Realm "defaultWIMFileBasedRealm" konfiguriert ist. Wenn ein neuer Realm erstellt wird,
verwenden einige Eigenschaften Standardeinstellungen, die von denen des Realms
"defaultWIMFileBasedRealm" abweichen und für die Verwendung mit einem eingebundenen RACF-Benutzerrepository nicht geeignet sind. Sie müssen den Befehl
"setIdMgrRealmURAttrMapping" verwenden, um folgende Werte festzulegen:
- Der Wert des Parameters
"propertyForOutput" der Eigenschaft
"userSecurityNameMapping" muss auf
"principalName" gesetzt werden.
- Der Wert des Parameters
"propertyForOutput" der Eigenschaft
"groupSecurityNameMapping" muss auf
"cn" gesetzt werden.
Weitere Informationen zur Verwendung des Befehls
"setIdMgrRealmURAttrMapping" finden Sie in der Beschreibung der
Befehlsgruppe "IdMgrRealmConfig" für das Objekt "AdminTask".
- Starten Sie den Anwendungsserver erneut.
Ergebnisse
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
Der folgende Code ist ein Beispiel für eine Basiskonfiguration in der Datei
wimconfig.xml für eine Benutzerregistry-Brücke, die auf eine angepasste Benutzerregistry zugreift:
<config:repositories adapterClassName="com.ibm.ws.wim.adapter.urbridge.URBridge" id="urbcustom">
<config:baseEntries name="o=custom"/>
<config:CustomProperties name="registryImplClass" value="com.ibm.registry.impl.FileRegistrySample"/>
<config:CustomProperties name="usersFile" value="${USER_PROPS}"/>
<config:CustomProperties name="groupsFile" value="${GROUP_PROPS}"/>
</config:repositories>
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Im vorherigen Beispiel werden die Variablen
${USER_PROPS} und ${GROUP_PROPS} verwendet, um die Werte
der angepassten Eigenschaften zu definieren.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
Sie können für die Definition angepasster Eigenschaften Variablen verwenden.
Diese Variablen werden jedoch nur im Verbindungsmodus von
WebSphere Application Server ausgeführt.
Weitere Informationen zum Definieren von Umgebungsvariablen finden Sie unter "WebSphere-Variablen
erstellen, bearbeiten und löschen".
![[z/OS]](../images/ngzos.gif)
Der folgende Code ist ein Beispiel aus einer Datei
"wimconfig.xml", die für eine Benutzerregistry-Brücke konfiguriert ist, die über RACF
auf die Registry des lokaln Betriebssystems zugreift:
<config:repositories xsi:type="config:FileRepositoryType" adapterClassName="com.ibm.ws.wim.adapter.file.was.FileAdapter"
id="InternalFileRepository" supportPaging="false"
messageDigestAlgorithm="SHA-1">
<config:baseEntries name="o=defaultWIMFileBasedRealm"/>
</config:repositories>
<config:repositories adapterClassName="com.ibm.ws.wim.adapter.urbridge.URBridge"
id="urbRACF" supportPaging="false">
<config:baseEntries name="o=local"/>
</config:repositories>
<config:realmConfiguration defaultRealm="defaultWIMFileBasedRealm">
<config:realms delimiter="/" name="defaultWIMFileBasedRealm" securityUse="active">
<config:participatingBaseEntries name="o=defaultWIMFileBasedRealm"/>
<config:participatingBaseEntries name="o=local"/>
<config:uniqueUserIdMapping propertyForInput="uniqueName" propertyForOutput="uniqueName"/>
<config:userSecurityNameMapping propertyForInput="principalName" propertyForOutput="principalName"/>
<config:userDisplayNameMapping propertyForInput="principalName" propertyForOutput="principalName"/>
<config:uniqueGroupIdMapping propertyForInput="uniqueName" propertyForOutput="uniqueName"/>
<config:groupSecurityNameMapping propertyForInput="cn" propertyForOutput="cn"/>
<config:groupDisplayNameMapping propertyForInput="cn" propertyForOutput="cn"/>
</config:realms>
</config:realmConfiguration>