View
220
Download
1
Category
Preview:
Citation preview
Módulo 4: Como automatizar a administração dosServiços de Domínio do Active Directory
Conteúdo:
Visão geral do módulo
Lição 1: Como usar ferramentas de linha de comando para administraçãodo AD DS
Lição 2: Como usar o Windows PowerShell para administração do AD DS
Lição 3: Execução de operações em massa com o Windows PowerShell
Laboratório: Automação da administração do AD DS usando o WindowsPowerShell
Revisão e informações complementares do módulo
Visão geral do módulo
Você pode usar ferramentas de linha de comando e o Windows PowerShell® para
automatizar a administração do AD DS (Serviços de Domínio do Active Directory®).
A automação da administração acelera processos que, de outra forma, você poderia
realizar manualmente. O Windows PowerShell inclui cmdlets para administração do
AD DS e para a realização de operações em massa. Você pode usar operações em
massa para alterar vários objetos do AD DS em uma única etapa em vez de atualizar
cada objeto manualmente.
Objetivos
Ao concluir este módulo, você será capaz de:
• Usar ferramentas de linha de comando para administração do AD DS.
• Usar ferramentas de linha de comando para administração do AD DS.
• Usar cmdlets do Windows PowerShell para administração do AD DS.
• Realizar operações em massa usando o Windows PowerShell.
Lição 1 : Como usar ferramentas de linha de comando
para administração do AD DS
O Windows Server® 2012 inclui várias ferramentas de linha de comando que podem
ser usadas para realizar a administração do AD DS. Muitas organizações criam scripts
que usam ferramentas de linha de comando para automatizar a criação e o
gerenciamento de objetos do AD DS, como contas de usuários e grupos. É
necessário compreender como usar essas ferramentas de linha de comando para
garantir que, se for necessário, você possa modificar os scripts usados pela sua
organização.
Objetivos da lição
Ao concluir esta lição, você será capaz de:
• Descrever os benefícios de usar ferramentas de linha de comando para
administração do AD DS.
• Descrever como e quando usar csvde.
• Descrever como e quando usar ldifde.
• Descrever como e quando usar comandos DS.
Benefícios de usar ferramentas de linha de comando para
administração do AD DS
Muitos administradores preferem usar ferramentas gráficas para administração do AD
DS sempre que possível. Ferramentas gráficas, como o snap-in Usuários e
Computadores do Active Directory, são intuitivas de usar porque representam as
informações visualmente e oferecem opções no formato de botões de rádio e caixas
de diálogo. Quando as informações são representadas graficamente, você não
precisa memorizar a sintaxe.
Ferramentas gráficas funcionam bem em muitas situações, mas não podem ser
automatizadas. Para automatizar a administração do AD DS, você precisa de
ferramentas de linha de comando. Ferramentas de linha de comando podem ser
usadas em scripts ou podem ser usadas por outros aplicativos.
Alguns benefícios do uso de ferramentas de linha de comando são:
• Implementação mais rápida de operações em massa. Por exemplo, é possível
exportar uma lista de novas contas de usuário de um aplicativo de recursos
humanos. Você usa uma ferramenta de linha de comando ou um script para criar
as novas contas de usuário com base nas informações exportadas. Isso é muito
mais rápido do que criar cada nova conta de usuário manualmente.
• Processos personalizados para administração do AD DS. É possível usar um
programa gráfico personalizado para coletar informações sobre um novo grupo e
então criar esse novo grupo. Quando as informações são coletadas, o programa
gráfico pode confirmar que o formato delas, por exemplo, a convenção de
nomenclatura, está correto. Em seguida, o programa gráfico usa uma ferramenta
de linha de comando para criar o novo grupo. Esse processo permite a aplicação
de regras específicas da empresa.
• Administração do AD DS no Server Core. A instalação Server Core do Windows
Server não pode executar ferramentas gráficas de administração, como Usuários e
Computadores do Active Directory. No entanto, é possível usar ferramentas de
linha de comando no Server Core.
Observação: Você pode administrar o Server Core remotamente usandoferramentas gráficas.
O que é Csvde?
Csvde é uma ferramenta de linha de comando que exporta ou importa objetos do
Active Directory para ou a partir de um arquivo de valores separados por vírgula
(.csv). Muitos aplicativos são capazes de exportar ou importar dados de arquivos. csv.
Isso torna o csvde útil para interoperabilidade com outros aplicativos, como bancos
de dados ou planilhas.
A principal limitação de csvde é que ele não pode modificar objetos existentes do
Active Directory. Ele apenas pode criar novos objetos. Por exemplo, você pode usar
csvde para criar um conjunto de novas contas de usuário, mas não pode usá-lo para
modificar as propriedades das contas de usuário depois que elas são criadas.
Também é possível usar csvde para exportar propriedades de objetos, como uma
lista de usuários e seus endereços de email.
Exportar objetos usando csvde
Para exportar objetos usando csvde, você precisa especificar pelo menos o nome do
arquivo .csv para o qual os dados serão exportados. Com apenas o nome do arquivo
especificado, todos os objetos no domínio serão exportados.
A sintaxe básica para usar csvde para exportação é:
csvde -f filename
Outras opções que podem ser usadas com csvde estão listadas na tabela a seguir.
Opção Descrição
-d RootDN Especifica o nome distinto do contêiner a partir do qual a exportação começará.
O padrão é o domínio.
-p SearchScope Especifica o escopo da pesquisa em relação ao contêiner especificado pela opção
-d. A opção SearchScope pode ser base (somente este objeto), onelevel
(objetos dentro deste contêiner) ou subtree (este contêiner e todos os
subcontêineres). O padrão é subtree.
-r Filter Limita os objetos retornados àqueles que correspondem ao filtro. O filtro se
baseia na sintaxe de consulta do protocolo LDAP.
-l ListOfAtrributes Especifica os atributos a serem exportados. Use o nome LDAP para cada atributo
e separe-os com vírgulas.
Terminada a exportação, o arquivo .csv conterá uma linha de cabeçalho e uma linha
para cada objeto que foi exportado. A linha de cabeçalho é uma lista separada por
vírgulas com os nomes dos atributos para cada objeto.
Criar objetos usando csvde
A sintaxe básica para usar csvde de forma a criar objetos é:
csvde -i -f filename -k
O parâmetro -i especifica o modo de importação. O parâmetro -f identifica o nome
de arquivo a partir do qual importar. O parâmetro -k instrui csvde a ignorar
mensagens de erro, incluindo a mensagem de erro “O objeto já existe”. A opção
suppress errors é útil na importação de objetos para garantir que todos os objetos
possíveis sejam criados, em vez de parar quando a importação está parcialmente
completa.
O arquivo .csv em uso para uma importação deve ter uma linha de cabeçalho que
contém nomes de atributos LDAP para os dados no arquivo .csv. Cada linha deve
conter exatamente o número correto de itens, conforme especificado na linha de
cabeçalho.
Você não pode usar csvde para importar senhas, pois as senhas em um arquivo .csv
não são protegidas. Como resultado, as contas de usuário criadas com csvde têm
uma senha em branco e estão desabilitadas.
Observação: Para obter mais informações sobre os parâmetros de csvde, emum prompt de comando, digite csvde /? e pressione Enter.
Leitura adicional: Para obter mais informações sobre a sintaxe de consultaLDAP, consulte Noções básicas sobre consultas LDAP emhttp://go.microsoft.com/fwlink/?LinkId=168752.
O que é Ldifde?
Ldifde é uma ferramenta de linha de comando que você pode usar para exportar,
criar, modificar ou excluir objetos do AD DS. Como csvde, ldifde usa dados que estão
armazenados em um arquivo. O arquivo deve estar no formato LDIF (Formato de
Intercâmbio de Dados LDAP). A maioria dos aplicativos não consegue exportar ou
importar dados no formato LDIF. É mais provável que você obtenha dados no
formato LDIF a partir de outro serviço de diretório.
Um arquivo LDIF é baseado em texto, com blocos de linhas que englobam uma única
operação, como criar ou modificar um objeto de usuário. Cada linha na operação
especifica algo sobre essa operação, como um atributo ou o tipo de operação. Uma
linha em branco separa várias operações dentro do arquivo LDIF.
Veja a seguir um exemplo de um arquivo LDIF que cria um único usuário:
dn: CN=Bonnie Kearney,OU=Employees,OU=User
Accounts,DC=adatum,DC=com
changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Bonnie Kearney
sn: Kearney
title: Operations
description: Operations (London)
givenName: Bonnie
displayName: Kearney, Bonnie
company: Contoso, Ltd.
sAMAccountName: bonnie.kearney
userPrincipalName: bonnie.kearney@adatum.com
mail: bonnie.kearney@adatum.com
Para cada operação em um arquivo LDIF, a linha changetype define a operação a ser
realizada. Os valores válidos são add, modify ou delete.
Exportar objetos usando Ldifde
Ao usar ldifde para exportar objetos, as informações mínimas que você deve fornecer
são um nome de arquivo para manter os dados. Quando nenhuma outra opção é
selecionada, todos os objetos no domínio são exportados.
A sintaxe básica para exportar objetos usando LDIFE é:
ldifde -f filename
Algumas outras opções que podem ser usadas ao exportar objetos com ldifde estão
listadas na tabela a seguir.
Opção Descrição
-d RootDN A raiz da pesquisa LDAP. O padrão é a raiz do domínio.
-r Filter Um filtro de pesquisa LDAP que limita os resultados retornados.
-p SearchScope O escopo, ou profundidade, da pesquisa. Ele pode ser:
• subtree (este contêiner e todos os contêineres filhos)
• base (somente os objetos filhos imediatos do contêiner)
• onelevel (este contêiner e seus contêineres filhos imediatos)
-l ListOfAttributes Uma lista separada por vírgulas de atributos a serem incluídos na exportação.
-o ListOfAttributes Uma lista separada por vírgulas de atributos a serem excluídos da exportação.
Importar objetos usando Ldifde
Ao usar ldifde para importar objetos, você deve especificar a operação a ser realizada
nesses objetos. Para cada operação em um arquivo LDIF, a linha changetype define a
operação a ser realizada.
A sintaxe básica para usar ldifde de forma a importar objetos é:
ldifde -i -f filename -k
O parâmetro -i especifica o modo de importação. O parâmetro -f identifica o nome
de arquivo a partir do qual importar. O parâmetro -k instrui ldifde a ignorar erros,
incluindo o erro “O objeto já existe”. A opção suppress errors é útil na importação de
objetos para garantir que todos os objetos possíveis sejam criados, em vez de parar
quando a importação está parcialmente completa.
Você não pode usar ldifde para importar senhas, pois as senhas em um arquivo LDIF
não estariam seguras. Como resultado, as contas de usuário criadas por ldifde têm
uma senha em branco e estão desabilitadas.
O que são comandos DS?
O Windows Server 2012 inclui ferramentas de linha de comando chamadas de
comandos DS, que são adequados para uso em scripts. Você pode usar ferramentas
de linha de comando DS para criar, visualizar, modificar e remover objetos do AD DS.
A tabela a seguir descreve ferramentas de linha de comando DS.
Ferramenta Descrição
DSadd Cria objetos do AD DS.
DSget Exibe propriedades de objetos do AD DS.
DSquery Procura objetos do AD DS.
DSmod Modifica objetos do AD DS.
DSrm Remove objetos do AD DS.
DSmove Move objetos do AD DS.
Exemplos de comandos para o gerenciamento de usuários
Veja a seguir alguns exemplos de comandos DS que você pode digitar em um
prompt de comando.
Para modificar o departamento de uma conta de usuário, digite:
dsmod user "cn=Joe Healy,ou=Managers,dc=adatum,dc=com" -dept IT
Para exibir o email de uma conta de usuário, digite:
dsget user "cn=Joe Healy,ou=Managers,dc=adatum,dc=com" -email
Para excluir uma conta de usuário, digite:
dsrm "cn=Joe Healy,ou=Managers,dc=adatum,dc=com"
Para criar uma nova conta de usuário, digite:
dsadd user "cn=Joe Healy,ou=Managers,dc=adatum,dc=com"
Pergunta: Que critérios você pode usar para escolher entre csvde, ldifde e oscomandos DS?
Lição 2: Como usar o Windows PowerShell para
administração do AD DS
O Windows PowerShell é o ambiente de script preferencial no Windows Server 2012.
Ele é muito mais fácil de usar em comparação às linguagens de script anteriores,
como o Microsoft® Visual Basic Scripting Edition (VBScript). O Windows PowerShell
inclui uma ampla lista de cmdlets para gerenciar objetos do AD DS. Você pode usar
cmdlets para criar, modificar e remover contas de usuário, grupos, contas de
computador e unidades organizacionais (UOs).
Objetivos da lição
Ao concluir esta lição, você será capaz de:
• Usar cmdlets do Windows PowerShell para gerenciar contas de usuário.
• Usar cmdlets do Windows PowerShell para gerenciar grupos.
• Usar cmdlets do Windows PowerShell para gerenciar contas de computador.
• Usar cmdlets do Windows PowerShell para gerenciar UOs.
Como usar cmdlets do Windows PowerShell para gerenciar
contas de usuário
Você pode usar cmdlets do Windows PowerShell para criar, modificar e excluir contas
de usuário. Esses cmdlets podem ser usados para operações individuais ou como
parte de um script para realizar operações em massa. Alguns dos cmdlets para o
gerenciamento de contas de usuário estão listados na tabela a seguir.
Cmdlet Descrição
New-ADUser Cria contas de usuário.
Set-ADUser Modifica propriedades de contas de usuário.
Remove-ADUser Exclui contas de usuários.
Set-ADAccountPassword Redefine a senha de uma conta de usuário.
Set-ADAccountExpiration Modifica a data de expiração de uma conta de usuário.
Unlock-ADAccount Desbloqueia uma conta de usuário quando ela é bloqueada depois de
exceder o número aceito de tentativas de logon incorretas.
Enable-ADAccount Habilita uma conta de usuário.
Disable-ADAccount Desabilita uma conta de usuário.
Criar novas contas de usuário
Ao usar o cmdlet New-ADUser para criar novas contas de usuário, você pode definir
a maioria das propriedades do usuário, incluindo uma senha. Por exemplo:
• Se você não usar o parâmetro -AccountPassword, nenhuma senha será definida, e
a conta de usuário ficará desabilitada. O parâmetro -Enabled não pode ser
definido como $true quando nenhuma senha está definida.
• Se você usar o parâmetro -AccountPassword para especificar uma senha, será
necessário especificar uma variável que contenha a senha como uma cadeia de
caracteres segura ou optar por receber um prompt de senha. Uma cadeia de
caracteres segura é criptografada na memória. Se você definir uma senha, será
possível habilitar a conta de usuário definindo o parâmetro -Enabled como $true.
Alguns parâmetros comuns usados para o cmdlet New-ADUser estão listados na
tabela a seguir.
Parâmetro Descrição
AccountExpirationDate Define a data de expiração da conta de usuário.
AccountPassword Define a senha para a conta de usuário.
ChangePasswordAtLogon Exige que a conta de usuário troque de senha no próximo logon.
Department Define o departamento para a conta de usuário.
Habilitado Define se a conta de usuário está habilitada ou desabilitada.
HomeDirectory Define o local do diretório base para uma conta de usuário.
HomeDrive Define as letras de unidade que são mapeadas para o diretório base de
uma conta de usuário.
GivenName Define o nome de uma conta de usuário.
Surname Define o sobrenome de uma conta de usuário.
Path Define a UO ou o contêiner em que a conta de usuário será criada.
Veja a seguir um exemplo de comando que você pode usar para criar uma conta de
usuário com um prompt de senha:
New-ADUser "Sten Faerch" -AccountPassword (Read-Host -
AsSecureString "Digitar senha")
-Department IT
Pergunta: Todos os parâmetros de cmdlets que você usa para gerenciar contasde usuário são os mesmos?
Como usar cmdlets do Windows PowerShell para gerenciar
grupos
Você pode usar o Windows PowerShell para criar, modificar e excluir grupos. Esses
cmdlets podem ser usados para operações individuais ou como parte de um script
para realizar operações em massa.
Alguns dos cmdlets para o gerenciamento de grupos estão listados na tabela a
seguir.
Cmdlet Descrição
New-ADGroup Cria novos grupos.
Set-ADGroup Modifica as propriedades de grupos.
Get-ADGroup Exibe as propriedades de grupos.
Remove-ADGroup Exclui grupos.
Add-ADGroupMember Adiciona membros a grupos.
Get-ADGroupMember Exibe a associação de grupos.
Remove-ADGroupMember Remove membros de grupos.
Add-ADPrincipalGroupMembership Adiciona uma associação de grupo a objetos.
Get-ADPrincipalGroupMembership Exibe a associação de grupo de objetos.
Remove-ADPrincipalGroupMembership Remove a associação de grupo de um objeto.
Criar novos grupos
Você pode usar o cmdlet New-ADGroup para criar grupos. No entanto, quando você
cria grupos usando o cmdlet New-ADGroup, você deve usar o parâmetro
GroupScope além do nome do grupo. Esse é o único parâmetro necessário. A tabela
a seguir lista os parâmetros comumente usados para New-ADGroup.
Parâmetro Descrição
Name (Nome) Define o nome do grupo.
GroupScope Define o escopo do grupo como DomainLocal, Global ou Universal. Você deve
fornecer esse parâmetro.
DisplayName Define o nome de exibição LDAP do objeto.
GroupCategory Define se é um grupo de segurança ou um grupo de distribuição. Se você não
especificar nada, um grupo de segurança será criado.
ManagedBy Define um usuário ou grupo que pode gerenciar o grupo.
Path Define a UO ou o contêiner no qual o grupo é criado.
SamAccountName Define um nome que é compatível com sistemas operacionais mais antigos.
O comando a seguir é um exemplo do que você pode digitar em um prompt do
Windows PowerShell para criar um novo grupo:
New-ADGroup -Name "CustomerManagement" -Path
"ou=managers,dc=adatum,dc=com" -GroupScope
Global -GroupCategory Security
Gerenciar a associação a um grupo
Existem dois conjuntos de cmdlets que você pode usar para gerenciar a associação a
um grupo: *-ADGroupMember e *-ADPrincipalGroupMembership. A distinção
entre esses dois conjuntos de cmdlets é a perspectiva usada ao modificar a
associação de grupo. Esses conjuntos são:
• Os cmdlets *-ADGroupMember modificam a associação de um grupo. Por
exemplo, você pode adicionar ou remover membros de um grupo.
o Não é possível conectar uma lista de membros a esses cmdlets.
o É possível transmitir uma lista de grupos para esses cmdlets.
• Os cmdlets *-ADPrincipalGroupMembership modificam a associação de grupo
de um objeto, como um usuário. Por exemplo, você pode modificar uma conta de
usuário para adicioná-la como membro de um grupo.
o É possível conectar uma lista de membros a esses cmdlets.
o Não é possível fornecer uma lista de grupos para esses cmdlets.
Observação: Ao conectar uma lista de objetos a um cmdlet, vocêtransmite essa lista para o cmdlet.
O comando a seguir pode ser usado para adicionar um membro a um grupo:
Add-ADGroupMember CustomerManagement -Members "Joe"
Como usar cmdlets do Windows PowerShell para gerenciar
contas de computador
Você pode usar o Windows PowerShell para criar, modificar e excluir contas de
computador. Esses cmdlets podem ser usados para operações individuais ou como
parte de um script para realizar operações em massa. Alguns dos cmdlets para o
gerenciamento de contas de computador estão listados na tabela a seguir.
Cmdlet Descrição
New-ADComputer Cria uma nova conta de computador.
Set-ADComputer Modifica as propriedades de uma conta de computador.
Get-ADComputer Exibe as propriedades de uma conta de computador.
Remove-ADComputer Exclui uma conta de computador.
Test-ComputerSecureChannel Verifica ou repara a relação de confiança entre um computador e
o domínio.
Reset-ComputerMachinePassword Redefine a senha para uma conta de computador.
Criar novas contas de computador
Você pode usar o cmdlet New-ADComputer para criar uma nova conta de
computador antes de o computador ingressar no domínio. Isso pode ser feito para
que você possa criar a conta de computador na UO correta antes de implantar o
computador.
A tabela a seguir lista os parâmetros comumente usados para New-ADComputer.
Parâmetro Descrição
Name (Nome) Define o nome da conta de computador.
Path Define a UO ou o contêiner em que a conta de computador será criada.
Habilitado Define se a conta de computador está habilitada ou desabilitada. Por padrão, a
conta de computador está habilitada, e uma senha aleatória é gerada.
Veja a seguir um exemplo que você pode usar para criar uma conta de computador:
New-ADComputer -Name LON-SVR8 -Path
"ou=marketing,dc=adatum,dc=com" -Enabled $true
Reparar a relação de confiança para uma conta de computador
Você pode usar o cmdlet Test-ComputerSecureChannel com o parâmetro -Repair
para reparar uma relação de confiança perdida entre um computador e o domínio.
Você deve executar o cmdlet no computador com a relação de confiança perdida.
Veja a seguir um comando que pode ser usado para reparar a relação de confiança
para uma conta de computador:
Test-ComputerSecureChannel -Repair
Como usar cmdlets do Windows PowerShell para gerenciar
UOs
Você pode usar cmdlets do Windows PowerShell para criar, modificar e excluir UOs.
Esses cmdlets podem ser usados para operações individuais ou como parte de um
script para realizar operações em massa.
Alguns dos cmdlets para o gerenciamento de UOs estão listados na tabela a seguir.
Cmdlet Descrição
New-ADOrganizationalUnit Cria UOs.
Set-ADOrganizationalUnit Modifica as propriedades de UOs.
Get-ADOrganizationalUnit Exibe as propriedades de UOs.
Remove-ADOrganizationalUnit Exclui UOs.
Criar novas UOs
Você pode usar o cmdlet New-ADOrganizationalUnit para criar uma nova UO de
forma a representar departamentos ou locais físicos dentro da sua organização.
A tabela a seguir mostra os parâmetros usados com frequência para o cmdlet New-
ADOrganizationalUnit.
Parâmetro Descrição
Name (Nome) Define o nome da nova UO.
Path Define o local da nova UO.
ProtectedFromAccidentalDeletion Impede que a UO seja excluída acidentalmente. O valor padrão é
$true.
O seguinte é um exemplo que você pode usar quando deseja criar uma nova UO:
New-ADOrganizationalUnit -Name Sales -Path
"ou=marketing,dc=adatum,dc=com"
-ProtectedFromAccidentalDeletion $true
Pergunta: No exemplo do slide, o parâmetroProtectedFromAccidentalDeletion é necessário?
Lição 3: Execução de operações em massa com o
Windows PowerShell
O Windows PowerShell é um poderoso ambiente de script que você pode usar para
realizar em massa operações que normalmente seriam entediantes de realizar
manualmente. Você também pode realizar algumas operações em massa em
ferramentas gráficas.
Para realizar operações em massa usando o Windows PowerShell, primeiro você deve
entender como criar consultas para uma lista de objetos do AD DS e como trabalhar
com arquivos .csv. Em seguida, pode criar scripts que realizam as operações em
massa necessárias.
Objetivos da lição
Ao concluir esta lição, você será capaz de:
• Descrever operações em massa.
• Usar ferramentas gráficas para realizar operações em massa.
• Consultar objetos do AD DS usando o Windows PowerShell.
• Modificar objetos do AD DS usando o Windows PowerShell.
• Usar arquivos .csv com o Windows PowerShell.
• Modificar e executar scripts do Windows PowerShell para realizar operações em
massa.
O que são operações em massa?
Uma operação em massa é uma única ação que altera vários objetos. Realizar uma
operação em massa é muito mais rápido do que alterar vários objetos
individualmente. Além disso, o processo também pode ser mais preciso, pois realizar
várias ações individuais aumenta a probabilidade de erros tipográficos.
O processo geral para a realização de operações em massa é o seguinte:
1. Defina uma consulta. Use a consulta para selecionar os objetos que você deseja
modificar. Por exemplo, talvez você queira modificar todas as contas de usuários
em uma UO específica.
2. Modifique os objetos definidos pela consulta. Ao usar ferramentas gráficas, você
normalmente seleciona os objetos que deseja modificar e então edita as
propriedades desses objetos. Ao usar ferramentas de linha de comando, existe a
opção de usar uma lista de objetos ou variáveis para identificar os objetos que
você deseja modificar.
Operações em massa podem ser realizadas com ferramentas gráficas, em um prompt
de comando ou com o uso de scripts. Cada método para a realização de operações
em massa tem capacidades diferentes.
Por exemplo:
• Ferramentas gráficas tendem a ser limitadas nas propriedades que elas podem
modificar.
• Ferramentas de linha de comando tendem a ser mais flexíveis do que ferramentas
gráficas na definição de consultas e apresentam mais opções para modificar
propriedades de objetos.
• Scripts podem combinar várias ações de linha de comando para proporcionar
maior complexidade e flexibilidade.
Demonstração: Como usar ferramentas gráficas para
realizar operações em massa
Você pode usar as ferramentas gráficas Centro Administrativo do Active Directory e
snap-in Usuários e Computadores do Active Directory para modificar as propriedades
de vários objetos ao mesmo tempo.
Observação: Ao usar ferramentas gráficas para modificar várias contas deusuário ao mesmo tempo, você fica limitado a modificar as propriedades queaparecem na interface do usuário.
Para realizar uma operação em massa usando ferramentas gráficas, siga estas etapas:
1. Faça uma pesquisa ou crie um filtro para exibir os objetos que você deseja
modificar.
2. Selecione os objetos.
3. Examine as propriedades dos objetos.
4. Modifique as propriedades que você deseja alterar.
Nesta demonstração, você verá como:
• Criar uma consulta para todos os usuários.
• Configurar o atributo Company para todos os usuários.
• Verificar se o atributo Company foi modificado.
Etapas da demonstração Criar uma consulta para todos os
usuários
1. Inicie 24410B-LON-DC1 e entre como ADATUM\Administrador usando a
senha Pa$$w0rd.
2. Em LON-DC1, abra a Central Administrativa do Active Directory.
3. Navegue até Pesquisa Global e adicione os critérios O tipo de objeto é
usuário/inetOrgPerson/ computador/grupo/unidade organizacional.
4. Verifique se os critérios adicionados são para o tipo Usuário e faça a pesquisa.
Configurar o atributo Company para todos os usuários
1. Selecione todas as contas de usuário e modifique suas propriedades.
2. Digite Empresa como A. Datum.
Verificar se o atributo Company foi modificado
• Abra as propriedades de Adam Barr e verifique se Company é A. Datum.
Consulta de objetos com o Windows PowerShell
No Windows PowerShell, os cmdlets Get-* são usados para obter listas de objetos,
como contas de usuário. Você também pode usar esses cmdlets para gerar consultas
em busca de objetos nos quais é possível realizar operações em massa.
A tabela a seguir lista os parâmetros comumente usados com os cmdlets Get-AD*.
Parâmetro Descrição
SearchBase Define o caminho do AD DS para iniciar a pesquisa, por exemplo, em busca do domínio
ou de uma UO.
SearchScope Define em que nível abaixo de SearchBase uma pesquisa deve ser realizada. Você pode
optar por procurar apenas na base, um nível baixo ou por toda a subárvore.
ResultSetSize Define quantos objetos devem ser retornados em resposta a uma consulta. Para
garantir que todos os objetos sejam retornados, convém definir esse valor como $null.
Propriedades Define quais propriedades de objeto devem ser retornadas e exibidas. Para retornar
todas as propriedades, digite um asterisco (*). Não é necessário usar esse parâmetro
para usar uma propriedade para filtragem.
Criar uma consulta
Você pode usar o parâmetro Filter ou o parâmetro LDAPFilter para criar consultas
para objetos com os cmdlets Get-AD*. O parâmetro Filter é usado para consultas
escritas no Windows PowerShell. O parâmetro LDAPFilter é usado para consultas
escritas como cadeias de caracteres de consulta LDAP.
É preferível usar o Windows PowerShell porque:
• É mais fácil escrever consultas no Windows PowerShell.
• É possível usar variáveis dentro de consultas.
• Há uma conversão automática de tipos de variáveis quando necessário.
A tabela a seguir lista os operadores comuns que você pode usar no Windows
PowerShell.
Operador Descrição
-eq Igual a
-ne Diferente de
-lt Menor que
-le Menor que ou igual a
-gt Maior que
-ge Maior que ou igual a
-like Usa curingas para a correspondência de padrões
Veja a seguir um comando que pode ser usado para exibir todas as propriedades de
uma conta de usuário:
Get-ADUser Administrador -Properties *
Veja a seguir um comando que pode ser usado para retornar todas as contas de
usuário na UO Marketing e todas as suas UOs filhas:
Get-ADUser -Filter * -SearchBase "ou=Marketing,dc=adatum,dc=com"
-SearchScope subtree
Veja a seguir um comando que pode ser usado para mostrar todas as contas de
usuário cuja última data de logon é anterior a uma data específica:
Get-ADUser -Filter {lastlogondate -lt "março 29, 2013"}
Veja a seguir um comando que pode ser usado para mostrar todas as contas de
usuário no departamento de Marketing cuja última data de logon é anterior a uma
data específica:
Get-ADUser -Filter {(lastlogondate -lt "março 29, 2013") |
(department -eq "Marketing")}
Leitura adicional: Para mais informações sobre filtragem com cmdlets Get
AD*, consulte about_ActiveDirectory_Filter emhttp://go.microsoft.com/fwlink/?LinkID=266740.
Pergunta: Qual é a diferença entre usar -eq e -like ao comparar cadeias decaracteres?
Modificação de objetos com o Windows PowerShell
Para realizar uma operação em massa, você precisa transmitir a lista de objetos
consultados para outro cmdlet de forma a modificar esses objetos. Na maioria dos
casos, os cmdlets Set-AD* para modificar os objetos.
Para transmitir a lista de objetos consultados a outro cmdlet para processamento
adicional, use o caractere de barra vertical (|). O caractere de barra vertical transmite
cada objeto da consulta para um segundo cmdlet, que então realiza uma operação
especificada em cada objeto.
Veja a seguir um comando que pode ser usado para contas que não têm o atributo
Company definido. Ela gera uma lista de contas de usuário e define o atributo
Company como A. Datum
Get-ADUser -Filter {company -notlike "*"} | Set-ADUser -Company
"A. Datum"
Veja a seguir um comando que pode ser usado para gerar uma lista de contas de
usuário que não fizeram logon desde uma data especificada e, em seguida,
desabilitar essas contas:
Get-ADUser -Filter {lastlogondate -lt "março 29, 2013"} |
Disable-ADAccount
Usar objetos de um arquivo de texto
Em vez de usar uma lista de objetos a partir de uma consulta para realizar uma
operação em massa, você pode usar uma lista de objetos em um arquivo de texto.
Isso é útil quando você possui uma lista de objetos para modificar ou remover, e não
é possível gerar essa lista com o uso de uma consulta. Por exemplo, o departamento
de recursos humanos pode gerar uma lista de contas de usuário a serem
desabilitadas. Não existe uma consulta que possa identificar uma lista de usuários que
deixaram a organização.
Quando você usa um arquivo de texto para especificar uma lista de objetos, esse
arquivo deve ter o nome de cada objeto em uma única linha.
A seguir, um comando que você poderia usar para desabilitar as contas de usuário
que estão listadas em um arquivo de texto:
Get-Content C:\users.txt | Disable-ADAccount
Pergunta: Que atributos de uma conta de usuário você pode usar ao criar umaconsulta usando o parâmetro Filter?
Como trabalhar com arquivos CSV
Um arquivo .csv pode conter muito mais informações do que uma simples lista.
Semelhante a uma planilha, um arquivo .csv pode ter várias linhas e colunas de
informações. Cada linha no arquivo .csv representa um único objeto, e cada coluna
nesse arquivo representa uma propriedade do objeto. Isso é útil para operações em
massa, como criar contas de usuário, em que várias informações sobre cada objeto
são necessárias.
É possível usar o cmdlet Import-CSV para ler o conteúdo de um arquivo .csv em uma
variável e então trabalhar com os dados. Após a importação dos dados para a
variável, você pode fazer referência a cada linha individual de dados e a cada coluna
individual de dados. Cada coluna de dados tem um nome que se baseia na linha de
cabeçalho (a primeira linha) do arquivo .csv. É possível fazer referência a cada coluna
por nome.
Veja a seguir um exemplo de arquivo .csv com uma linha de cabeçalho:
FirstName,LastName,Department
Greg,Guzik,IT
Robin,Young,Research
Qiong,Wu,Marketing
Usar Foreach para processar dados CSV
Em muitos casos, você está criando um script que será reutilizado para vários
arquivos .csv e não sabe quantas linhas existem em cada arquivo .csv. É possível usar
um loop foreach para processar cada linha em um arquivo .csv. Esse tipo de loop
não exige que você saiba quantas linhas existem. Durante cada iteração do loop
foreach, uma linha do arquivo .csv é importada para uma variável que pode ser
processada.
Veja a seguir um comando que pode ser usado para importar um arquivo .csv para
uma variável e usar um loop foreach para exibir o primeiro nome de cada linha em
um arquivo .csv:
$users=Import-CSV C:\users.csv
Foreach ($i in $users) {
Write Host "The first name is:" $i.FirstName
}
Pergunta: No loop foreach, como $i é alterada?
Demonstração: Execução de operações em massa com o
Windows PowerShell
Você pode usar um script para combinar vários comandos do Windows PowerShell
de forma a realizar tarefas mais complexas. Em um script, você costuma usar variáveis
e loops para processar dados. Os scripts do Windows PowerShell têm uma extensão
.ps1.
A política de execução em um servidor determina se os scripts podem ser
executados. A política de execução padrão no Windows Server 2012 é
RemoteSigned. Isso significa que scripts locais podem ser executados sem serem
digitalmente assinados. Você pode controlar a política de execução usando o cmdlet
Set-ExecutionPolicy.
Nesta demonstração, você verá como:
• Configurar um departamento para os usuários.
• Criar uma UO.
• Executar um script para criar novas contas de usuário.
• Verificar se as novas contas de usuários foram criadas.
Etapas da demonstração Configurar um departamento para os
usuários
1. Inicie 24410B-LON-DC1 e entre como ADATUM\Administrador usando a
senha Pa$$w0rd.
2. Em LON-DC1, abra um prompt do Windows PowerShell.
3. No prompt do Windows PowerShell, procure contas de usuário na UO Research
usando o seguinte comando:
Get-ADUser –Filter * -SearchBase
"ou=Research,dc=adatum,dc=com"
4. Defina o atributo Department de todos os usuários da UO Research usando o
seguinte comando:
Get-ADUser –Filter * -SearchBase
"ou=Research,dc=adatum,dc=com" | Set-ADUser -
Department Research
5. Exiba uma lista de usuários formatada em tabela no departamento Research.
Exiba o nome distinto e o departamento usando o seguinte comando:
Get-ADUser –Filter 'department -eq "Research"' | Format-Table
DistinguishedName,Department
6. Use o parâmetro Properties para permitir que o comando anterior mostre o
departamento corretamente. Usar o seguinte comando:
Get-ADUser –Filter 'department -eq "Research"' -Properties
Department | Format-Table
DistinguishedName,Department
Criar uma UO
• No prompt do Windows PowerShell, crie uma nova UO denominada
LondonBranch usando o seguinte comando:
New-ADOrganizationalUnit LondonBranch -Path "dc=adatum,dc=com"
Executar um script para criar novas contas de usuário
1. Abra E:\Labfiles\Mod04\DemoUsers.csv e leia a linha de cabeçalho.
2. Edite DemoUsers.ps1 e examine o conteúdo do script. Note que o script:
o Faz referência ao local do arquivo .csv.
o Usa um loop foreach para processar o conteúdo do arquivo .csv.
o Faz referência às colunas pelo cabeçalho no arquivo .csv.
3. No prompt do Windows PowerShell, mude para o diretório E:\Labfiles\Mod04
e execute o seguinte comando:
.\DemoUsers.ps1
Verificar se as novas contas de usuários foram criadas
1. No Gerenciador do Servidor, abra a Central Administrativa do Active
Directory.
2. No Centro Administrativo do Active Directory, navegue até Adatum
(local)>LondonBranch e verifique se as contas de usuário foram criadas.
Observe que as contas estão desabilitadas porque nenhuma senha foi definida
durante a criação.
Laboratório: Automação da administração do AD DS
usando o Windows PowerShell
Cenário
A A. Datum Corporation é uma empresa global de engenharia e manufatura com
sede em Londres, Inglaterra. Um escritório de TI e um data center estão localizados
em Londres para dar suporte a Londres e a outros locais. Recentemente, a A. Datum
implantou uma infraestrutura do Windows Server 2012 com clientes Windows 8.
Você trabalha para a A. Datum há vários anos como especialista em suporte para
desktop. Neste cargo, você visitou computadores desktop para solucionar problemas
com aplicativos e redes. Você aceitou uma promoção recentemente para a equipe de
suporte de servidores. Uma de suas primeiras atribuições foi configurar o serviço de
infraestrutura para uma nova filial.
Como parte da configuração de uma nova filial, você precisa criar contas de usuário e
de grupo. Não é eficiente criar vários usuários com ferramentas gráficas e, portanto,
você usará o Windows PowerShell.
Objetivos
Depois de concluir este laboratório, você será capaz de:
• Criar contas de usuários e grupos usando o Windows PowerShell.
• Usar o Windows PowerShell para criar contas de usuário em massa.
• Usar o Windows PowerShell para modificar contas de usuário em massa.
Configuração do laboratório
Tempo previsto: 45 minutos
Máquinas virtuais 24410B-LON-DC1
24410B-LON-CL1
Nome de usuário ADATUM\Administrador
Senha Pa$$w0rd
Neste laboratório, você usará o ambiente de máquina virtual disponível. Antes de
iniciar o laboratório, você deve concluir as seguintes etapas:
1. No computador host, clique em Iniciar, aponte para Ferramentas
Administrativas e clique em Gerenciador do Hyper-V.
2. No Gerenciador do Hyper-V®, clique em 24410B-LON-DC1 e, no painel Ações,
clique em Iniciar.
3. No painel Ações, clique em Conectar. Aguarde a inicialização da máquina virtual.
4. Entre usando as seguintes credenciais:
o Nome de usuário: ADATUM\Administrador
o Senha: Pa$$w0rd
5. Repita as etapas 2 e 3 para 24410B-LON-CL1. Não entre em LON-CL1 até
receber instruções.
Exercício 1: Criação de contas de usuário e grupo usando o
Windows PowerShell
Cenário
A. Datum Corporation tem uma série de scripts que foram usados no passado para
criar contas de usuários com o uso de ferramentas de linha de comando. Foi
determinado que todos os scripts futuros serão feitos com o uso do Windows
PowerShell. Como primeira etapa na criação de scripts, você precisa identificar a
sintaxe necessária para gerenciar objetos do AD DS no Windows PowerShell.
As principais tarefas deste exercício são:
1. Criar contas de usuários usando o Windows PowerShell
2. Criar um grupo usando o Windows PowerShell
Tarefa 1: Criar contas de usuários usando o Windows PowerShell
1. Em LON-DC1, abra um prompt do Windows PowerShell.
2. No prompt do Windows PowerShell, crie uma nova UO denominada
LondonBranch digitando o seguinte comando:
New-ADOrganizationalUnit LondonBranch
3. Crie uma nova conta de usuário para Ty Carlson na UO LondonBranch usando o
seguinte comando:
New-ADUser -Name Ty -DisplayName "Ty Carlson" -GivenName Ty
-Surname Carlson -Path
"ou=LondonBranch,dc=adatum,dc=com"
4. Altere a senha em branco da nova conta para Pa$$w0rd usando o seguinte
comando:
Set-ADAccountPassword Ty
5. Habilite a nova conta de usuário usando o seguinte comando:
Enable-ADAccount Ty
6. Em LON-CL1, entre como Ty usando uma senha de Pa$$w0rd.
7. Verifique se a entrada foi bem-sucedida e saia de LON-CL1.
Tarefa 2: Criar um grupo usando o Windows PowerShell
1. Em LON-DC1, no prompt do Windows PowerShell, crie um novo grupo de
segurança global para os usuários na filial de Londres, usando o seguinte
comando:
New-ADGroup LondonBranchUsers -Path
"ou=LondonBranch,dc=adatum,dc=com" -GroupScope
Global -GroupCategory Security
2. No prompt do Windows PowerShell, adicione Ty como membro de
LondonBranchUsers usando o seguinte comando:
Add-ADGroupMember LondonBranchUsers -Members Ty
3. No prompt do Windows PowerShell, confirme que Ty foi adicionado como
membro de LondonBranchUsers usando o seguinte comando:
Get-ADGroupMember LondonBranchUsers
Resultados: Depois de concluir este exercício, você terá criado contas de usuário egrupos usando o Windows PowerShell.
Exercício 2: Como usar o Windows PowerShell para criar contas de
usuário em massa
Cenário
Você recebeu um arquivo .csv que contém uma longa lista de novos usuários para a
filial. Seria ineficiente criar esses individualmente com ferramentas gráficas. Em vez
disso, você usará um script do Windows PowerShell para criar os usuários. Uma
colega experiente com scripts forneceu a você um script que ela mesma criou. Você
precisa modificar esse script para que ele corresponda ao formato do seu arquivo
.csv.
As principais tarefas deste exercício são:
1. Preparar o arquivo .csv
2. Preparar o script
3. Executar o script
Tarefa 1: Preparar o arquivo .csv
1. Em LON-DC1, leia o conteúdo em E:\Labfiles\Mod04\LabUsers.ps1 para
identificar os requisitos de cabeçalho para o arquivo .csv
2. Edite o conteúdo em C:\Labfiles\Mod04\LabUsers.csv e adicione o cabeçalho
apropriado.
Tarefa 2: Preparar o script
1. Em LON-DC1, use o ISE (Ambiente de Script Integrado) do Windows PowerShell
para modificar as variáveis em LabUsers.ps1:
o $csvfile: E:\Labfiles\Mod04\labUsers.csv
o $OU: "ou=LondonBranch,dc=adatum,dc=com"
2. Salve o arquivo LabUsers.ps1 modificado.
3. Examine o conteúdo do script.
Tarefa 3: Executar o script
1. Em LON-DC1, abra um prompt do Windows PowerShell e execute
E:\Labfiles\Mod04\LabUsers.ps1.
2. No prompt do Windows PowerShell, use o seguinte comando para verificar se
os usuários foram criados:
Get-ADUser -Filter * -SearchBase
"ou=LondonBranch,dc=adatum,dc=com"
3. Em LON-CL1, entre como Luka usando uma senha de Pa$$w0rd.
Resultados: Depois de concluir este exercício, você terá usado o WindowsPowerShell para criar contas de usuário em massa.
Exercício 3: Como usar o Windows PowerShell para modificar
contas de usuário em massa
Cenário
Você recebeu uma solicitação para atualizar todas as contas de usuário na UO da
nova filial com o endereço correto do novo edifício. Essa solicitação também inclui
garantir que todas as novas contas de usuário na filial sejam configuradas para forçar
os usuários a alterarem suas senhas no próximo logon.
As principais tarefas deste exercício são:
1. Forçar todas as contas de usuário em LondonBranch a alterar suas senhas no
próximo logon
2. Configurar o endereço para contas de usuário em LondonBranch
Tarefa 1: Forçar todas as contas de usuário em LondonBranch a alterar suas
senhas no próximo logon
1. Em LON-DC1, abra um prompt do Windows PowerShell.
2. No prompt do Windows PowerShell, crie uma consulta para contas de usuário
na UO LondonBranch usando o seguinte comando:
Get-ADUser -Filter * -SearchBase
"ou=LondonBranch,dc=adatum,dc=com" | Format-Wide
DistinguishedName
3. No prompt do Windows PowerShell, modifique o comando anterior para forçar
todas as contas de usuário a alterarem suas senhas no próximo logon usando o
seguinte comando:
Get-ADUser -Filter * -SearchBase
"ou=LondonBranch,dc=adatum,dc=com" | Set-ADUser -
ChangePasswordAtLogon $true
Tarefa 2: Configurar o endereço para contas de usuário em LondonBranch
1. Em LON-DC1, abra a Central Administrativa do Active Directory.
2. Abra as propriedades de todas as contas de usuário em LondonBranch.
3. Defina o endereço para vários usuários, da seguinte maneira:
o Rua: Filial
o Cidade: Londres
o País/Região: Reino Unido
Resultados: Depois de concluir este exercício, você terá modificado contas deusuário em massa.
Para se preparar para o próximo módulo
Quando terminar o laboratório, retorne todas as máquinas virtuais para o seu estado
inicial, seguindo estas etapas:
1. No computador host, inicie o Gerenciador Hyper-V.
2. Na lista Máquinas Virtuais, clique com o botão direito do mouse em 24410B-
LON-CL1 e clique em Reverter.
3. Na caixa de diálogo Reverter Máquina Virtual, clique em Reverter.
4. Repita as etapas de 2 a 3 para 24410B-LON-DC1.
Revisão e informações complementares do módulo
Perguntas de revisão
Pergunta: Um colega está criando um script do Windows PowerShell que criacontas de usuário a partir de dados em um arquivo .csv. No entanto, esse scriptestá apresentando erros ao tentar definir uma senha padrão. Por que isso podeestar acontecendo?
Pergunta: Você é o administrador de um distrito escolar que cria 20.000 novascontas de usuário para os alunos todos os anos. O sistema de administraçãodos alunos pode gerar uma lista dos novos alunos e, em seguida, exportá-lacomo um arquivo .csv. Após a exportação dos dados para um arquivo .csv, dequais informações você precisa para trabalhar com os dados em um script?
Pergunta: O departamento de Pesquisa na sua organização foi renomeadocomo “Pesquisa e Desenvolvimento”. Você precisa atualizar a propriedadeDepartment dos usuários no departamento de Pesquisa para refletir essaalteração.Você criou uma consulta para contas de usuário com a propriedade departmentdefinida como Pesquisa, usando o cmdlet Get-ADUser e o parâmetro -Filter.Qual é a próxima etapa para atualizar a propriedade department para Pesquisa eDesenvolvimento?
Recommended