Révocation d'utilisateurs dans un cache pour JAAS
Dans WebSphere Application Server version 5.0.2 et ultérieures, la révocation d'un utilisateur dans le cache de sécurité au moyen d'une interface MBean est prise en charge.
Pourquoi et quand exécuter cette tâche
Lorsqu'un utilisateur est retiré du cache d'authentification, il peut encore à tout moment se connecter à WebSphere Application Server. La suppression du cache ne retire l'utilisateur que du cache d'exécution. L'utilisateur n'est ni supprimé du registre, ni verrouillé.
Procédure
Le JACL (Java™ Command Language) suivant révoque un utilisateur quand le domaine et l'ID utilisateur sont donnés et effectue des cycles dans toutes les instances MBean d'administration de sécurité qui sont renvoyées pour la totalité de la cellule quand il est exécuté à partir de la commande wsadmin du gestionnaire de déploiement. Elle purge également l'utilisateur dans le cache au cours de chaque processus.
proc clearAuthCache {realm userid} { global AdminControl AdminConfig if {[catch {$AdminControl queryNames WebSphere:type=SecurityAdmin,*}
result]} { puts stdout "\$AdminControl queryNames WebSphere:type=SecurityAdmin,* caught an exception $result\n"
return } else { if {$result != {}} { foreach secBean $result { if {$secBean != {} || $secBean != "null"}
{ if {[catch {$AdminControl invoke $secBean clearAuthCache} result]} {
puts stdout "\$AdminControl invoke $secBean clearAuthCache caught
an exception $result\n" return } else {
puts stdout "\ncache cleared for process $secBean\n" } } else {
puts stdout "unable to get securityAdmin Mbean, user $userid not revoked" }}}
else { puts stdout "Security Mbean was not found\n" return } }