Thunderbird: Utilizando Active Directory e variáveis do ambiente para o pacote corporativo

download (1)

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.lastname
objUserEnv(“first.last”) = objUser.givenName & ” ” & objUser.sn
‘ This will create the variable %first% for the first name
objUserEnv(“first”) = objUser.givenName
‘ This will create the variable %last% for the surname
objUserEnv(“last”) = objUser.sn
‘ This will create the variable %mail% for the primary mail address
objUserEnv(“mail”) = objUser.mail
Neste caso, estamos criando as seguintes variáveis:
“first.last” = Contendo o nome completo do usuário
“first” = Primeiro nome
“last” = Sobrenome
“mail” = Endereço de e-mail
Lembrando que no arquivo de configuração automática do Thunderbird, a função getenv deve ser utilizada para obter as variáveis do ambiente.
Exemplo:
userInfo.envUser = getenv(“USERNAME”);
Referências:
Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s