Lors du déploiement d'une application sur un serveur d'application, la configuration de la sécurité du serveur d'applications s'applique à toutes les applications IBM Cúram Social Program Management déployées sur cette instance de serveur d'applications. Par conséquent, la prudence est impérative lorsque l'architecture de déploiement est envisagée pour plusieurs applications. Cet aspect est important pour décider si une application interne ou externe doit être déployée sur la même instance de serveur d'applications.
Les aspects à étudier sont par exemple :
Les réponses aux questions ci-dessus déterminent la définition des propriétés du serveur d'applications (autrement dit, les propriétés indiquées dans le fichier AppServer.properties), qui elles-mêmes affectent le comportement du module de connexion JAAS Cúram. Ces aspects orientent également l'implémentation de la classe curam.util.security.PublicAccessUser et de l'interface curam.util.security.ExternalAccessSecurity pour les utilisateurs externes.
Les propriétés du serveur d'applications dans le module de connexion JAAS Cúram permettent un contrôle plus précis de l'authentification des types d'utilisateurs. Les utilisateurs externes et internes peuvent être authentifiés différemment, comme c'est le cas des différents types d'utilisateurs externes, dans une situation où les applications internes et externes sont déployées sur le même serveur d'applications. Ces propriétés comprennent les éléments suivants :
Définissez cette propriété dans une liste séparée par des virgules répertoriant les types d'utilisateur pour lesquels le registre d'utilisateurs n'est pas interrogé (par ex., l'implémentation dans la méthode PublicAccessUser.authenticate() est responsable de l'authentification de l'utilisateur externe de ce type. Par exemple, le protocole LDAP peut être configuré en tant que registre d'utilisateurs.
Définissez cette propriété dans une liste séparée par des virgules répertoriant les types d'utilisateur pour lesquels le registre d'utilisateur est interrogé (par ex., l'implémentation dans la méthode PublicAccessUser.authenticate() ne doit pas authentifier complètement l'utilisateur. Le registre d'utilisateurs est responsable de l'authentification de ce type d'utilisateur externe. Par exemple, le protocole LDAP peut être configuré en tant que registre d'utilisateurs, et dans ce cas, le protocole LDAP peut être responsable de l'authentification de ces types d'utilisateurs externes.
Ces propriétés dépendent de l'implémentation de la classe curam.util.security.PublicAccessUser et de l'interface ExternalAccessSecurity.
Tenez compte des exemples d'exigences du projet ci-après :
Les paramètres suivants peuvent prendre en charge l'exemple ci-dessus :
De même que les propriétés définies, l'extension PublicAccessUser extension (et l'implémentation de curam.util.security.ExternalAccessSecurity) doit posséder la logique permettant de traiter les différents types d'utilisateur et leur mode d'authentification.