IBM HTTP Server pour WebSphere Application Server, Version 6.1
             Systèmes d'exploitation : z/OS

             Personnalisation de la table des matières et des résultats de la recherche
Cette rubrique concerne uniquement le système d'exploitation z/OS

Directives SAF

Ces paramètres de configuration contrôlent la fonctionnalité SAF (System Authorization Facility) pour IBM HTTP Server. Utilisez les directives SAF pour accorder à IBM HTTP Server l'authentification d'utilisateur.

Directive AuthSAF

La directive AuthSAF détermine si l'authentification de base est effectuée à l'aide du SAF du système d'exploitation.

Syntaxe AuthSaf on | off
Valeur par défaut off
Contexte directory, .htaccess
Module mod_auth_saf
Valeurs on ou off

Définissez la directive AuthSAF sur on pour utiliser n'importe quelle fonction SAF : SAFRunAs, SAFRequire ou l'authentification SAF. Lorsque vous définissez AuthSAF on, vous devez également le faire pour AuthType Basic.

Vous devez définir une directive Require directive pour valid-user ou pour une liste d'utilisateurs.

Exemple : valid-user
Require valid-user 
Avec valid-user, le serveur ne permet aucun accès à moins que l'ID et le mot de passe soient associés à un utilisateur enregistré dans SAF et présentent un segment OMVS.
Exemple : liste des utilisateurs
Require user SYSADM USER152 BABAR 

Avec une liste d'utilisateurs, le serveur n'autorise l'accès que si l'ID est authentifié et est associé à un utilisateur de la liste. Vous devez coder les noms utilisateur en lettres majuscules dans le fichier httpd.conf, quelle que soit la manière dont l'utilisateur entre les noms dans le navigateur.

Vous pouvez, si vous le souhaitez, ajouter une directive Require pour un groupe.

Exemple : liste de groupes
Require group SYS1 WASUSER 

Dans cet exemple, les groupes SYS1 et WASUSER doivent être définis dans SAF et doivent présenter des segments OMVS. L'accès n'est autorisé que lorsque l'ID et le mot de passe correspondent à un utilisateur enregistré dans SAF et à l'un des groupes de la liste.

Directive AuthSAFAuthoritative

La directive AuthSAFAuthoritative indique si l'autorisation et l'authentification sont transmises à des modules de niveau inférieur.

Syntaxe AuthSAFAuthoritative on | off
Valeur par défaut on
Contexte directory, .htaccess
Module mod_auth_saf
Valeurs on ou off

Si vous définissez la directive AuthSAFAuthoritative sur off, l'authentification et l'autorisation sont toutes les deux transmises à des modules de niveau inférieur (selon ce qui est défini dans les fichiers modules.c), si aucun ID utilisateur ou aucune règle ne correspond à l'ID utilisateur fourni. S'il est spécifié un ID utilisateur ou une règle, le mot de passe et les vérifications d'accès habituels sont appliqués et un échec apparaît dans une réponse d'authentification requise.

Si un ID utilisateur apparaît dans la base de données de plusieurs modules, ou si une directive Require valide s'applique à plusieurs modules, le premier module vérifie les données d'identification et aucun accès n'est transmis, quel que soit le paramètre défini pour AuthSAFAuthoritative.

Par défaut, le contrôle n'est pas transmis et un ID utilisateur inconnu aboutit à une réponse Authentification requise. Si vous n'en définissez aucune, le système reste sécurisé et le comportement respecte obligatoirement le format NCSA.

Directive AuthSAFExpiration

La directive AuthSAFExpiration définit la valeur affichée dans l'invite du navigateur.

Syntaxe AuthSAFExpiration phrase_courte
Valeur par défaut off
Contexte directory, .htaccess
Module mod_auth_saf
Valeurs off ou phrase_courte

Si vous définissez une phrase pour la directive AuthSAFExpiration, IBM HTTP Server peut inviter l'utilisateur à mettre à jour son mot de passe SAF à son expiration. Lorsque l'utilisateur entre un ID valide et un mot de passe SAF mais que ce dernier a expiré, le serveur lui renvoie une réponse indiquant que l'authentification est requise avec une invite spéciale permettant à l'utilisateur de mettre à jour le mot de passe expiré. L'invite est constituée d'un domaine (la valeur de la directive AuthName), suivi de la valeur phrase_courte de la directive AuthSAFExpiration.

Par exemple, considérons la configuration suivante :
<Location /js>
AuthType Basic
AuthName "zwasa051_SAF"
AuthSAF on
Require valid-user
Require group SYS1 WASUSER
AuthSAFExpiration "EXPIRED! oldpw/newpw/newpw"
</Location>

