Windows 2KX LDAP attributes
Publicado por André Gustavo Neves Lopes (última atualização em 06/01/2010)
[ Hits: 4.723 ]
Homepage: blog.mrx.com.br
Download checkUserAccountControl.sh
Esse script foi muito útil quando precisei integrar um Postfix com uma base de usuários pré-existente em um Active Directory (Windows 2K). Minha necessidade foi recuperar de maneira eficiente os atributos dos usuários para que eu pudesse controlar os emails direcionados ou vindos desses usuários. Depois de obter exatamente os atributos que eu precisava, foi muito mais fácil montar as consultas de autenticação.
A ideia é simples: passe o inteiro, obtido do campo UserAccountControl do usuário que está verificando como parâmetro do script, os principais atributos do LDAP (AD), serão verificados. O código é simples, apesar de elegante, rs.
Espero que sirva para mais alguém.
#!/bin/bash ##### table of attributes ############################# # codes from: # http://support.microsoft.com/kb/305144 attrtable[1]="script" attrtable[2]="account disable" attrtable[3]="not used" attrtable[4]="homedir required" attrtable[5]="lockout" attrtable[6]="passwd not required" attrtable[7]="passwd cant change" attrtable[8]="encrypted text pwd allowed" attrtable[9]="temp duplicate account" attrtable[10]="normal account" attrtable[11]="not used" attrtable[12]="interdomain trust account" attrtable[13]="workstation trust account" attrtable[14]="server trust account" attrtable[17]="dont expire password" function check_attr { score=$1 binary=$(echo "ibase=10; obase=2; $score" | bc) size=${#binary} echo "checking values for $score -> $binary" for i in ${!attrtable[*]} ; do if [ $i -le $size ] ; then positionalcheck=${binary:(-$i):1} if [ $positionalcheck -eq 1 ] ; then echo "-> true for: ${attrtable[$i]}" fi fi done } check_attr $1
Reinicia todos os trabalhos de todas as filas CUPS
Jogo campo minado em Shell Script
KDE 4.1.1 no Slackware Linux 12.1
Automatizar backup do PostgreSQL
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)