Início > Active Directory, Group Policy, Windows Server, Windows Server 2003/R2, Windows Server 2008/R2, Windows Server 2012/R2 > Redefinindo a permissão padrão para novas políticas de grupo

Redefinindo a permissão padrão para novas políticas de grupo

maio 31, 2014

Olá pessoal!

Hoje eu vou escrever um pouco sobre como delegar privilégios para um grupo específico ao container Group Policy Objects no console Group Policy Management Console.

É uma tarefa comum segmentar a administração de um domínio dependendo do tamanho de seu ambiente e nem sempre é algo intuitívo realizar este tipo de alteração. Nem sempre alterar as propriedades é suficiente para garantir este tipo de segmentação.

Este é o caso das políticas de grupo. Por padrão, apenas os grupos abaixo são delegados automaticamente para toda e qualquer política de grupo criada em um domínio:

ds-group-policy-permission-delegation-0001

Quando precisamos delegar algum privilégio no serviço de diretório, inserir um usuário e/ou um grupo no grupo Domain Admins pode não ser uma boa prática, pois os privilégios podem ir além do que se espera delegar e uma boa prática é segmentar os privilégios de forma correta, garantindo que apenas os direitos necessários sejam atribuídos a quem precisa desempenhar determinada função.

Vamos imaginar que você acabou de implementar uma infraestrutura de serviço de diretório em uma empresa e seguindo o desenho de papeis e responsabilidades dos membros do time de IT, você precise garantir que um grupo de pessoas seja capaz de administrar todas as políticas neste domínio, mas que este grupo não deve ser capaz de gerenciar outros objetos como OUs, usuários, grupos, etc.

Você então cria um grupo chamado GLOBAL_GPO_ADMINS e em seguida insere como membros deste grupo os usuários/grupos escolhidos como administradores de políticas de grupo tal como mostrado no exemplo abaixo:

ds-group-policy-permission-delegation-0002

Neste exemplo, vamos assumir que você possui equipes de IT locais em determinadas localidades e que cada localidade possui uma pessoa responsável por gerenciar políticas de grupo.

Você então acessa o console de gerenciamento de política de grupo (gpmc.msc), navega até ao container Group Policy Management > Forest: YourDomain > Domains > YourDomain > Group Policy Objects, acessa a guia Delegation e então insere o grupo GLOBAL_GPO_ADMINS com a eesperança de que ao criar uma política de grupo nova, que o grupo seja herdado deste local.

Após criar a política, você se pergunta: por que o grupo não foi replicado para a política criada abaixo deste container? Simples meu amigo! Muitos dos objetos no serviço de diretório seguem configurações disponíveis no esquema do serviço de diretório, o que não é explicitamente visível para quem acessa objetos por consoles que comumente utilizando para executar nossas tarefas diárias.

Então, como você delega ao grupo GLOBAL_GPO_ADMINS o privilégio de ser membro e quais privilégios este grupo terá nas políticas criadas abaixo deste container?

Você usa a partição de Schema para editar o classSchema responsável pelas permissões que cada política de grupo herda no momento de sua criação.

Mas como eu acesso a partição de Schema do serviço de diretório? Você utiliza o ADSIEdit para realizar esta tarefa. Pressione a tecla Windows + R para iniciar a caixa de diálogo Run, digite adsiedit.msc e pressione ENTER.

Você irá visualizar a janela como a mostrada abaixo.

ds-group-policy-permission-delegation-0003

Clique então com o botão direito sobre o container ADSI Edit no painel ao lado esquerdo, escolha a opção Connect to…, preencha os campos como mostrado na imagem abaixo e clique em OK.

ds-group-policy-permission-delegation-0004

Clique novamente com o botão sobre o container ADSI Edit no painel ao lado esquerdo, escolha a opção Connect to…, preencha os campos como mostrado na imagem abaixo e clique em OK.

ds-group-policy-permission-delegation-0005

Antes de prosseguirmos vamos coletar uma informação necessária para completar esta implementação que é o objectSid do grupo que desejamos delegar permissões para as políticas de grupo. Para realizar isto, navegue até o container onde o grupo GLOBAL_GPO_ADMINS está localizado, neste exemplo, ADSI Edit > Schema [YourServer] > Default Naming Context [YourServer] > DC=nosafeforwork,DC=local > OU=CorporateStructure > OU=Global > OU=Groups > CN=GLOBAL_GPO_ADMINS.

Clique com o botão direito sobre CN=GLOBAL_GPO_ADMINS e escolha Properties. Na janela de propriedades localize o atributo objectSid e tome nota do valor deste atributo, pois iremos utilizá-lo mais tarde, que neste caso é S-1-5-21-2632845334-1369412118-257669807-2921.