Si l'utilisateur essaie d'accéder à un fichier dont l'URL commence par /js, le serveur invite à entrer un ID et un mot de passe SAF. Le navigateur affiche une invite contenant le domaine. Le domaine correspond à la valeur contenue dans la directive AuthName, c'est-à-dire zwasa051_SAF dans cet exemple.

Lorsque l'utilisateur entre un ID et un mot de passe valide, si le mot de passe a expiré, le serveur relance l'invite, mais avec la valeur zwasa051_SAF EXPIRED! oldpw/newpw/newpw. Quelle que soit l'invite, l'utilisateur doit entrer à nouveau le mot de passe expiré, suivi d'une barre oblique, un nouveau mot de passe, une autre barre oblique et encore le nouveau mot de passe.

Si le mot de passe est mis à jour correctement, le serveur envoie une autre réponse indiquant authentification requise avec une invite spéciale différente. Cette dernière interaction est nécessaire pour forcer le navigateur à comprendre quel mot de passe il doit mettre en mémoire cache. L'invite cette fois est constituée du domaine suivi de l'invite Entrez à nouveau le mot de passe. Dans cet exemple, ce serait zwasa051_SAF Ré-entrer nouveau mot de passe.

Directive AuthSAFReEnter

La directive AuthSAFReEnter définit la valeur ajoutée au domaine après la modification d'un mot de passe.

Syntaxe AuthSAFReEnter phrase_courte
Valeur par défaut Ré-entrer nouveau mot de passe
Contexte directory, .htaccess
Module mod_auth_saf
Valeurs off ou phrase_courte

La définition explicite d'une phrase autre que "Ré-entrer nouveau mot de passe" pour la directive AuthSAFReEnter permet à l'administrateur d'afficher un autre message après la mise à jour d'un mot de passe expiré. Si AuthSAFExpiration a été définie sur OFF, cette directive n'a pas d'effet.

Par exemple, considérons la configuration suivante :
<Location /js>
 AuthType Basic
 AuthName "zwasa051_SAF"
 AuthSAF on
 Require user SYSADM USER152 BABAR
 AuthSAFExpiration "EXPIRED! oldpw/newpw/newpw"
 AuthSAFReEnter "Enter new password one more time"</Location>

Dans cet exemple, une fois que le mot de passe expiré a été mis à jour, le serveur envoie une autre réponse indiquant que l'authentification est requise avec la valeur issue de la directive AuthSAFReEnter. Cette dernière interaction est nécessaire pour forcer le navigateur à comprendre quel mot de passe il doit mettre en mémoire cache. L'invite cette fois est constituée du domaine suivi d'une phrase spéciale. Dans cet exemple, ce serait zwasa051_SAF Ré-entrer nouveau mot de passe.

Directive SAFRequire

La directive SAFRequire détermine si le module mod_auth_saf exécute la directive Require.

Syntaxe SAFRequire on | off
Valeur par défaut off
Contexte directory, .htaccess
Module mod_auth_saf
Valeurs on ou off

Si vous définissez la directive SAFRequire sur on, le module mod_auth_saf traite les noms d'utilisateur et de groupe dans la directive Require. Si vous utilisez des groupes définis dans SAF, vous devez définir la directive sur on, mais si vous utilisez des groupes définis ailleurs, vous devez définir la directive sur off ou ignorer la directive.

Par exemple, le module mod_auth_saf peut exécuter la directive Require si vous avez codé la directive AuthGroupFile au lieu de coder la directive SAFRequire sur on. Ne codez pas les deux.

Si vous définissez SAFRequire sur on, répertoriez tous les noms d'utilisateur en lettres capitales, c'est ainsi que SAF gère les noms d'utilisateur. Dans le navigateur, L'utilisateur peut entrer le nom d'utilisateur et le mot de passe sans se soucier de la casse. Si vous n'utilisez pas le module mod_auth_saf pour exécuter la directive Require, vous devrez peut-être coder chaque nom d'utilisateur dans toutes les possibilités de lettres majuscules ou minuscules que l'utilisateur pourrait entrer dans le navigateur.

Directive SAFRunAs

La directive SAFRunAs définit l'ID utilisateur SAF sous lequel une demande sera servie.

Syntaxe valeur SAFRunAs
Valeur par défaut off
Contexte directory, .htaccess
Module mod_auth_saf
Valeurs off | %%CLIENT%% | %%CERTIF%% | %%CERTIF_REQ%% | <ID substitut>

Off : le serveur exécute la demande sous l'ID utilisateur du serveur Web.

%%CLIENT%% : le serveur exécute la demande sous l'ID proposé dans l'en-tête de la demande d'autorisation. Généralement, l'utilisateur entre l'ID et le mot de passe dans une fenêtre en incrustation du navigateur et le navigateur crée l'en-tête.

