Configuração de Login para o Java Authentication and Authorization Service

O Java™ Authentication and Authorization Service (JAAS) é um novo recurso no WebSphere Application Server. O JAAS é uma interface de programação de aplicativos (API) estratégica do WebSphere Application Server para autenticação que substitui a API de login programático do Object Request Broker Architecture (CORBA).

WebSphere Application Server fornece algumas extensões para JAAS:

  • com.ibm.websphere.security.auth.WSSubject: A API com.ibm.websphere.security.auth.WSSubject estende o modelo de autorização JAAS para os recursos J2EE (Java 2 Platform, Enterprise Edition). É possível configurar o login do JAAS no console administrativo ou usar as funções de script e armazenar esta configuração na configuração na API de configuração do WebSphere Application Server. Entretanto, o WebSphere Application Server ainda suporta o formato de configuração de login JAAS padrão, um arquivo de texto simples, que é fornecido pela implementação padrão JAAS. Se foram definidas configurações de login duplicadas em API de configuração de WebSphere Application Server e no formato de texto simples, aquelas na API de configuração de WebSphere Application Server terão precedência. As vantagens para definir a configuração de login na API de configuração do WebSphere incluem:
    • Suporte à interface do usuário na definição da configuração de login JAAS
    • Gerenciamento central da configuração de login JAAS
    • Distribuição da configuração de login JAAS em uma instalação do produto WebSphere Application Server, Network Deployment.

    Devido a um equívoco de design do JAAS 1.0, o método javax.security.auth.Subject.getSubject não retorna o Objeto associado à execução do encadeamento no bloco de código java.security.AccessController.doPrivileged. Essa ação pode apresentar um comportamento inconsistente problemático. A extensão com.ibm.websphere.security.auth.WSSubject fornece uma solução alternativa para associar o Objeto ao encadeamento em execução. A extensão com.ibm.websphere.security.auth.WSSubject expande o modelo de autorização do JAAS para os recursos de J2EE.

    Por que o WebSphere Application Server possui sua própria classe de assunto: É possível recuperar os assuntos em um bloco Subject.doAs com a chamada Subject.getSubject. No entanto, esse procedimento não funciona se uma chamada AccessController.doPrivileged estiver contida no bloco Subject.doAs. No exemplo a seguir, s1 é igual a s, mas s2 é null:
    * AccessController.doPrivileged() não apenas trunca a propagação do Assunto, 
    * mas também reduz as permissões. Ele não inclui a política de segurança JAAS 
    * definida para os proprietários no Subject.
    Subject.doAs(s, new PrivilegedAction() {
      public Object run() {
        System.out.println("Within Subject.doAsPrivileged()");
        Subject s1 = Subject.getSubject(AccessController.getContext());
        AccessController.doPrivileged(new PrivilegedAction() {
          public Object run() {
          Subject s2 = Subject.getSubject(AccessController.getContext());
          return null;
        }
      });
      return null;
    }
    });
  • A Configuração de Login do JAAS pode ser definida no console administrativo ou usando as funções de script e armazenadas no repositório de configuração do WebSphere Application Server. Um aplicativo pode definir nova configuração de login JAAS no console administrativo e persistir os dados no repositório de configuração que é armazenado na API de configuração do WebSphere Application Server. Entretanto, o WebSphere Application Server ainda suporta o formato de configuração de login JAAS padrão que é fornecido pela implementação padrão JAAS. Se configurações de login duplicadas foram definidas na API de configuração do WebSphere Application Server e em formato de arquivo de texto simples, as configurações na API de configuração do WebSphere Application Server terão prioridade. As vantagens de definir a configuração de login na API de configuração do WebSphere Application Server incluem:
    • Suporte à UI para definir a configuração de login do JAAS.
    • A configuração de login da configuração do JAAS pode ser gerenciada centralmente.
    • A configuração de login da configuração do JAAS é distribuída em uma instalação do WebSphere Application Server, Network Deployment.
  • Proxy LoginModule: O Proxy.LoginModule é um proxy para o usuário configurado ou o módulo definido pelo sistema que o carregador de classes de contexto usa para carregar o módulo em vez do carregador de classes do sistema. A implementação do JAAS padrão não utiliza o carregador de classe de contexto de encadeamento para carregar as classes. O módulo LoginModule não poderá ser carregado se o arquivo de classe LoginModule não estiver no carregador de classes do aplicativo ou no caminho de classe do carregador de classes da extensão Java. O WebSphere Application Server fornece um módulo proxy LoginModule para carregar o LoginModule do JAAS usando o carregador de classes de contexto de encadeamento. Não é necessário colocar a implementação de LoginModule no carregador de classes do aplicativo ou no caminho de classes do carregador de classes da extensão Java com esse módulo LoginModule de proxy.