ds-group-policy-permission-delegation-0006

Navegue então até o container ADSI Edit > Schema [YourServer] > CN=Schema,CN=Configuration,DC=YourDomain,DC=YourExtension] e ao lado direito no painel de visualização, localize a classe de esquema CN-Group-Policy-Container como mostrado na imagem abaixo.

ds-group-policy-permission-delegation-0007

Clique então com o botão direito sobre a classe e escolha Properties. Na janela de propriedades localize o atributo defaultSecurityDescriptor como mostrado na imagem a seguir.

ds-group-policy-permission-delegation-0008

Após selecionar o atributo com um clique, clique no botão Edit no lado esquerdo inferior para editarmos o atributo e inserirmos o novo grupo.

Por padrão você irá encontrar algo semelhante ao mostrado abaixo neste atributo:

D:P(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;DA)(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;EA)(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;CO)(A;CI;RPWPCCDCLCLORCWOWDSDDTSW;;;SY)(A;CI;RPLCLORC;;;AU)(OA;CI;CR;edacfd8f-ffb3-11d1-b41d-00a0c968f939;;AU)(A;CI;LCRPLORC;;;ED)

A princípio pode parecer confuso a forma como as permissões estão definidas acima e o motivo é por que as permissões na partição de Schema são escritas usando um padrão chamado Security Descriptor Definition Language ou SDDL. Para mais informações sobre SDDL eu recomendo a leitura desta bibliotéca: http://msdn.microsoft.com/en-us/library/windows/desktop/aa379567(v=vs.85).aspx

Vamos agora inserir o nosso grupo de administradores de política de grupo chamado GLOBAL_GPO_ADMINS com os mesmos privilégios que os grupos Domain Admins e Enterprise Admins possuem por padrão. Para realizar isto, vamos combinar duas informações:

(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;DA) = permissões atribuídas ao grupo Domain Admins
S-1-5-21-2632845334-1369412118-257669807-2921 = SID do grupo GLOBAL_GPO_ADMINS

Substitua o SDDL DA em (A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;DA) pelo SID do grupo GLOBAL_GPO_ADMINS como mostrado abaixo:

(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;S-1-5-21-2632845334-1369412118-257669807-2921)

Em seguida adicione o novo SDDL ao final da SDDL padrão como mostrado abaixo:

D:P(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;DA)(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;EA)(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;CO)(A;CI;RPWPCCDCLCLORCWOWDSDDTSW;;;SY)(A;CI;RPLCLORC;;;AU)(OA;CI;CR;edacfd8f-ffb3-11d1-b41d-00a0c968f939;;AU)(A;CI;LCRPLORC;;;ED)(A;CI;RPWPCCDCLCLOLORCWOWDSDDTSW;;;S-1-5-21-2632845334-1369412118-257669807-2921)

Copie e cole o novo SDDL na campo Value como mostrado na imagem a seguir e clique em OK.

ds-group-policy-permission-delegation-0009

Sincronize o partição de Schema caso você possua 2 ou mais controladores de domínio em sua infraestrutura – leia: https://athiago.wordpress.com/2014/05/04/replicando-alteracoes-no-servico-de-diretorio-para-servidores-intrasite-e-intersite/

Vamos verificar agora como ficou a delegação de permissões para novas políticas. Se o console GPMC.MSC estiver aberto, feche-o primeiramente. Abra o console de Gerenciamento de Política de Grupo (gpmc.msc) e navegue até o container Group Policy Management > Forest: YourDomain > Domains > YourDomain > Group Policy Objects.

Clique com o botão direito sobre Group Policy Objects, escolha New, atribua um nome a política de grupo, deixe como None em Source Starter GPO e clique em OK.

ds-group-policy-permission-delegation-0010

Selecione a política que você acabou de criar e em seguida clique na guia Delegation como mostrado na imagem abaixo:

ds-group-policy-permission-delegation-0011

Como podemos ver, o grupo GLOBAL_GPO_ADMINS foi inserido por padrão com as mesmas permissões do grupo Domain Admins como dito anteriormente.

Desta forma você pode controlar quem deve ter acesso as políticas criadas em seu domínio. Vale lembra que este tipo de procedimento não afeta as políticas já criadas com o SDDL padrão e que neste caso, estamos presumindo que você esteja implementando um domínio desde seu princípio com um desenho bem detalhado sobre papei e funções.

Bem, é isso pessoal! Espero que gostem do procedimento e que o utilizem para aumentar a segurança de seu serviço de diretório delegando permissões corretamente.

Até o próximo post…

%d blogueiros gostam disto: