PowerShell Code to Mass Manage Active Directory Objetos como usuários, grupos e computadores. É uma ferramenta de console muito básica no momento, mas na minha linha de trabalho achei muito poderosa, pois os usuários e computadores do Active Directory não têm alguns recursos importantes.
Para facilitar o trabalho do usuário, ele pode traduzir o domainOUOU a estrutura no nome Distinguished, que é necessário nas consultas para coletar objetos de uma OU. Ele também pode lidar com todas as exceções (OU inexistente, OU que não possui o tipo de objeto consultado, nome de usuário, nome do grupo, não há direitos suficientes para modificar grupos, criar arquivos) que encontrei até agora. Ele notifica o usuário de saídas bem -sucedidas, parcialmente bem -sucedidas e incorretas das operações. Ele também usa uma própria pasta (ad-Out, por padrão, é criada na raiz da unidade d:, mas pode ser modificada pelo usuário) para que não confunda o disco rígido do usuário.
Funciona sem RSAT (ferramentas de administração de servidor remoto) instaladas no computador?
Sim, e não. Basicamente, ele foi projetado para ser usado em um computador que possui o RSAT instalado, mas pode funcionar sem ele. Para fazer funcionar, você precisará de Microsoft.ActiveDirectory.Management.dll e Microsoft.ActiveDirectory.Management.resources.dll para ser colocado na mesma pasta que o arquivo PS1. Obviamente, não posso compartilhar essas DLLs (é preciso dizer que você nunca deve baixar DLLs de nenhuma fonte não confiável), mas se você as obtê, o programa funcionará sem o RSAT. Se um PC não tiver instalado o RSAT, nem essas duas DLLs na mesma pasta que o arquivo PS1, o programa não será executado (ele verifica essas duas condições no início e, se nenhuma delas não for atendida, não permitirá que você continue).
Onde posso encontrar essas DLLs?
Ironicamente, você precisará de um computador com o RSAT instalado. As DLLs estão em suas pastas com o mesmo nome em C:WindowsMicrosoft.NETassemblyGAC_64 ou GAC_32 no caso do sistema operacional de 32 bits.
Quais idiomas são suportados?
O programa suporta inglês e húngaro. Como meu idioma nativo é húngaro, a tradução em inglês provavelmente tem erros gramaticais e outros, embora eu espere que não muitos. Os comentários também estão em inglês. Caso você queira me ajudar com uma tradução para o seu idioma, ficaria muito agradecido, mas por conta própria não farei outras traduções.
Você planeja adicionar funções como adicionar um usuário a um grupo?
Planejo adicionar mais recursos, mas apenas aqueles que expandem a funcionalidade do ADUC (usuários e computadores do Active Directory), não vejo sentido em implementar recursos que já funcionam bem nele. Estou aberto a sugestões que podem tornar este programa mais útil.
É bom e tudo mais, mas você está falando sério que toda vez que eu gostaria de usá -lo, tenho que executar o script da linha de comando? Não poderia ser um executável adequado?
Ok, essa pode ser uma pergunta tão iniciante que ninguém neste site faria, mas desde que eu o coloquei lá, vou responder. Você pode compilar o arquivo PS1 com um executável com o PS2EXE sempre que desejar. https://gallery.technet.microsoft.com/scriptcenter/ps2exe-gui-convert-e7cb69d5 Não tente usar a versão GUI dos ex-ex-compilados, neste caso, isso realmente não funciona como pretendido.
Funções, melhorias
Outros planos
Em um futuro muito distante, planejo reescrever o código para ter uma GUI. Eu considerei C# e PowerShell, mas não tenho muita certeza de se vou realmente fazer isso. Meu principal objetivo com este programa foi dar aos administradores (nomeando meus colegas com zero conhecimento do PowerShell) uma ferramenta gratuita que eles podem usar, mesmo quando os aplicativos de terceiros são proibidos. Como é apenas um script do PowerShell (porém, mais longo, mas ainda), provavelmente é permitido usar para todos que têm direitos de administrador em seu Active Directory. Mas realmente não tenho certeza se o mesmo seria verdadeiro sobre um programa que também usa bibliotecas C#, em vez de confiar apenas no PowerShell.
Obviamente, estou ansioso para apresentar sugestões, relatórios de bugs ou qualquer outra coisa que você queira adicionar.