Dica: Não remova nem exclua as configurações de login do JAAS predefinidas (ClientContainer, WSLogin e DefaultPrincipalMapping). Excluí-las ou removê-las pode fazer com que outros aplicativos corporativos falhem.

Um administrador de sistema determina as tecnologias de autenticação, ou módulos de login, a serem utilizadas para cada aplicativo e configura as mesmas em uma configuração de login. A origem das informações de configuração, por exemplo, um arquivo ou um banco de dados, depende da implementação atual de javax.security.auth.login.Configuration. A implementação do WebSphere Application Server permite a definição da configuração de login no documento de segurança da API de configuração do WebSphere Application Server e também em um arquivo de configuração JAAS, em que o primeiro tem prioridade.

As configurações de login JAAS são definidas no documento de segurança da API de configuração do WebSphere Application Server para uso dos aplicativos. Para acessar as configurações, conclua as seguintes etapas:
  1. Clique em Segurança > Segurança Global.
  2. Em Java Authentication and Authorization Service, clique em Logins do Aplicativo.

O módulo WSLogin define uma configuração de login e a implementação do LoginModule que pode ser utilizada por aplicativos em geral.

O módulo ClientContainer define uma configuração de login e a implementação LoginModule, que é semelhante ao módulo WSLogin, mas aplica os requisitos do contêiner do cliente do WebSphere Application Server.

O módulo DefaultPrincipalMapping define um LoginModule especial que é tipicamente usado peloJava 2 Connector para mapear uma identidade do usuário do WebSphere Application Server autenticada para um conjunto de dados de autenticação de usuário (ID e senha do usuário) para o Enterprise Information System (EIS). Para obter informações adicionais sobre o Java 2 Connector e o DefaultMappingModule, consulte a seção Java 2 Security.

Uma nova configuração de login do JAAS pode ser incluída e modificada utilizando o console administrativo. As alterações são salvas no documento de segurança no nível da célula e estão disponíveis para todos os servidores de aplicativos gerenciados. É necessário reiniciar o servidor de aplicativos para que as alterações tenham efeito no tempo de execução e para a configuração de login do contêiner do cliente torne-se disponível.

O WebSphere Application Server também lê as informações de configuração JAAS a partir do arquivo wsjaas.conf no subdiretório de propriedades do diretório raiz no qual o WebSphere Application Server está instalado. As alterações feitas no arquivo wsjaas.conf são utilizadas somente pelo servidor de aplicativos local e têm efeito depois da reinicialização do servidor de aplicativos. A configuração JAAS no documento de segurança da API de configuração do WebSphere Application Server tem prioridade sobre a configuração definida no arquivo wsjaas.conf. Uma entrada de configuração no wsjaas.conf é substituída por uma entrada com o mesmo nome alternativo no documento de segurança da API de configuração do WebSphere Application Server.

As entradas de configuração de login do JAAS (Java Authentication and Authorization Service) no console administrativo são propagadas para o tempo de execução do servidor ao serem criadas, não quando a configuração é salva. No entanto, as entradas excluídas da configuração de login do JAAS não são removidas do tempo de execução do servidor. Para remover as entradas, salve a nova configuração, em seguida, pare e reinicie o servidor.

As Amostras no infoCenter fornecem uma amostra de login JAAS que demonstra como usar o JAAS com o WebSphere Application Server. A amostra usa um login do lado do servidor com JAAS para autenticar um usuário com o tempo de execução de segurança para o WebSphere Application Server. A amostra demonstra a seguinte tecnologia:
  • J2EE (Java 2 Platform, Enterprise Edition) JAAS (Java Authentication and Authorization Service)
  • JAAS para WebSphere Application Server
  • Segurança do WebSphere Application Server
A amostra de login do formulário é um componente das amostra de tecnologia.

Ícone que indica o tipo de tópico Tópico de Referência



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsec_logmod
Nome do arquivo: rsec_logmod.html