Na lição anterior, você designou autorização baseada em usuário individual com os principais do usuário na política de autorização do Java Authentication and Authorization Service. No entanto, quando você tiver centenas ou milhares de usuários, use a autorização baseado em grupo, que autoriza o acesso baseado em grupos em vez de em usuários individuais.
Infelizmente, o objeto Subject que é autenticado no WebSphere Application Server contém apenas um principal de usuário. Este objeto não contém um principal de grupo. É possível incluir um módulo de login customizado para preencher o principal do grupo no objeto Subject.
Para este tutorial, o módulo de login customizado é denominado com.ibm.websphere.samples.objectgrid.security.lm.WASAddGroupLoginModule. O módulo está no arquivo groupLM.jar. Coloque o arquivo JAR no diretório WAS-INSTALL/lib/ext.
grant codebase "http://www.ibm.com/com/ibm/ws/objectgrid/security/PrivilegedAction"
principal com.ibm.websphere.sample.xs.security.WSGroupPrincipal
"defaultWIMFileBasedRealm/cn=operatorGroup,o=defaultWIMFileBasedRealm" {
permission com.ibm.websphere.objectgrid.security.MapPermission "Grid.Map1", "read";
};
grant codebase "http://www.ibm.com/com/ibm/ws/objectgrid/security/PrivilegedAction"
principal com.ibm.websphere.sample.xs.security.WSGroupPrincipal
"defaultWIMFileBasedRealm/cn=adminGroup,o=defaultWIMFileBasedRealm" {
permission com.ibm.websphere.objectgrid.security.MapPermission "Grid.Map1", "all";
};
O nome do grupo é o WSGroupPrincipal, que representa o grupo. Use as seguintes etapas para configurar o módulo de login com.ibm.websphere.samples.objectgrid.security.lm.WASAddGroupLoginModule fornecido:
No console administrativo, execute as seguintes etapas para os servidores xs1 e xs2 no xsCluster. Se uma topologia de implementação diferente for usada, execute as etapas a seguir para os servidores de aplicativos que hospedam os servidores de contêiner.
É possível testar se e autorização de grupo foi configurada pelo módulo de login com o aplicativo de amostra.
Você configurou grupos para simplificar a designação de permissão para os usuários de seu aplicativo.