As ferramentas de linha de comando de serviço de diretório constituem um conjunto de ferramentas que pode ser utilizado para gerenciar os vários objetos do Active Directory e fazer consultas para obter informações no diretório
O comando DSADD é utilizado para criar uma instância de um objeto de tipo específico no Active Directory. Permite, por exemplo, automatizar a criação de computadores, grupos ou usuários. É possível, assim, utilizar um script de comando DSADD em uma instalação não-atendida, automatizando a criação da conta de um computador no domínio. O domínio deste conceito facilita, e muito, a tarefa cotidiana do administrador de redes, como veremos a seguir.
Os comandos DSADD dividem-se em:
DSADD Computer
Adiciona um único computador ao diretório.
Sintaxe
dsadd computer NDComputador [-samid NomeSAM] [-desc Descrição] [-locLocal] [-memberof DNGrupo …] [{-s Servidor | -d Domínio}] [-uNome_do_Usuário] [-p {Senha | *}] [-q] [{-uc | -uco | -uci}]
Parâmetros
NDComputador
Necessário. Especifica o nome distinto do computador a ser adicionado. Se o nome distinto for omitido, ele será retirado da entrada padrão (stdin).
-samid NomeSAM
Determina a utilização do nome SAM como único nome de conta SAM para este computador (por exemplo, TESTPC2$). Se este parâmetro não for especificado, um nome de conta SAM será obtido a partir do valor do atributo nome comum utilizado em NDComputador.
-desc Descrição
Especifica a descrição do computador a ser adicionado.
-loc Localização
Especifica o local do computador a ser adicionado.
-memberof NDGrupo …
Especifica os grupos nos quais você deseja o computador como membro.
{-s Servidor | -d Domínio}
Conecta o computador com um servidor ou domínio especificado. Por padrão, o computador é conectado com o controlador de domínio no domínio de logon.
-u Nome_do_Usuário
Especifica o nome usado pelo usuário para fazer logon em um servidor remoto. Por padrão, -u utiliza o nome de usuário com o qual o usuário fez logon. Qualquer um dos formatos a seguir pode ser utilizado para especificar um nome de usuário:
• | nome do usuário (por exemplo, Linda) |
• | domínio\nome do usuário (por exemplo, widgets\Linda) |
• | UPN (nome principal do usuário) (por exemplo, Linda@widgets.microsoft.com) |
-p {Senha | *}
Determina o uso de uma senha ou de um * para fazer logon em um servidor remoto. Se você digitar *, deverá fornecer uma senha.
-q
Elimina toda a saída para a saída padrão (modo silencioso).
{-uc | -uco | -uci}
Especifica que os dados de saída ou de entrada sejam formatados em Unicode. A tabela a seguir lista e descreve cada formato.
/?
Exibe ajuda no prompt de comando.
- Se você não fornecer um objeto de destino no prompt de comando, ele será obtido na saída padrão (stdin). Os dados de stdin podem ser aceitos a partir do teclado, de um arquivo redirecionado ou como saída em pipe de outro comando. Para marcar o fim dos dados stdin a partir do teclado ou em um arquivo redirecionado, use o caractere de fim de arquivo (CTRL+Z).
-
Se o valor fornecido contiver espaços, utilize o texto entre aspas (por exemplo, “CN=DC 2,OU=Controladores domínio,DC=Microsoft,DC=Com”).
- Se você fornecer diversos valores para um parâmetro, use espaços para separá-los (por exemplo, uma lista de nomes distintos).
dsadd contact
Adiciona um contato único ao diretório.
Sintaxe
dsadd contact DNContato [-fn Nome] [-mi Inicial] [-ln Sobrenome] [-display Nome_para_Exibição] [-desc Descrição] [-office Escritório] [-tel Telefone] [-email Email] [-hometel Telefone_Residencial] [-pager Pager] [-mobile Celular] [-fax Fax] [-iptel Telefone_IP] [-title Cargo] [-dept Departamento] [-company Empresa] [{-s Servidor | -d Domínio}] [-u Nome_do_Usuário] [-p {Senha | *}] [-q] [{-uc | -uco | -uci}]
Parâmetros
NDContato
Necessário. Especifica o nome distinto do contato a ser adicionado. Se o nome distinto for omitido, ele será obtido da entrada padrão (stdin).
-fn Nome
Especifica o nome do contato a ser adicionado.
-mi Inicial
Especifica a letra inicial central do contato a ser adicionado.
-ln Sobrenome
Especifica o sobrenome do contato a ser adicionado.
-display Nome_para_Exibição
Especifica o nome para exibição do contato a ser adicionado.
-desc Descrição
Especifica a descrição do contato a ser adicionado.
-office Escritório
Especifica o local do escritório do contato a ser adicionado.
-tel Telefone
Especifica o número do telefone do contato a ser adicionado.
-email Email
Especifica o endereço de email do contato a ser adicionado.
-hometel Telefone_Residencial
Especifica o número do telefone residencial do contato a ser adicionado.
-pager Pager
Especifica o número do pager do contato a ser adicionado.
-mobile Celular
Especifica o número do telefone celular do contato a ser adicionado.
-fax Fax
Especifica o número do fax do contato a ser adicionado.
-iptel Telefone_IP
Especifica o número do telefone IP do contato a ser adicionado.
-title Cargo
Especifica o cargo do contato a ser adicionado.
-dept Departamento
Especifica o departamento do contato a ser adicionado.
-company Empresa
Especifica as informações sobre a empresa do contato a ser adicionado.
{-s Servidor| -d Domínio}
Estabelece conexão com um domínio ou servidor remoto especificado. Por padrão, o computador fica conectado ao controlador de domínio no domínio de logon.
-u Nome_do_Usuário
Especifica o nome usado pelo usuário para fazer logon em um servidor remoto. Por padrão, é utilizado o nome do usuário que fez logon. É possível especificar um nome de usuário usando um dos seguintes formatos:
• | nome do usuário (por exemplo, Linda) |
• | domínio\nome do usuário (por exemplo, widgets\Linda) |
• | UPN (nome principal do usuário) (por exemplo, Linda@widgets.microsoft.com) |
-p {Senha | *}
Determina o uso de uma senha ou de um * para fazer logon em um servidor remoto. Se você digitar *, deverá fornecer uma senha.
-q
Elimina toda a saída para a saída padrão (modo silencioso).
{-uc | -uco | -uci}
Especifica que os dados de saída ou de entrada sejam formatados em Unicode. A tabela a seguir lista e descreve cada formato.
/?
Exibe ajuda no prompt de comando.
- Se você não fornecer um objeto de destino no prompt de comando, ele será obtido na saída padrão (stdin). Os dados de stdin podem ser aceitos a partir do teclado, de um arquivo redirecionado ou como saída em pipe de outro comando. Para marcar o fim dos dados stdin a partir do teclado ou em um arquivo redirecionado, use o caractere de fim de arquivo (CTRL+Z).
- Se o valor fornecido contiver espaços, utilize o texto entre aspas (por exemplo, “CN=Mike Danseglio,CN=Usuários,DC=Microsoft,DC=Com”).
- Este comando só oferece suporte a um subconjunto de atributos de classe de objeto usados com freqüência.
dsadd group
Adiciona um único grupo ao diretório.
Sintaxe
dsadd group NDGrupo [-secgrp {yes | no}] [-scope {l | g | u}] [-samid NomeSAM] [-desc Descrição] [-memberof Grupo …] [-members Membro …] [{-s Servidor | -d Domínio}] [-u Nome_do_Usuário] [-p {Senha | *}] [-q] [{-uc | -uco | -uci}]
Parâmetros
NDGrupo
Necessário. Especifica o nome distinto do grupo a ser adicionado. Se o nome distinto for omitido, será obtido da entrada padrão (stdin).
-secgrp {yes | no}
Especifica se o grupo que você deseja adicionar é um grupo de segurança (yes) ou um grupo de distribuição (no). Por padrão, o grupo é adicionado como grupo de segurança (yes).
-scope {l | g | u}
Especifica se o escopo do grupo que você deseja adicionar é domínio local (l), global (g) ou universal (u). Se o domínio estiver no modo misto, não haverá suporte a escopo universal. Por padrão, o escopo do grupo é definido como global.
-samid NomeSAM
Especifica a utilização do nome SAM como o único nome de conta SAM para este grupo (por exemplo, operadores). Se este parâmetro não for especificado, será gerado a partir do nome distinto relativo.
-desc Descrição
Especifica a descrição do grupo a ser adicionado.
-memberof Grupo …
Especifica os grupos aos quais este novo grupo deverá ser adicionado.
-members Membro …
Especifica os membros a serem adicionados ao novo grupo.
{-s Servidor | -d Domínio}
Estabelece conexão com um domínio ou servidor remoto especificado. Por padrão, o computador fica conectado ao controlador de domínio no domínio de logon.
-u Nome_do_Usuário
Especifica o nome usado pelo usuário para fazer logon em um servidor remoto. Por padrão, -u utiliza o nome de usuário com o qual o usuário fez logon. Qualquer um dos formatos a seguir pode ser utilizado para especificar um nome de usuário:
• | nome do usuário (por exemplo, Linda) |
• | domínio\nome do usuário (por exemplo, widgets\Linda) |
• | UPN (nome principal do usuário) (por exemplo, Linda@widgets.microsoft.com) |
-p {Senha | *}
Determina o uso de uma senha ou de um * para fazer logon em um servidor remoto. Se você digitar *, deverá fornecer uma senha.
-q
Elimina toda a saída para a saída padrão (modo silencioso).
{-uc | -uco| -uci}
Especifica que os dados de saída ou de entrada sejam formatados em Unicode. A tabela a seguir lista e descreve cada formato.
/?
Exibe ajuda no prompt de comando.
- Se você não fornecer um objeto de destino no prompt de comando, ele será obtido na saída padrão (stdin). Os dados de stdin podem ser aceitos a partir do teclado, de um arquivo redirecionado ou como saída em pipe de outro comando. Para marcar o fim dos dados stdin a partir do teclado ou em um arquivo redirecionado, use o caractere de fim de arquivo (CTRL+Z).
- Se um valor fornecido contiver espaços, utilize o texto entre aspas (por exemplo, “CN=Mike Danseglio,CN=Usuário,DC=Microsoft,DC=Com”).
- Se você fornecer diversos valores para um parâmetro, use espaços para separá-los (por exemplo, uma lista de nomes distintos).
- Este comando só oferece suporte a um subconjunto de atributos de classe de objeto usados com freqüência.
dsadd ou
Adiciona uma única unidade organizacional ao diretório.
Sintaxe
dsadd ou NDUnidadeOrganizacional [-desc Descrição] [{-s Servidor | -d Domínio}][-u Nome_do_Usuário] [-p {Senha | *}] [-q] [{-uc | -uco | -uci}]
Parâmetros
NDUnidadeOrganizacional
Necessário. Especifica o nome distinto da unidade organizacional a ser adicionada. Se o nome distinto for omitido, será obtido da entrada padrão (stdin).
-desc Descrição
Especifica a descrição da unidade organizacional a ser adicionada.
{-s Servidor | -d Domínio}
Estabelece conexão com um domínio ou servidor remoto especificado. Por padrão, o computador fica conectado ao controlador de domínio no domínio de logon.
-u Nome_do_Usuário
Especifica o nome usado pelo usuário para fazer logon em um servidor remoto. Por padrão, é utilizado o nome do usuário que fez logon. É possível especificar um nome de usuário usando um dos seguintes formatos:
• | nome do usuário (por exemplo, Linda) |
• | domínio\nome do usuário (por exemplo, widgets\Linda) |
• | UPN (nome principal do usuário) (por exemplo, Linda@widgets.microsoft.com) |
-p {Senha | *}
Determina o uso de uma senha ou de um * para fazer logon em um servidor remoto. Se você digitar *, deverá fornecer uma senha.
-q
Elimina toda a saída para a saída padrão (modo silencioso).
{-uc | -uco | -uci}
/?
Exibe ajuda no prompt de comando.
dsadd user
Adiciona um usuário único ao diretório.
Sintaxe
dsadd user NDUsuário [-samid NomeSAM] [-upn UPN] [-fn Nome] [-mi Inicial] [-ln Sobrenome] [-display Nome_para_Exibição] [-empid Identificação_do_Funcionário] [-pwd {Senha | *}] [-desc Descrição] [-memberof Grupo …] [-office Escritório] [-tel Telefone] [-email Email] [-hometel Telefone_Residencial] [-pager Pager] [-mobile Celular] [-fax Fax] [-iptel Telefone_IP] [-webpg Página_da_Web] [-title Cargo] [-dept Departamento] [-company Empresa] [-mgr Gerente] [-hmdir Diretório_Base] [-hmdrv Letra_da_Unidade:][-profile Caminho_do_Perfil] [-loscr Caminho_do_Script] [-mustchpwd {yes | no}] [-canchpwd {yes | no}] [-reversiblepwd {yes | no}] [-pwdneverexpires {yes | no}] [-acctexpires Número_de_Dias] [-disabled {yes | no}] [{-s Servidor | -d Domínio }] [-u Nome_do_Usuário] [-p {Senha | *}] [-q] [{-uc | -uco | -uci}]
Parâmetros
NDUsuário
Necessário. Especifica o nome distinto do usuário a ser adicionado. Se o nome distinto for omitido, será obtido da entrada padrão (stdin).
-samid NomeSAM
Determina o nome SAM como único nome de conta SAM para este usuário (por exemplo, Linda). Caso não seja especificado, dsadd tentará criar o nome de conta SAM usando até os primeiros 20 caracteres do valor de nome comum (CN) de NDUsuário.
-upn UPN
Especifica o nome principal do usuário a ser adicionado, (por exemplo, Linda@widgets.microsoft.com).
-fn Nome
Especifica o nome do usuário a ser adicionado.
-mi Inicial
Especifica a letra inicial central do usuário a ser adicionado.
-ln Sobrenome
Especifica o sobrenome do usuário a ser adicionado.
-display Nome_para_Exibição
Especifica o nome para exibição do usuário a ser adicionado.
-empid Identificação_do_Funcionário
Especifica a identificação funcional do usuário a ser adicionado.
-pwd {Senha | *}
Especifica a senha do usuário a ser definida como Senha ou *. Se for definida como *, você será solicitado a fornecer uma senha de usuário.
-desc Descrição
Especifica a descrição do usuário a ser adicionado.
-memberof NDGrupo …
Especifica os nomes distintos dos grupos nos quais você deseja incluir o usuário como membro.
-office Escritório
Especifica o local do escritório do usuário a ser adicionado.
-tel Telefone
Especifica o número do telefone do usuário a ser adicionado.
-email Email
Especifica o endereço de email do usuário a ser adicionado.
-hometel Telefone_Residencial
Especifica o número do telefone residencial do usuário a ser adicionado.
-pager Pager
Especifica o número do pager do usuário a ser adicionado.
-mobile Celular
Especifica o número do telefone celular do usuário a ser adicionado.
-fax Fax
Especifica o número do fax do usuário a ser adicionado.
-iptel Telefone_IP
Especifica o número do telefone IP do usuário a ser adicionado.
-webpg Página_da_Web
Especifica a URL de página da Web do usuário a ser adicionado.
-title Cargo
Especifica o cargo do usuário a ser adicionado.
-dept Departamento
Especifica o departamento do usuário a ser adicionado.
-company Empresa
Especifica as informação sobre a empresa do usuário a ser adicionado.
-mgr NDGerente
Especifica o nome distinto do gerente do usuário a ser adicionado.
-hmdir Diretório_Base
Especifica o local do diretório base do usuário a ser adicionado. Se o DiretórioBase for apresentado como um caminho UNC, você deverá especificar uma letra de unidade a ser mapeada até esse caminho utilizando o parâmetro -hmdrv.
-hmdrv Letra_da_Unidade :
Especifica a letra de unidade do diretório base (por exemplo, E:) do usuário a ser adicionado.
-profile Caminho_do_Perfil
Especifica o caminho do perfil do usuário a ser adicionado.
-loscr Caminho_do_Script
Especifica o caminho do script de logon do usuário a ser adicionado.
-mustchpwd {yes | no}
Especifica se os usuários deverão alterar suas senhas no próximo logon (yes) ou não (no). Por padrão, o usuário não precisa mudar a senha (no).
-canchpwd {yes | no}
Especifica se os usuários poderão alterar suas senhas (yes) ou não (no). Por padrão, é permitido ao usuário mudar a senha (yes). O valor desse parâmetro deverá ser yes se o valor do parâmetro -mustchpwd for yes.
-reversiblepwd {yes | no}
Especifica se a senha do usuário deverá ser armazenada utilizando criptografia reversível (yes) ou não (no). Por padrão, o usuário não pode utilizar a criptografia reversível (no).
-pwdneverexpires {yes | no}
Especifica se a senha do usuário nunca expira (yes) ou expira (no). Por padrão, a senha do usuário expira (no).
-acctexpires Número_de_Dias
Especifica o número de dias a partir da data atual para expiração da conta do usuário. Um valor 0 define a expiração para o final do dia de hoje. Um valor positivo define a expiração no futuro. Um valor negativo define a expiração no passado. O valor never define que a conta nunca deverá expirar. Por exemplo, um valor 0 fará a conta perder a validade no final do dia de hoje. Um valor -5 indica que a conta já expirou há cinco dias e define uma data de validade no passado. Um valor 5 define a expiração da conta para daqui a cinco dias.
-disabled {yes | no}
Especifica se a conta de usuário será desabilitada para logon (yes) ou habilitada (no). Por exemplo, o comando dsadd user CN=Nicolettep,CN=Users,DC=Widgets,DC=Microsoft,DC=Com pwd- Password1 -disabled no cria uma conta de usuário Nicolettep em um estado habilitado. Por padrão, a conta de usuário será desabilitada para logon (yes). Por exemplo, o comando dsadd user CN=Nathanp,CN=Users,DC=Widgets,DC=Microsoft,DC=Com cria uma conta de usuário Nathanp em um estado desabilitado.
{-s Servidor | -d Domínio}
Estabelece conexão com um domínio ou servidor remoto especificado. Por padrão, o computador fica conectado ao controlador de domínio no domínio de logon.
-u Nome_do_Usuário
Especifica o nome usado pelo usuário para fazer logon em um servidor remoto. Por padrão, -u utiliza o nome de usuário com o qual o usuário fez logon. Qualquer um dos formatos a seguir pode ser utilizado para especificar um nome de usuário:
• | nome do usuário (por exemplo, Linda) |
• | domínio\nome do usuário (por exemplo, widgets\Linda) |
• | UPN (nome principal do usuário) (por exemplo, Linda@widgets.microsoft.com) |
-p {Senha | *}
Determina o uso de uma senha ou de um * para fazer logon em um servidor remoto. Se você digitar *, deverá fornecer uma senha.
-q
Elimina toda a saída para a saída padrão (modo silencioso).
{-uc | -uco | -uci}
/?
Exibe ajuda no prompt de comando.
- Se você não fornecer um objeto de destino no prompt de comando, ele será obtido na saída padrão (stdin). Os dados de stdin podem ser aceitos a partir do teclado, de um arquivo redirecionado ou como saída em pipe de outro comando. Para marcar o fim dos dados stdin a partir do teclado ou em um arquivo redirecionado, use o caractere de fim de arquivo (CTRL+Z).
- Se um valor fornecido contiver espaços, utilize o texto entre aspas (por exemplo, “CN=Mike Danseglio,CN=Usuário,DC=Microsoft,DC=Com”).
- Se você fornecer diversos valores para um parâmetro, use espaços para separá-los (por exemplo, uma lista de nomes distintos).
- O símbolo especial $username$ (sem diferenciação de maiúsculas ou minúsculas) pode substituir o nome de conta SAM no valor dos parâmetros -email, -hmdir, -profile e -webpg. Por exemplo, se um nome de conta SAM for “Denise”, o parâmetro -hmdir poderá ser escrito num dos seguintes formatos:-hmdir\usuarios\Denise\base
-hmdir\users\$username$\home
- O uso de senhas de alta segurança em todas as contas de usuário ajuda a minimizar os riscos de segurança.
dsadd quota
Adiciona uma especificação de cota a uma partição de diretório. Uma especificação de cota determina o número máximo de objetos de diretório que um dado objeto de segurança pode possuir em uma partição de diretório específica.
Sintaxe
dsadd quota -part NDPartição [-rdn Nome_Distinto_Relativo] -acct Nome -qlimit Valor [-desc Descrição] [{-s Servidor | -d Domínio}] [-u Nome_do_Usuário][-p {Senha | *}] [-q] [{-uc | -uco | -uci}]
Parâmetros
-part NDPartição
Necessário. Especifica o nome distinto da partição de diretório na qual a cota deverá ser criada. Se o nome distinto não for especificado, ele será obtido da entrada padrão (stdin).
-rdn Nome_Distinto_Relativo
Especifica o nome distinto relativo da especificação de cota que está sendo criada. Se você não especificar -rdn, ele é definido como Domínio_Nome_da_conta, usando o nome de domínio e de conta do objeto de segurança especificado pelo parâmetro -acct.
-acct Name
Necessário. Especifica o objeto de segurança (usuário, grupo, computador ou InetOrgPerson) ao qual a especificação de cota se aplica. É possível utilizar qualquer uma das formas a seguir para Nome:
• | Nome distinto do objeto de segurança |
• | Domínio\NomeDeContaSAM da segurança principal |
-qlimit Valor
Obrigatório. Especifica o número de objetos na partição de diretório que podem ser possuídos pelo objeto de segurança. Para especificar uma cota ilimitada, utilize -1.
-desc Descrição
Especifica uma descrição da especificação de cota que você deseja adicionar.
{-s Servidor | -d Domínio}
Conecta o computador com um servidor ou domínio especificado. Por padrão, o computador fica conectado ao controlador de domínio no domínio de logon.
-u Nome_do_Usuário
Especifica o nome usado pelo usuário para fazer logon em um servidor remoto. Por padrão, -u utiliza o nome de usuário com o qual o usuário fez logon. Qualquer um dos formatos a seguir pode ser utilizado para especificar um nome de usuário:
• | nome do usuário (por exemplo, Linda) |
• | domínio\nome do usuário (por exemplo, widgets\Linda) |
• | UPN (nome principal do usuário) (por exemplo, Linda@widgets.microsoft.com) |
-p {Senha | *}
Especifica o uso de uma senha ou de um * para fazer logon em um servidor remoto. Se você digitar *, deverá fornecer uma senha.
-q
Elimina toda a saída para a saída padrão (modo silencioso).
{-uc | -uco | -uci}
/?
Exibe ajuda no prompt de comando.
Existe uma forma de colocar um tempo para expiraçao de senha sem ser aqele d xpiração de conta ja existente como parametro?
Abraço ,
Qual a maneira de criar vários computadores no ad através de um script usando o dsadd. Consigo criar um a um, porém queria automatizar este processo e criar vários computadores de uma só vez
Para você conseguir fazer o pretendido tem que realizar um laço, o mais fácil é utilizar o FOR que existe em todas as linguagens de programação, deixo aqui um exemplo em shellscript. Tem de transformar para batch script, mas a lógica de programação está ai, OK.
echo “Quantos computadores quer criar?”
read op; //ESTA VARIAVEL VAI DETERMINAR QUANTOS DSADD VOCÊ VAI EXECUTAR DENTRO DO LAÇO
nome=computador;
for((i=0;i<=op;i++))
do
echo "dsadd computer cn=nome$op,ou=computador,ou=desenvolvimento,dc=exemplo,dc=local"
done
P.S. Perdi 1min. a fazer este ShellScript, pode conter erros, apenas para estudo!