Segurança Blueprint e Aplicativos OSGi
É possível configurar a segurança de bean para que os métodos do bean possam ser acessados apenas pelos usuários que são designados a uma função especificada.
Você configura a segurança definindo um ou mais elementos de restrição de acessos>, dentro do elemento < bean> para o bean cuja segurança você deseja configurar, no arquivo XML Blueprint do seu aplicativo OSGi. Se você não definir um elemento < access-constraint>, o bean não está protegido; isto significa que todos os métodos do bean podem ser acessados por qualquer usuário.
Para que a configuração de segurança do bean seja efetivada, a segurança do aplicativo deve ser ativada no WebSphere® Application Server.
A segurança de bean pode ser configurada no nível de bean e no nível de método. Se a segurança for configurada no nível de bean e no nível de método, a configuração no nível de método terá prioridade.
<blueprint
xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:sec="http://www.ibm.com/appserver/schemas/blueprint/security/v1.0.0">Configurando a Segurança de Nível de Bean
Para configurar a segurança no nível do bean, inclua um atributo role na definição de elemento de < access-constraint>. Os métodos do bean podem ser acessados apenas pelos usuários que são designados à uma função especificada.
<bean
id="secureBean1"
class="com.ibm.ws.eba.wab.componenttest.blueprint.secure.BlueprintSecureServiceImpl">
<sec:access-constraint role="ROLE1" />
</bean>Configurando a Segurança de Nível de Método
Para configurar a segurança no nível de método, inclua, além do atributo de função, um atributo de método. O método especificado pode ser acessado apenas pelos usuários que são designados à uma função especificada.
<bean
id="secureBean1"
class="com.ibm.ws.eba.wab.componenttest.blueprint.secure.BlueprintSecureServiceImpl">
<sec:access-constraint method="getPrice" role="ROLE1" />
</bean><bean
id="secureBean1"
class="com.ibm.ws.eba.wab.componenttest.blueprint.secure.BlueprintSecureServiceImpl">
<sec:access-constraint method="getPrice" role="ROLE1" />
<sec:access-constraint method="printReport" role="ROLE2" />
<sec:access-constraint role="ROLE3" />
</bean>Designando Funções
Para atribuir uma função aos usuários ou a grupos, use o painel Função de segurança para usuário ou mapeamento de grupo no console administrativo do WebSphere Application Server .