Árvore de páginas

Atenção

Esta página foi revisada para considerar as configurações de server do TOTVS Fluig Plataforma a partir da atualização 1.6.

Índice


Objetivo


O objetivo deste guia é apresentar as configurações válidas para a autenticação em múltiplos servidores AD utilizando o protocolo LDAP (Lightweight Directory Access Protocol).


Autenticação em Múltiplos Servidores AD com Protocolo LDAP


Para definir as configurações, é necessário alterar o arquivo [diretório_instalação]\appserver\configuration\domain.xml, conforme os passos a seguir:


    • Procure o trecho de código abaixo:

      <security-domain name="TOTVSTech" cache-type="default">
       <authentication>
       <login-module code="com.totvs.foundation.auth.FoundationDatabaseServerLoginModule" flag="required" module="com.totvs.foundation.auth">
       <module-option name="hashAlgorithm" value="MD5"/>
       <module-option name="hashEncoding" value="HEX"/>
       <module-option name="principalClass" value="com.totvs.technology.foundation.common.TOTVSTechPrincipal"/>
       </login-module>
       </authentication>
      </security-domain>


    • Substitua a estrutura de tags login-module pela seguinte estrutura:

      <login-module code="com.totvs.foundation.auth.FoundationExtLdapLoginModule" flag="sufficient" module="com.totvs.foundation.auth">
      <module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
              <module-option name="java.naming.provider.url" value="ldap://<SERVIDOR AD 1>:<PORTA AD 1>/"/> 
              <module-option name="java.naming.security.authentication" value="simple"/> 
              <module-option name="java.naming.security.protocol" value=""/> 
              <module-option name="java.naming.security.principal" value="<USUARIO AD 1>@<DOMINIO AD1>"/> 
              <module-option name="java.naming.security.credentials" value="<SENHA AD 1>"/> 
              <module-option name="uidAttributeID" value="sAMAccountName"/>
              <module-option name="baseFilter" value="(sAMAccountName={0})"/>
              <module-option name="loginCombinedWithDatabase" value="false"/> 
              <module-option name="baseCtxDN" value="DC=<ESTRUTURA AD 1>"/> 
              <module-option name="rolesCtxDN" value="DC=<ESTRUTURA AD 1>"/> 
              <module-option name="hashAlgorithm" value="MD5"/>
              <module-option name="hashEncoding" value="HEX"/>
              <module-option name="principalClass" value="com.totvs.technology.foundation.common.TOTVSTechPrincipal"/>
      </login-module>
      <login-module code="com.totvs.foundation.auth.FoundationExtLdapLoginModule" flag="sufficient" module="com.totvs.foundation.auth">
      <module-option name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
              <module-option name="java.naming.provider.url" value="ldap://<SERVIDOR AD 2>:<PORTA AD 2>/"/> 
              <module-option name="java.naming.security.authentication" value="simple"/> 
              <module-option name="java.naming.security.protocol" value=""/> 
              <module-option name="java.naming.security.principal" value="<USUARIO AD 2>@<DOMINIO AD 2>"/> 
              <module-option name="java.naming.security.credentials" value="<SENHA>"/> 
              <module-option name="uidAttributeID" value="sAMAccountName"/>
              <module-option name="baseFilter" value="(sAMAccountName={0})"/>
              <module-option name="loginCombinedWithDatabase" value="false"/> 
              <module-option name="baseCtxDN" value="DC=<ESTRUTURA AD 2>"/> 
              <module-option name="rolesCtxDN" value="DC=<ESTRUTURA AD 2>"/> 
              <module-option name="hashAlgorithm" value="MD5"/>
              <module-option name="hashEncoding" value="HEX"/>
              <module-option name="principalClass" value="com.totvs.technology.foundation.common.TOTVSTechPrincipal"/>
      </login-module>


    • Caso seja necessário utilizar também a autenticação pelos dados do banco de dados, deve ser adicionada também a seguinte estrutura de tag login-module:

      <login-module code="com.totvs.foundation.auth.FoundationDatabaseServerLoginModule" flag="sufficient" module="com.totvs.foundation.auth">
       <module-option name="hashAlgorithm" value="MD5"/>
       <module-option name="hashEncoding" value="HEX"/>
       <module-option name="principalClass" value="com.totvs.technology.foundation.common.TOTVSTechPrincipal"/>
      </login-module>