%%CERTIF%% : le serveur exécute la demande sous l'ID associé au certificat de client SSL dans SAF. S'il n'existe aucun certificat SSL ou si le certificat SSL n'a pas encore été associé à un ID dans SAF, le traitement se poursuit comme si %%CLIENT%% avait été codé.

%%CERTIF_REQ%% : le serveur exécute la demande sous l'ID associé au certificat de client SSL dans SAF. S'il n'existe aucun certificat SSL ou si le certificat SSL n'a pas encore été associé à un ID dans SAF, le serveur n'autorisera pas l'accès.

<ID substitut> : le serveur exécute la demande sous l'ID associé à l'ID de substitut SAF spécifié.

Pour %%CERTIF%%, %%CERTIF_REQ%%, et pour toutes les formes d'authentification ou d'autorisation SAF, vous devez coder une directive Require et définir la directive AuthSAF sur on.

IBM HTTP Server peut communiquer avec des applications FastCGI en utilisant des sockets TCP ou des sockets UNIX. Toutefois, si vous utilisez SAFRunAs pour des demandes FastCGI, vous devez utiliser des sockets TCP pour pouvoir communiquer avec l'application. Les sockets UNIX créés pour des applications FastCGI sont accessibles uniquement par l'ID utilisateur du serveur Web. L'ID utilisateur substitut contrôlé par la directive SAFRunAs n'a pas les droits suffisants pour accéder aux sockets UNIX, d'où l'échec des demandes.

Pour configurer FastCGI de façon à utiliser des sockets TCP, définissez l'application FastCGI sur le module mod_fastcgi à l'aide de la directive FastCGIServer avec l'option -port ou à l'aide de la directive FastCGIExternalServer. Les serveurs FastCGI dynamiques que vous ne configurez pas avec les directives FastCGIServer ou FastCGIExternalServer ne peuvent pas être utilisés avec FRunAS.

Si vous n'activez pas SAFRunAs pour les demandes FastCGI, les sockets TCP ne sont pas requis.

Exemple

Si vous envisagez d'utiliser l'authentification de base SAF, prévoyez d'utiliser la définition de conteneur suivante.
<Location /x1>
AuthType Basic  
AuthName x1  
Require valid-user  
SAFRequire On  
AuthSAF on
</Location>
Pour limiter l'accès à une liste circonscrite d'utilisateurs, envisagez l'utilisation de la définition de conteneur suivante.
Remarque : La directive AuthAuthoritative doit être utilisée avec la directive Require user et la liste des noms ne doit comporter que des majuscules.
<Location /x2>
	AuthType Basic  
	AuthName x2  
	Require user ALICE123 BOB456 CAROL789 
	SAFRequire On  
	AuthSAF on
	<IfModule mod_auth.c>
# Si mod_auth est chargé, vérifiez qu'il permet d'authentifier 
# d'autres modules s'il est exécuté en premier.
	AuthAthoritative off
	</IfModule>
</Location>
Pour limiter l'accès à un groupe défini dans SAF, envisagez l'utilisation de la définition de conteneur suivante.
<Location /x3>
AuthType Basic  
AuthName x3  
Require group WASUSER  
SAFRequire on  
AuthSAF on
</Location>
Si vous envisagez d'utiliser l'authentification SAF avec la directive AuthUserFile ou AuthGroupFile, prévoyez d'utiliser la définition de conteneur suivante.
Remarque : Si vous indiquez 'on' comme valeur de la directive SAFRequire, vous ne pouvez pas utiliser les directives AuthUserFile ou AuthGroupFile. La liste des utilisateurs doit être définie par la directive Require user ou dans le groupe SAF. Si la valeur de la directive SAFRequire est 'off', vous pouvez utiliser une liste d'utilisateurs ou un groupe défini par la directive AuthUserFile ou AuthGroupFile, sans oublier que les occurrences de nom sont sensibles à la casse pour IBM HTTP Server.
<Location /x4>
	AuthType Basic  
	AuthName x4  
	Require group wasuser  
# Le fichier x4.grp contient cette ligne : wasuser: alice123 ALICE123 	guest3 GUEST3  	AuthGroupFile /usr/lpp/config/x4.grp
	AuthBasicProvider saf
</Location>



Tâches associées
Authentification avec SAF sur IBM HTTP Server (systèmes z/OS)
Référence associée
Directives FastCGI
Rubrique de référence    

Conditions d'utilisation | Commentaires

Dernière mise à jour : Feb 22, 2009 5:16:05 AM CST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.ihs.doc/info/ihs/ihs/rihs_safdirs.html