![[z/OS]](../images/ngzos.gif)
Classes et profils de SAF (System Authorization Facility)
- Utilisation des rôles pour les beans enterprise, les applications Web et les servlets
- Utilisation des profils de classe RACF
- Utilisation de CBIND pour accéder aux serveurs et aux objets de ces derniers
- Utilisation de SERVER pour accéder aux contrôleurs à l'aide des régions du serveur
- Utilisation de STARTED pour associer les ID utilisateur et les groupes aux procédures démarrées
- Utilisation de APPL pour limiter l'accès des utilisateurs authentifiés aux applications du serveur
- utilisation de FACILITY pour autoriser l'activation de l'option Synchronisation autorisée avec l'unité d'exécution du système et autorisation de mappage des identités réparties aux identités SAF à l'aide des modules de connexion de mappage JAAS.
- Utilisation de SURROGAT pour autoriser en option l'activation de l'option Synchronisation autorisée avec l'unité d'exécution du système
- Création de plusieurs configurations de sécurité dans un sysplex
- Génération d'ID utilisateur et de profils pour un nouveau serveur
- Utilisation de profils minimalistes
Rôles pour les applications Enterprise JavaBeans et Web et les servlets
Les rôles sont associés aux applications Java™ EE (Java Platform, Enterprise Edition). Les modules des applications font référence aux rôles à l'aide de la référence de rôle qui pointe vers le rôle des applications. L'accès aux applications Web, aux servlets ou aux méthodes EJB dépend de l'utilisateur ou de l'appelant. Les rôles sont associés à des applications Web, des servlets ou des beans enterprise lors de l'assemblage. Le rôle requis pour utiliser un servlet ou une méthode EJB est nommé dans les descripteurs de déploiement de l'application.
L'affectation des rôles aux utilisateurs et aux groupes est déterminée à l'aide de profils RACF dans la classe EJBROLE (si le mécanisme d'autorisation SAF est sélectionné). Si un utilisateur se trouve dans la liste des accès d'un profil EJBROLE, il possède ce rôle. Si un groupe se trouve dans la liste des accès d'un profil EJBROLE, les utilisateurs de ce groupe possèdent ce rôle. Si le profil EJBROLE dispose d'un accès en LECTURE, tous les utilisateurs possèdent ce rôle.
S'il est spécifié, le préfixe de profil SAF (précédemment appelé domaine de sécurité z/OS) devient un préfixe utilisé par WebSphere Application Server for z/OS et RACF lors de la vérification des profils EJBROLE. Cela fournit une granularité des rôles au niveau du préfixe de profil SAF WebSphere.
Test Cell has Security Domain=TEST Production Cell has Security Domain=PROD
Par exemple, une application utilisant le rôle Clerk est déployée sur les deux cellules. Sur la cellule de test, les utilisateurs doivent disposer d'un accès en LECTURE au profil EJBROLE TEST.Clerk. Sur la cellule de production, les utilisateurs doivent disposer d'un accès en LECTURE au profil EJBROLE PROD.Clerk.
Les profils suivants sont définis dans la classe EJBROLE de RACF pour l'autorisation administrative : administrateur, configurateur, moniteur, opérateur, déployeur, administrateur du gestionnaire de sécurité et auditeur.
Pour plus d'informations sur la manière dont SAF peut être utilisé pour l'autorisation des rôles Java EE, voir Mécanisme d'autorisation SAF (System Authorization Facility) fondé sur les rôles.
Utilisation des profils RACF
Il est important de comprendre les mécanismes de sécurité utilisés pour protéger les ressources du serveur à l'aide des classes CBIND, SERVER et STARTED de la fonctionnalité RACF (ou d'un autre logiciel de sécurité équivalent). Vous devez également comprendre les techniques de gestion de l'environnement de sécurité.
- CBIND : Cette classe permet d'accéder aux serveurs et aux objets des serveurs
- SERVER : Cette classe permet d'accéder aux contrôleurs par régions servantes
- STARTED : Cette classe permet d'associer des ID utilisateur et des groupes à des procédures démarrées
- APPL: Cette classe permet de limiter l'accès des utilisateurs authentifiés aux applications exécutées sur le serveur
- FACILITY : cette classe permet de :
- associer des ID utilisateur et des groupes à l'option Synchronisation autorisée avec l'unité d'exécution du système
- contrôler les configurations de sécurité qui sont autorisées à mapper des identités réparties aux identités SAF à l'aide des modules de connexion de mappage JAAS
- SURROGAT : cette classe facultative permet d'associer des ID utilisateur et des groupes à l'option Synchronisation autorisée avec l'unité d'exécution du système d'exploitation
Des informations de base sur les profils RACF utilisés par WebSphere Application Server for z/OS sont fournies dans l'autorisation SAF. Cette section fournit des détails supplémentaires sur les profils de classe CBIND, SERVER, FACILITY, SURROGAT et STARTED.
ID utilisateur et ID de groupe
CR = Région du contrôleur SR = Région serviteur CFG = Configuration (groupe) server = nom abrégé du serveur cluster = nom (abrégé) du serveur générique (aussi appelé nom de transition du cluster)
<ID_utilisateur_CR> <ID_groupe_CR>, <ID_groupe_CFG> <ID_utilisateur_SR> <ID_groupe_SR>, <ID_groupe_CFG> <ID_utilisateur_demn> <ID_groupe_demn>, <ID_groupe_CFG> <ID_admin> <ID_groupe_CFG> <ID_utilisateur_client> <ID_groupe_client> <ID_utilisateur_ctracewtr> <ID_groupe_ctracewtr>
Les divers profils utilisés pour protéger les ressources WebSphere Application Server for z/OS, ainsi que les autorisations et les niveaux d'accès, figurent ci-dessous.
Utilisation des profils de classe CBIND
Profils de classe CBIND profiles - accès aux serveurs génériques CB.BIND.<cluster> UACC(READ); PERMIT <groupe_CR> ACC(CONTROL) Profils de classe CBIND - accès aux objets contenus sur les serveurs CB.<cluster> UACC(READ) PERMIT <groupe_CR> ACC(CONTROL)
Profils de classe CBIND - accès aux serveurs génériques CB.BIND.<préfixe_profil>.<cluster> UACC(READ) Profils de classe CBIND - accès aux objets contenus sur les serveurs CB.<préfixe_profil>.<cluster> UACC(READ)
CB.CBIND.<cluster> CB.CBIND.<préfixe_profil_SAF>.<cluster>
CB.<cluster> CB.<préfixe_profil_SAF>.<cluster>
Utilisation des profils de classe SERVER
SERVER SERVER – accès aux contrôleurs à l'aide d'environnements d'applications statiques CB.<serveur>.<cluster> UACC(NONE) PERMIT <ID_utilisateur_SR> ACC(READ) Profils de classe SERVER – accès aux contrôleurs à l'aide d'environnements d'applications statiques CB.<serveur>.<cluster>.<cell> UACC(NONE) PERMIT <ID_utilisateur_SR> ACC(READ)
RDEFINE CB.&<serveur<cluster> UACC(NONE); PERMIT &<ID_utilisateur_SR> ACCESS(READ)Dans cet exemple, serveur = nom du serveur, cluster = nom du cluster ou nom de transition du cluster si aucun cluster n'a encore été créé et SR correspond à l'ID utilisateur MVS de la région du serveur.
CB.& <serveur>.&<cluster>.<cellule> UACC(NONE); PERMIT &<ID_utilisateur_SR> ACC(READ)Dans cet exemple, serveur = nom du serveur, cluster = nom du cluster ou nom de transition du cluster si aucun cluster n'a encore été créé, cellule = nom abrégé de la cellule et SR correspond à l'ID utilisateur MVS de la région du serveur.
Les profils de classe SERVER contrôlent si un servant peut appeler des routines autorisées dans le contrôleur associé.
CB.<serveur>.<cluster> CB.<préfixe_profil_SAF>.<serveur>.<cluster>
CB.<serveur>.<cluster>.<cellule> 22
Utilisation des profils de classe STARTED
Profils de classe STARTED - (MGCRE) - pour les régions de contrôle, les démons et les agents de noeud <<proc_CR>.<nom_travail_CR> STDATA(USER(ID_utilisateur_CR) GROUP(ID_groupe_CFG)) <proc_demn>.* STDATA(USER(ID_utilisateur_demn) GROUP(ID_groupe_CFG)) Profils de classe STARTED - (ASCRE) - pour les régions et les auxiliaires serviteurs <nom_travail_SR>.<nom_travail_SR> STDATA(USER(ID_utilisateur_SR) GROUP(ID_groupe_CFG)) Profils de classe STARTED pour IJP - (MGCRE) <nom_MQ_s>.* STDATA(USER(ID_utilisateur_IJP) GROUP(ID_groupe_CFG)) - Ces IJP n'existent pas dans WAS 6.1
- Démon
- Un gestionnaire de déploiement (contrôleur et servant)
- Un agent de noeud
- Serveurs d'applications (contrôleur, serviteur et auxiliaire)
- Agents d'administration (contrôleur et serviteur)
- Gestionnaires de travaux (contrôleur et serviteur)
Utilisation des profils de classe APPL
Un profil de classe APPL contrôle si un utilisateur authentifié peut utiliser une application dans la cellule. Si un préfixe de profil SAF est spécifié, le nom du profil de classe APPL correspond au nom du préfixe de profil SAF. Si aucun préfixe de profil SAF n'est spécifié, le nom du profil de classe APPL est CBS390. Reportez-vous à Remarque SAF (System Authorization Facility) pour le système d'exploitation et les niveaux d'application.
Le profil de classe APPL n'est effectif que lorsque la classe APPL est active dans RACF et que l'option d'utilisation du profil APPL est activée dans WebSphere. L'option WebSphere peut être activée ou désactivée depuis la console d'administration en accédant au panneau des options d'autorisation SAF et en cochant la case Utiliser le profil APPL pour restreindre l'accès au serveur. Pour plus d'informations sur ce paramètre, voir Autorisation SAF (System Authorization Facility) z/OS.
Création de plusieurs configurations de sécurité dans une cellule
Il se peut que vous ayez besoin de jeux de profils distincts dans une cellule donnée pour séparer les domaines de sécurité logiques de WebSphere dans votre entreprise (par exemple, utilisateurs de test et utilisateurs de production).
Lors de la personnalisation, vous pouvez définir un préfixe de profil SAF à l'aide de l'outil de gestion des profils z/OS, de la commande zpmt ou du panneau Options d'autorisation SAF de la console d'administration.
Utilisez la console d'administration de WebSphere Application Server for z/OS pour définir un préfixe de profil SAF sous ; la propriété suivante est créée dans le fichier security.xml.
xmi:id="Property_47" name="com.ibm.security.SAF.profilePrefix" value="<préfixe_profile>" required="false"/>
Classe | Sans préfixe de profil SAF | Avec un préfixe de profil SAF |
---|---|---|
CBIND |
|
|
EJBROLE | ApplicationRoleName | <préfixe_profil>.nom_rôle_application |
APPL | CBS390 | <préfixe_profil> |
Génération d'ID utilisateur et de profils pour un nouveau serveur
Si vous souhaitez utiliser des ID utilisateur uniques pour chaque nouveau serveur d'applications, vous devez définir ces utilisateurs, groupes et profils dans la base de données RACF.
- Si vous souhaitez utiliser des ID utilisateurs uniques pour les nouveaux serveurs, définissez trois nouveaux utilisateurs et connectez-les aux groupes suivants :
- <nouvel_ID_utilisateur_CR> <ID_groupe_CR>, <ID_groupe_CFG>
- <,nouvel_ID_utilisateur_SR> <<ID_groupe_SR>, <ID_groupe_CFG>
- <nouvel_ID_utlisateur_ADJUNCT> <<ID_groupe_ADJUNCT>, <ID_groupe_CFG>
- <nouvel_ID_utilisateur_client> <ID_groupe_client>
- Profils de classe CBIND pour le nouveau cluster (nom abrégé du serveur générique) :
- CB.BIND.<nouveau_cluster>
- CB.<nouveau_cluster>
- Profils de classe SERVER pour le nouveau serveur et cluster :
- CB.<nouveau_serveur>.<nouveau_cluster>
- CB.<nouveau_serveur>.<nouveau_cluster>.<cell>
- Profils de classe STARTED pour le contrôleur du nouveau serveur et les régions du serveur :
- <proc_CR>.<nouveau_nom_travail_CR> STDATA(USER(nouvel_ID_utiisateur_CR) GROUP(ID_groupe_CFG))
- <nouveau_nom_travail_SR>.* STDATA(USER(nouvel_ID_utilisateur_SR) GROUP(ID_groupe_CFG))
- <nouveau_nom_travail_ADJUNCT>.* STDATA(USER(nouvel_ID_utilisateur_ADJUNCT) GROUP(ID_groupe_CFG))
Utilisation des profils de classe FACILITY et SURROGAT (option Synchronisation autorisée avec l'unité d'exécution du système d'exploitation et de l'option d'identité d'unité d'exécution RunAs du gestionnaire de connexion)
- Profil de classe FACILTY BBO.SYNC.<nom abrégé de cellule>.<nom abrégé de cluster>
- Si le contrôleur WebSphere n'a pas accès au profil, l'option Synchronisation autorisée avec l'unité d'exécution du système est désactivée.
- Si le contrôleur WebSphere a un accès de type READ au profil. L'option Synchronisation autorisée avec l'unité d'exécution du système peut être utilisée, mais elle est limitée aux environnements de sécurité qui représentent certains utilisateurs. Le profil de classe SURROGATE a besoin d'être défini.
- Le contrôleur WebSphere a un accès de type CONTROL au profil. L'option Synchronisation autorisée avec l'unité d'exécution du système peut être utilisée pour créer des environnements de sécurité destinés à représenter un utilisateur quelconque. Le profil de classe SURROGATE n'est pas sélectionné.
- Profil de classe SURROGAT BBO.SYNC.<ID utilisateur>
- Si seul le contrôleur WebSphere dispose d'un accès en lecture (READ) au profil de classe FACILITY de BBO.SYNC.<nom abrégé de cellule>.<nom abrégé de cluster> qui autorise l'option Synchronisation autorisée avec l'unité d'exécution du système, la sélection du profil de classe SURROGAT est utilisée pour vérifier que le servant WebSphere est autorisé à établir un environnement de sécurité pour l'utilisateur cible.
- Les sélections de profil de classe sont cohérentes dans les différents produits dotés de fonctions similaires.
RDEF FACILITY BBO.SYNC.<nom_cellule_abrégé>.<nom_cluster_abrégé> UACC(NONE) PE BBO.SYNC.<nom abrégé de cellule>.<nom abrégé de cluster> CLASS(FACILITY)ID(<ID utilisateur CR>) ACC(READ ou CONTROL) RDEF SURROGAT BBO.SYNC.<ID utilisateur Run-As> UACC(NONE) PE BBO.SYNC.<ID_utilisateur_Run-As> CLASS(SURROGAT) ID(<ID_utilisateur_SR>) ACC(READ)
RDEF FACILITY BBO.SYNC.SY1.BBOC001 UACC(NONE) PE BBO.SYNC.SY1.BBOC001 CLASS(FACILITY) ID(CBSYMCR) ACC(READ) RDEF SURROGAT BBO.SYNC.J2EEID UACC(NONE) PE BBO.SYNC.J2EEID CLASS(SURROGAT) ID(CBSYMSR) ACC(READ)
Utilisation des profils de classe FACILITY (activation des applications accréditées)
RDEF FACILITY BBO.TRUSTEDAPPS.<nom abrégé de cellule>.<nom abrégé de cluster> UACC NONE PE BBO.TRUSTEDAPPS.<nom abrégé de cellule>.<nom abrégé de cluster> CLASS(FACILITY) ID(ID utilisateur CR) ACC(READ)L'exemple général ci-après peut être utilisé pour tous les serveurs :
RDEFINE FACILITY BBO.TRUSTEDAPPS.mycell01.**UACC(NONE) PERMIT BBO.TRUSTEDAPPS.mycell01.** CLASS(FACILITY) ID(MYCBGROUP) ACCESS(READ) SETROPTS RACLIST(FACILITY) REFRESHL'exemple suivant concerne un serveur spécifique, c'est-à-dire un système dont le nom de cellule abrégé est SY1, dont le nom de cluster abrégé est BBOC001 (nom abrégé du serveur générique) et dont l'ID utilisateur de la région de contrôleur est CBSYMCR :
RDEF FACILITY BBO.TRUSTEDAPPS.SY1.BBOC001 UACC NONE PE BBO.TRUSTEDAPPS.SY1.BBOC001 CLASS(FACILITY) ID(CBSYMCR) ACC(READ)
Utilisation de profils minimalistes
Pour réduire le nombre d'utilisateurs, de groupes et de profils dans l'ensemble de données RACF, vous pouvez utiliser un ID utilisateur, un ID de groupe et des profils très génériques capables de couvrir plusieurs serveurs installés dans la même cellule. Cette technique peut également être utilisée avec les configurations de fournisseur Integral Java Message Service et WebSphere Application Server, Network Deployment.
- Définitions de profil à créer
- Certificats numériques à prendre en compte pour les communications SSL (Secure Sockets Layer) entre processus