Configure a delegação restrita kerberos (KCD) em Azure Ative Directory Serviços de Domínio

À medida que executam as aplicações, pode haver a necessidade de essas aplicações acederem a recursos no contexto de um utilizador diferente. Os Serviços de Domínio do Diretório Ativo (DS) suportam um mecanismo chamado delegação Kerberos que permite este caso de utilização. Kerberos restrita delegação (KCD) então baseia-se neste mecanismo para definir recursos específicos que podem ser acedidos no contexto do utilizador.

Azure Ative Directory domínios geridos por Domain Services (Azure AD DS) são mais bloqueados do que os ambientes tradicionais de DS AD no local, por isso use um KCD mais seguro baseado em recursos.

Este artigo mostra-lhe como configurar kerberos baseados em recursos delegação restrita em um domínio gerido Azure AD DS.

Pré-requisitos

Para completar este artigo, precisa dos seguintes recursos:

Kerberos constrangido visão geral da delegação

A delegação kerberos permite que uma conta personiem outra conta para aceder aos recursos. Por exemplo, uma aplicação web que acede a um componente web de back-end pode fazer-se passar por uma conta de utilizador diferente quando faz a ligação back-end. A delegação kerberos é insegura, uma vez que não limita os recursos a que a conta de imitação pode aceder.

A delegação restrita kerberos (KCD) restringe os serviços ou recursos que um servidor ou aplicação especificado pode ligar ao personificar outra identidade. O KCD tradicional requer privilégios de administrador de domínio para configurar uma conta de domínio para um serviço, e restringe a conta a funcionar num único domínio.

O KCD tradicional também tem alguns problemas. Por exemplo, em sistemas operativos anteriores, o administrador de serviço não tinha forma útil de saber quais os serviços frontais delegados aos serviços de recursos que possuíam. Qualquer serviço frontal que pudesse delegar num serviço de recursos era um potencial ponto de ataque. Se um servidor que hospedava um serviço frontal configurado para delegar serviços de recursos fosse comprometido, os serviços de recursos também poderiam ser comprometidos.

Num domínio gerido, não tem privilégios de administrador de domínio. Como resultado, o KCD baseado em contas tradicionais não pode ser configurado num domínio gerido. Em vez disso, o KCD baseado em recursos pode ser utilizado, o que também é mais seguro.

KCD baseado em recursos

Windows Server 2012 e, mais tarde, dá aos administradores de serviço a possibilidade de configurar a delegação restrita para o seu serviço. Este modelo é conhecido como KCD baseado em recursos. Com esta abordagem, o administrador de serviço back-end pode permitir ou negar serviços frontais específicos da utilização do KCD.

O KCD baseado em recursos está configurado utilizando o PowerShell. Utiliza os cmdlets Set-ADComputer ou Set-ADUser , dependendo se a conta de imitação é uma conta de computador ou uma conta de utilizador/conta de serviço.

Configure kCD baseado em recursos para uma conta de computador

Neste cenário, vamos supor que tem uma aplicação web que funciona no computador chamado contoso-webapp.aaddscontoso.com.

A aplicação web precisa de aceder a uma API web que funciona no computador chamado contoso-api.aaddscontoso.com no contexto dos utilizadores de domínio.

Complete os seguintes passos para configurar este cenário:

  1. Crie um OU personalizado. Pode delegar permissões para gerir este OU personalizado para os utilizadores dentro do domínio gerido.

  2. Junte-se às máquinas virtuais, tanto a que executa a aplicação web, como a que executa a API web, para o domínio gerido. Crie estas contas de computador no OU personalizado a partir do passo anterior.

    Nota

    O computador conta para a aplicação web e a API web deve estar em um OU personalizado onde você tem permissões para configurar KCD baseado em recursos. Não é possível configurar o KCD baseado em recursos para uma conta de computador no recipiente AAD DC Computers incorporado.

  3. Finalmente, configurar kCD baseado em recursos utilizando o cmdlet Set-ADComputer PowerShell.

    A partir da sua gestão de domínio VM e iniciada como conta de utilizador que é membro do grupo de administradores AD DC Azure , executar os seguintes cmdlets. Forneça os seus próprios nomes de computador conforme necessário:

    $ImpersonatingAccount = Get-ADComputer -Identity contoso-webapp.aaddscontoso.com
    Set-ADComputer contoso-api.aaddscontoso.com -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
    

Configure kCD baseado em recursos para uma conta de utilizador

Neste cenário, vamos supor que tem uma aplicação web que funciona como uma conta de serviço chamada appsvc. A aplicação web precisa de aceder a uma API web que funciona como uma conta de serviço chamada backendsvc no contexto dos utilizadores de domínio. Complete os seguintes passos para configurar este cenário:

  1. Crie um OU personalizado. Pode delegar permissões para gerir este OU personalizado para os utilizadores dentro do domínio gerido.

  2. Junte-se ao domínio as máquinas virtuais que executam a API/recurso web backend para o domínio gerido. Crie a sua conta de computador dentro da U. personalizada.

  3. Crie a conta de serviço (por exemplo, appsvc) usada para executar a aplicação web dentro da OU personalizada.

    Nota

    Mais uma vez, a conta do computador para a web API VM, e a conta de serviço para a aplicação web, deve estar em um OU personalizado onde você tem permissões para configurar KCD baseado em recursos. Não é possível configurar o KCD baseado em recursos para contas nos AAD dc computers incorporados ou AAD recipientes de utilizadores de DC. Isto também significa que não pode utilizar contas de utilizador sincronizadas a partir da Azure AD para configurar o KCD baseado em recursos. Deve criar e utilizar contas de serviço especificamente criadas em Azure AD DS.

  4. Finalmente, configurar o KCD baseado em recursos utilizando o cmdlet Set-ADUser PowerShell.

    A partir da sua gestão de domínio VM e iniciada como conta de utilizador que é membro do grupo de administradores AD DC Azure , executar os seguintes cmdlets. Forneça os seus próprios nomes de serviço conforme necessário:

    $ImpersonatingAccount = Get-ADUser -Identity appsvc
    Set-ADUser backendsvc -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
    

Passos seguintes

Para saber mais sobre como a delegação funciona nos Serviços de Domínio do Diretório Ativo, consulte a Visão Geral da Delegação Restrita de Kerberos.