Capítulo 19. Uso do LdapExtLoginModule com o JaasSecurityDomain

Este capítulo fornece orientação de como o LdapExtLoginModule pode ser usado com uma senha criptografada a ser descriptografada pelo JaasSecurityDomain. Este capítulo assume que o LdapExtLoginModule já está rodando corretamente com uma senha não-criptografada.

Procedimento 19.1. 

  1. Define o JaasSecurityDomain MBean

    Define o JaasSecurityDomain MBean usado para descriptografar a versão criptografada da senha. Você pode adicionar o MBean ao $JBOSS_HOME/server/$PROFILE/conf/jboss-service.xml ou ao descritor de implantação *-service.xml na pasta $JBOSS_HOME/server/$PROFILE/deploy.
             
      <mbean code="org.jboss.security.plugins.JaasSecurityDomain"
          name="jboss.security:service=JaasSecurityDomain,domain=jmx-console">
          <constructor>
             <arg type="java.lang.String" value="jmx-console"></arg>
          </constructor>
          <attribute name="KeyStorePass">some_password</attribute>
          <attribute name="Salt">abcdefgh</attribute>
          <attribute name="IterationCount">66</attribute>
       </mbean>
    

    Nota

    O algoritmo criptografado padrão usado pela implementação JaasSecurityDomain é PBEwithMD5andDES. Outros algoritmos criptografados incluem DES, TripleDES, Blowfish e PBEWithMD5AndTripleDES. Todos os algoritmos são simétricos. Você pode especificar um algoritmo criptografado anexando um elemento <attribute> com o atributo CypherElement configurado para um destes valores.
  2. Ajuste a senha, salt e contagem de interação

    O Primeiro Passo contém uma configuração simples onde a senha solicitada, Salt e Contagem de Interação usados para criptografia ou descriptografia estão contidos na definição do MBean.
    Certifique-se de alterar os valores KeyStorePass, Salt e IterationCount adequados a sua implantação.
Após este MBean ser definido, inicie a Plataforma do Aplicativo JBoss Enterprise. Navegue ao JMX Console (http://localhost:8080/jmx-console/ por padrão) e selecione o org.jboss.security.plugins.JaasSecurityDomain MBean.
Busque pelo método encode64(String password) na página org.jboss.security.plugins.JaasSecurityDomain. Passe a versão de texto simples do password usado pelo LdapExtLoginModule para este método e o invoque. O valor de retorno deve ser a versão criptografada da senha codificada conforme Base64.
As seguintes opções de módulo devem ser configuradas com a configuração do módulo de logon:
 <module-option name="jaasSecurityDomain">jboss.security:service=JaasSecurityDomain,domain=jmx-console</module-option>
  <module-option name="bindCredential">2gx7gcAxcDuaHaJMgO5AVo</module-option>
A primeira opção é a nova opção para especificar que o \nJaasSecurityDomain usado anteriormente deve ser usado para descriptografar a senha.
O bindCredential é então substituído pela forma criptografada como Base64.