Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
A medida que ejecuta aplicaciones, es posible que sea necesario que esas aplicaciones accedan a los recursos en el contexto de un usuario diferente. Active Directory Domain Services (AD DS) admite un mecanismo denominado delegación Kerberos que permite este caso de uso. La delegación restringida de Kerberos (KCD) se basa en este mecanismo para definir recursos específicos a los que se puede acceder en el contexto del usuario.
Los dominios administrados de Microsoft Entra Domain Services están bloqueados de forma más segura que los entornos de AD DS locales tradicionales, por lo que se usa un KCD basado en recursos más seguro.
En este artículo se muestra cómo configurar la delegación restringida de Kerberos basada en recursos en un dominio administrado de Domain Services.
Prerrequisitos
Para completar este artículo, necesita los siguientes recursos:
- Una suscripción de Azure activa.
- Si no tiene una suscripción a Azure, cree una cuenta.
- Un tenant de Microsoft Entra asociado a su suscripción, ya sea sincronizado con un directorio local o un directorio en la nube exclusivamente.
- Si es necesario, cree un inquilino de Microsoft Entra o asocie una suscripción de Azure a su cuenta.
- Un dominio administrado de Microsoft Entra Domain Services habilitado y configurado en el tenant de Microsoft Entra.
- Una máquina virtual de administración de Windows Server que está unida al dominio administrado de Domain Services.
- Si es necesario, complete el tutorial para crear una máquina virtual con Windows Server y unirla a un dominio administrado, instale las herramientas de administración de AD DS.
- Una cuenta de usuario miembro del grupo administradores de DC de Microsoft Entra en la entidad de Microsoft Entra.
Introducción a la delegación restringida de Kerberos
La delegación de Kerberos permite a una cuenta suplantar a otra cuenta para acceder a los recursos. Por ejemplo, una aplicación web que tiene acceso a un componente web de back-end puede hacerse pasar por una cuenta de usuario distinta cuando realiza la conexión de back-end. La delegación de Kerberos no es segura, ya que no limita los recursos a los que puede acceder la cuenta de suplantación.
La delegación restringida de Kerberos (KCD) restringe los servicios o recursos que un servidor o aplicación especificados pueden usar cuando suplantan otra identidad. KCD tradicional requiere privilegios de administrador de dominio para configurar una cuenta de dominio para un servicio y restringe la cuenta para que se ejecute en un solo dominio.
KCD tradicional también tiene algunos problemas. Por ejemplo, en sistemas operativos anteriores, el administrador de servicios no tenía ninguna manera útil de saber qué servicios front-end delegaban a los servicios de recursos que poseían. Cualquier servicio front-end que pudiera delegar en un servicio de recursos era un posible punto de ataque. Si un servidor que hospedaba un servicio front-end configurado para delegar en los servicios de recursos estaba en peligro, los servicios de recursos también podrían verse comprometidos.
En un dominio administrado, no tiene privilegios de administrador de dominio. Como resultado, el KCD basado en cuentas tradicional no se puede configurar en un dominio administrado. En su lugar, se puede usar KCD basado en recursos, que también es más seguro.
KCD basado en recursos
Windows Server 2012 y versiones posteriores ofrecen a los administradores de servicios la capacidad de configurar la delegación restringida para su servicio. Este modelo se conoce como KCD basado en recursos. Con este enfoque, el administrador del servicio back-end puede permitir o denegar el uso de KCD a servicios front-end específicos.
KCD basado en recursos se configura mediante PowerShell. Utilice los cmdlets Set-ADComputer o Set-ADUser, dependiendo de si la cuenta de suplantación es una cuenta de equipo, usuario o servicio.
Configuración del recurso de delegación restringida basada en recursos (KCD) para una cuenta de ordenador
En este escenario, supongamos que tiene una aplicación web que se ejecuta en el equipo denominado contoso-webapp.aaddscontoso.com.
La aplicación web debe tener acceso a una API web que se ejecute en el equipo denominado contoso-api.aaddscontoso.com en el contexto de los usuarios del dominio.
Complete los pasos siguientes para configurar este escenario:
Cree una unidad organizativa personalizada. Puede delegar permisos para administrar esta unidad organizativa personalizada a los usuarios del dominio administrado.
Vincular al dominio gestionado las máquinas virtuales, tanto la que ejecuta la aplicación web como la que ejecuta la API web, al dominio gestionado. Cree estas cuentas de equipo en la unidad organizativa personalizada del paso anterior.
Nota:
Las cuentas de equipo de la aplicación web y la API web deben estar en una unidad organizativa personalizada donde tenga permisos para configurar KCD basado en recursos. No se puede configurar KCD basado en recursos para una cuenta de equipo en el contenedor integrado de Microsoft Entra DC Computers.
Por último, configure KCD basado en recursos mediante el cmdlet set-ADComputer de PowerShell.
Desde la máquina virtual de administración unida a un dominio y habiendo iniciado sesión como un usuario que es miembro del grupo administradores de DC de Microsoft Entra, ejecute los siguientes cmdlets. Proporcione sus propios nombres de equipo según sea necesario:
$ImpersonatingAccount = Get-ADComputer -Identity contoso-webapp.aaddscontoso.com Set-ADComputer contoso-api.aaddscontoso.com -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
Configurar KCD basado en recursos para una cuenta de usuario
En este escenario, supongamos que tiene una aplicación web que se ejecuta como una cuenta de servicio denominada appsvc. La aplicación web necesita acceder a una API web que se ejecuta como una cuenta de servicio denominada backendsvc en el contexto de los usuarios del dominio. Complete los pasos siguientes para configurar este escenario:
Cree una unidad organizativa personalizada. Puede delegar permisos para administrar esta unidad organizativa personalizada a los usuarios del dominio administrado.
Unión a un dominio de las máquinas virtuales que ejecutan la API web de back-end o el recurso en el dominio administrado. Cree su cuenta de computadora dentro de la OU personalizada.
Cree la cuenta de servicio (por ejemplo, appsvc) que se usa para ejecutar la aplicación web dentro de la unidad organizativa personalizada.
Nota:
De nuevo, la cuenta de equipo de la máquina virtual de API web y la cuenta de servicio de la aplicación web deben estar en una unidad organizativa personalizada en la que tenga permisos para configurar KCD basado en recursos. No se puede configurar KCD basado en recursos para las cuentas en los contenedores integrados de Microsoft Entra DC Computers o Microsoft Entra DC Users. Esto también significa que no puede usar cuentas de usuario sincronizadas desde el identificador de Entra de Microsoft para configurar KCD basado en recursos. Debe crear y usar cuentas de servicio creadas específicamente en Domain Services.
Por último, configure KCD basado en recursos mediante el cmdlet Set-ADUser de PowerShell.
Desde la máquina virtual de administración unida a un dominio y habiendo iniciado sesión como un usuario que es miembro del grupo administradores de DC de Microsoft Entra, ejecute los siguientes cmdlets. Proporcione sus propios nombres de servicio según sea necesario:
$ImpersonatingAccount = Get-ADUser -Identity appsvc Set-ADUser backendsvc -PrincipalsAllowedToDelegateToAccount $ImpersonatingAccount
Pasos siguientes
Para obtener más información sobre cómo funciona la delegación en Active Directory Domain Services, consulte Introducción a la delegación restringida de Kerberos.