![[z/OS]](../images/ngzos.gif)
Tipps zur Verwendung von RACF (Resource Access Control Facility) für die Anpassung von WebSphere Application Server
Es ist wichtig, die Sicherheitsmechanismen zu verstehen, die zum Schutz der Serverressourcen mit den Klassen CBIND, SERVER und STARTED in RACF (oder in Ihrem Sicherheitsprodukt) verwendet werden. Dieser Artikel beschreibt die Mechanismen zusammen mit einigen Verfahren für die Verwaltung der Sicherheitsumgebung.
- CBIND: Zugriff auf Server und Serverobjekte
- SERVER: Zugriff auf Controllerregionen durch Servantregionen
- STARTED: Zuordnung von Benutzer-IDs und -gruppen zu gestarteten Prozeduren (Started Procedures, STCs)
Sie müssen die erforderlichen RACF-Profile und -Berechtigungen für einen anderen Server in Ihrer Zelle hinzufügen.
Sie können die Mindestmenge an Benutzern, Gruppen und Profilen für eine Testumgebung definieren (in der die Sicherheit einzelner Server nicht das Hauptanliegen ist).
RACF-Profile (CBIND, SERVER und STARTED): Grundlegende Informationen zu den RACF-Profilen, die von WebSphere verwendet werden, finden Sie im Artikel SAF-Klassen und -Profile. Dieser Artikel enthält weitere Informationen zu den Klassenprofilen CBIND, SERVER, und STARTED.
CR = Controllerregion
SR = Servantregion
CFG = Konfiguration (Gruppe)
Server = Kurzname des Server
Cluster = Name (Kurzname) des generischen Servers (auch Cluster-Übergangsname genannt)
<CR-Benutzer-ID> <CR-Gruppen-ID>, <CFG-Gruppen-ID>
<SR-Benutzer-ID> <SR-Gruppen-ID>, <CFG-Gruppen-ID>
<demn-Benutzer-ID> <demn-Gruppen-ID>, <CFG-Gruppen-ID>
<admin-Benutzer-ID> <CFG-Gruppen-ID>
<Client-Benutzer-ID> <Client-Gruppen-ID>
<ctracewtr-Benutzer-ID> <ctracewtr-Gruppen-ID>
Nachfolgend sind verschiedene Profile, die zum Schutz der WebSphere-Server und -Ressourcen verwendet werden, mit den entsprechenden Berechtigungen und Zugriffsebenen aufgeführt.
CBIND-Klassenprofile - Zugriff auf
generische Server
CB.BIND.<Cluster> UACC(READ); PERMIT <CR-Gruppe> ACC(CONTROL)
CBIND-Klassenprofile - Zugriffe auf Serverobjekte
CB.<Cluster> UACC(READ) PERMIT <CR-Gruppe> ACC(CONTROL)
SERVER-Klassenprofile - Es gibt gegenwärtig zwei Formate der SERVER-Klassenprofile, mit denen der Zugriff auf die Server-Controller-Regionen geschützt wird: Sie müssen ein SERVER-Profil mit einem einzelnen Format definieren. Der Profiltyp hängt davon ab, ob die DAE-Unterstützung (Dynamic Application Environment) aktiviert ist. Dazu müssen Sie das WLM DAE APAR OW54622 anlegen, das Sie ab z/OS Version 1 Release 2 verwenden können.
- Der folgende Befehl ermöglicht den Zugriff auf Controller mit statischen Anwendungsumgebungen (ohne die APAR-Unterstützung): RDEFINE CB.&<Server>.&<Cluster> UACC(NONE); PERMIT &<SR-Benutzer-ID> ACC(READ). Für dieses Beispiel gilt Folgendes: Server = Servername, Cluster = Clustername oder Clusterübergangsname, falls noch kein Cluster erstellt wurde, und SR = MVS-Benutzer-ID der Serverregion.
- Der folgende Befehl ermöglicht den Zugriff auf Controller mit dynamischen Anwendungsumgebungen (mit der WLM-DAE-APAR-Unterstützung): CB.&<Server>.&<Cluster>.<Zelle> UACC(NONE); PERMIT &<SR-Benutzer-ID> ACC(READ). Für dieses Beispiel gilt Folgendes: Server = Servername, Cluster = Clustername oder Clusterübergangsname, falls noch kein Cluster erstellt wurde, Zelle = Kurzname der Zelle und SR = MVS-Benutzer-ID der Serverregion.
STARTED-Klassenprofile - (MGCRE)
<<CR-Prozedur>.<CR-Jobname> STDATA(USER(CR-Benutzer-ID) GROUP(CFG-Gruppen-ID))
<demn-Prozedur>.* STDATA(USER(demn-Benutzer-ID) GROUP(CFG-Gruppen-ID))
STARTED-Klassenprofile - (ASCRE)
<SR-Jobname>.<SR-Jobname> STDATA(USER(SR-Benutzer-ID) GROUP(CFG-Gruppen-ID))
STARTED-Klassenprofile für IJP - (MGCRE)
<MQ-SSName>.* STDATA(USER(IJP-Benutzer-ID) GROUP(CFG-Gruppen-ID))
Neue Benutzer-IDs und Profile für einen neuen Server generieren: Wenn Sie für jeden neuen Anwendungsserver eindeutige Benutzer-IDs verwenden möchten, müssen Sie diese Benutzer, Gruppen und Profile in der RACF-Datenbank definieren.
- Wenn eindeutige Benutzer-IDs für die neuen Server benötigt werden, müssen Sie drei
neue Benutzer definieren und den folgenden Gruppen zuordnen:
<Neue_CR-Benutzer-ID> <CR-Gruppen-ID>, <CFG-Gruppen-ID><Neue_SR-Benutzer-ID> <SR-Gruppen-ID>, <CFG-Gruppen-ID><Neue_Client-Benutzer-ID> <Client-Gruppen-ID>
- CBIND-Klassenprofile für den neuen Cluster (Kurzname des generischen Servers):
CB.BIND.<neuer_Cluster>CB.<neuer_Cluster>
- SERVER-Klassenprofile für den neuen Server und Cluster:
CB.<neuer_Server>.<neuer_Cluster>CB.<neuer_Server>.<neuer_Cluster>.<Zelle>
- STARTED-Klassenprofile für die Controllerregion und die Servantregion des neuen
Servers:
<CR-Prozedur>.<neuer_CR-Jobname> STDATA(USER(neue_CR-Benutzer-ID) GROUP(CFG-Gruppen-ID)) <Neuer_SR-Jobname>.* STDATA(USER(neue_SR-Benutzer-ID) GROUP(CFG-Gruppen-ID))
/* CBIND-Klassenprofile
(UACC) - Zugriff auf generische Server */
CB.BIND.T5CL* UACC(READ); PERMIT ID(T5GRP) ACC(CONTROL)
/* CBIND-Klassenprofile (UACC) - Zugriff auf Serverobjekte */
CB.T5CL* UACC(READ); PERMIT ID(T5GRP) ACC(CONTROL)
/* SERVER-Klassenprofile - Zugriff auf Controller (alte Methode) */
CB.*.T5CL* UACC(NONE); PERMIT ID(T5USR) ACC(READ)
/* SERVER-Klassenprofile - Zugriff auf Controller (neue Methode) */
CB.*.*.T5CELL UACC(NONE); PERMIT ID(T5USR) ACC(READ)
/* STARTED-Klassenprofile - (MGCRE) - für STCs, mit Ausnahme von Servants */
T5ACR.* STDATA(USER(T5USR) GROUP(T5GRP)) /* controller*/
T5DMN.* STDATA(USER(T5USR) GROUP(T5GRP)) /* daemon */
T5CTRW.* STDATA(USER(T5USR) GROUP(T5GRP)) /* CTrace WTR*/
WMQX*.* STDATA(USER(T5USR) GROUP(T5GRP)) /* IJP */
/* STARTED-Klassenprofile - (ASCRE - für Servants) */
T5SRV*.* STDATA(USER(T5USR) GROUP(T5GRP)) /* servant */