Olá !
Como já publiquei diversas vezes, costumo efetuar muitos trabalhos de criação de pacote corporativo para o Thunderbird. (Caso queira entender: https://respirandolinux.wordpress.com/category/thunderbird/)
É muito comum implementarmos no pacote a obtenção de atributos de servidores Ldap, especialmente o Active Directory. Isso faz com que toda vez que o aplicativo for inicializado a consulta seja efetuada no servidor Ldap. Além de gerar carga no servidor, o Thunderbird fica indisponível caso a estação de trabalho esteja sem comunicação com o servidor.
Para contornar essas limitações desta arquitetura, gostaria de compartilhar com vocês a configuração para se obter os atributos do Active Directory pela estação de trabalho. Cada atributo localizado terá uma variável de ambiente estabelecida; que permanece na conta do usuário mesmo após logoff ou reiniciar a estação, sendo removida somente se solicitado.
Este é o script em VBScript que faz a consulta no AD e mapeia as variáveis:
Set objShell = CreateObject(“WScript.Shell”)Set objUserEnv = objShell.Environment(“USER”)Set objADSysInfo = CreateObject(“ADSystemInfo”)Set objUser = GetObject(“LDAP://dominio.local” & objADSysInfo.UserName)‘ This will create the variable %first.last% for the first.lastnameobjUserEnv(“first.last”) = objUser.givenName & ” ” & objUser.sn‘ This will create the variable %first% for the first nameobjUserEnv(“first”) = objUser.givenName‘ This will create the variable %last% for the surnameobjUserEnv(“last”) = objUser.sn‘ This will create the variable %mail% for the primary mail addressobjUserEnv(“mail”) = objUser.mail
“first.last” = Contendo o nome completo do usuário“first” = Primeiro nome“last” = Sobrenome“mail” = Endereço de e-mail
userInfo.envUser = getenv(“USERNAME”);