Active Directory - Define dinamicamente o atributo do usuário com base na associação ao grupo?

1

É possível definir dinamicamente um atributo de usuário com base na participação em um grupo ou realmente é necessário alterar manualmente todos os usuários existentes e ter um modelo com o atributo definido para contabilizar novos usuários?

Como em, se John for membro de Pet Owners , então trate o atributo John (custom-) hasPets set.

O problema (muito específico) é o seguinte:

Estamos usando o dispositivo SRA da Sonicwall (agora DELL) como uma solução de VPN que se integra ao AD. O appliance suporta o envio de senhas de uso único por e-mail, mas oferece suporte apenas a duas maneiras de especificar de onde o endereço de e-mail usado é o seguinte:

  1. Deixe-o montar dinamicamente o endereço do nome de usuário e do domínio do usuário que foram usados para efetuar login no dispositivo ( user@domain ).
  2. Especifique um atributo do AD para usar, que contenha o endereço de e-mail, que pode ser um dos poucos pré-especificados (por exemplo, mail , pager etc.) ou um atributo personalizado.

Em algum ponto do canal, esses e-mails são eventualmente processados e a OTP é enviada via SMS para o usuário que está tentando fazer o login no sistema.

Anteriormente, usamos a opção 1) e permitimos que o appliance enviasse os emails de OTP para user@domain , mas atualizando para um novo modelo de appliance e alterações de back-end. Todos os emails de OTP devem ser enviados para o mesmo endereço de email. / p>

O que não é possível é definir um endereço de e-mail global diretamente dentro do dispositivo, portanto, é necessário usar 2) e definir um atributo do AD para esse novo endereço de e-mail. Como o acesso VPN está vinculado a um grupo AD, esperava que isso pudesse ser feito dinamicamente apenas para usuários que são membros desses grupos ou, pelo menos, para todos os usuários no domínio.

    
por Adrian Frühwirth 16.06.2014 / 14:40

3 respostas

3

A única abordagem em que posso pensar seria executar um script para verificar periodicamente seu Active Directory e atualizar o atributo que você está interessado, com base nos membros do grupo da conta.

É relativamente fácil de fazer com o PowerShell e você pode executá-lo como uma tarefa agendada para manter as coisas atualizadas.

O Scripting Guy tem uma entrada de blog que é bastante atual - Use o PowerShell AD Provider para modificar os atributos do usuário . Use isso para formar o núcleo do seu script, coloque um pouco de lógica em torno dele e você está pronto para ir.

Em seu exemplo, ele está mexendo no atributo physicaldeliveryofficename e usa o cmdlet Set-ItemProperty , combinado com Filter para alternar o valor desse atributo entre Charlotte e Raleigh. Você provavelmente não adotaria essa abordagem, mas apenas usaria o cmdlet Set-ItemProperty para definir o atributo que seu Sonicwall / Dell verifica para algo, com base no grupo em que o usuário está.

Set-ItemProperty -Filter "physicaldeliveryofficename=Raleigh" -Path * -Name physicaldeliveryofficename -Value Charlotte
    
por 16.06.2014 / 15:05
1

Eu não acredito que exista tal coisa. Você pode descrever qual problema você está realmente tentando resolver? Isso pode se adequar melhor às suas necessidades se pudermos ver o quadro geral; pode haver outra abordagem para o seu problema do que aquela que você já decidiu.

    
por 16.06.2014 / 14:45
1

Atualmente, estou lidando com a mesma situação ou situação semelhante. Eu queria modificar o atributo de usuário de domínio (configuração de string de correção) dinamicamente com base na associação do grupo de domínio. Eu estava procurando um pouco em "Active Roles", mas parece que ele está funcionando apenas ao contrário - definindo a associação com base no atributo - ou não percebi como fazer isso.

Por enquanto, a única solução que realmente me vem à mente é definir um script que possa ser executado periodicamente entre OU específico e modificar o atributo de usuário de domínio com base na associação. Ainda não tenho nenhum roteiro desse tipo, pois ainda espero que haja uma maneira de fazê-lo dinamicamente, o que ainda não percebi

    
por 16.06.2014 / 16:18