Configuración de Active Directory autoadministrado
Para configurar un AD autoadministrado, siga estos pasos.
Temas
- Paso 1: Crear una unidad organizativa en el AD
- Paso 2: Crear un usuario de dominio de AD en su AD
- Paso 3: Delegar el control al usuario de AD
- Paso 4: Crear una clave de AWS KMS
- Paso 5: Crear un secreto de AWS
- Paso 6: Crear o modificar una instancia de base de datos de SQL Server
- Paso 7: Crear inicios de sesión de SQL Server de autenticación de Windows
Paso 1: Crear una unidad organizativa en el AD
importante
Se recomienda crear una credencial de servicio y una OU dedicadas a esa unidad organizativa para todas las cuentas de AWS que posean una instancia de base de datos de RDS para SQL Server que se haya unido a su dominio de AD autoadministrado. Al crear credenciales de servicio u OU dedicadas, puede evitar conflictos de permisos y seguir el principio de privilegio mínimo.
Para crear una OU en su AD
-
Conéctese a su dominio de AD como administrador de dominio.
-
Abra Usuarios y equipos de Active Directory y seleccione el dominio en el que desea crear la OU.
-
Haga clic con el botón derecho en el dominio y seleccione Nuevo y, a continuación, Unidad organizativa.
-
Escriba un nombre para la OU.
-
Mantenga la casilla seleccionada para Proteger el contenedor contra la eliminación accidental.
-
Haga clic en OK (Aceptar). La nueva OU aparecerá en su dominio.
Paso 2: Crear un usuario de dominio de AD en su AD
Las credenciales de usuario del dominio se utilizarán para el secreto en AWS Secrets Manager.
Para crear un usuario de dominio de AD en su AD
-
Abra Usuarios y equipos de Active Directory y seleccione el dominio y la OU en los que desea crear el usuario.
-
Haga clic con el botón derecho en el objeto Usuarios y seleccione Nuevo y, a continuación, Usuario.
-
Introduzca el nombre, los apellidos y el nombre de inicio de sesión del usuario. Haga clic en Next (Siguiente).
-
Introduzca una contraseña para el usuario. No seleccione El usuario debe cambiar la contraseña en el próximo inicio de sesión. No seleccione La cuenta está deshabilitada. Haga clic en Next (Siguiente).
-
Haga clic en OK (Aceptar). El nuevo usuario aparecerá en su dominio.
Paso 3: Delegar el control al usuario de AD
Para delegar el control al usuario del dominio AD de su dominio
-
Abra el complemento MMC Usuarios y equipos de Active Directory y seleccione el dominio en el que desea crear el usuario.
-
Haga clic con el botón derecho en la OU que creó anteriormente y seleccione Delegar control.
-
En Asistente para delegación de control, haga clic en Siguiente.
-
En la sección Usuarios o grupos, haga clic en Agregar.
-
En la sección Seleccionar usuarios, equipos o grupos, introduzca el usuario de AD que creó y haga clic en Verificar nombres. Si la comprobación de usuario de AD se ha realizado correctamente, haga clic en Aceptar.
-
En la sección Usuarios o grupos, confirme que ha añadido el usuario de AD y haga clic en Siguiente.
-
En la página Tareas que se delegarán, seleccione Crear una tarea personalizada para delegar y haga clic en Siguiente.
-
En la sección Tipo de objeto de Active Directory:
-
Elija Solo los siguientes objetos de la carpeta.
-
Seleccione Objetos computacionales.
-
Seleccione Crear objetos seleccionados en esta carpeta.
-
Seleccione Eliminar los objetos seleccionados en esta carpeta y haga clic en Siguiente.
-
-
En la sección Permisos:
-
Mantenga seleccionada la opción General.
-
Seleccione Escritura validada en el nombre de host DNS.
-
Seleccione Escritura validada en el nombre de la entidad de servicio y haga clic en Siguiente.
-
-
Para Completar el asistente para delegación de control, revise y confirme la configuración y haga clic en Finalizar.
Paso 4: Crear una clave de AWS KMS
La clave de KMS se utiliza para cifrar el secreto de AWS.
Para crear una clave de AWS KMS
nota
En Clave de cifrado, no utilice la clave de KMS predeterminada de AWS. Asegúrese de crear la clave de AWS KMS en la misma cuenta de AWS que contiene la instancia de base de datos de RDS para SQL Server que desea unir a su AD autoadministrado.
-
En la consola de AWS KMS, elija Crear API.
-
En Tipo de clave, elija Simétrica.
-
Para Uso de claves, elija Cifrar y descifrar.
-
Para Advanced options (Opciones avanzadas):
-
En Origen del material de claves, elija Externo.
-
Para Regionalidad, elija Clave de región única y haga clic en Siguiente.
-
-
Para Alias, proporcione un nombre para la clave de KMS.
-
(Opcional) En Description, proporcione una descripción de la clave de KMS.
-
(Opcional) En etiquetas, introduzca una etiqueta para la clave KMS, y haga clic en Siguiente.
-
En Administradores de claves, proporcione el nombre de un usuario de IAM y selecciónelo.
-
En Eliminación de la clave, mantenga seleccionada la casilla Permitir que los administradores de claves eliminen esta clave y haga clic en Siguiente.
-
En Usuarios de clave, proporcione el mismo usuario de IAM del paso anterior y selecciónelo. Haga clic en Next (Siguiente).
-
Revise la configuración.
-
Para Política de claves, incluya lo siguiente en la política Instrucción:
{ "Sid": "Allow use of the KMS key on behalf of RDS", "Effect": "Allow", "Principal": { "Service": [ "rds.amazonaws.com" ] }, "Action": "kms:Decrypt", "Resource": "*" }
-
Haga clic en Finish (Finalizar).
Paso 5: Crear un secreto de AWS
Para crear un secreto
nota
Asegúrese de crear la clave de en la misma cuenta de AWS que contiene la instancia de base de datos de RDS para SQL Server que desea unir a su AD autoadministrado.
-
En AWS Secrets Manager, elija Almacenar un nuevo secreto.
-
En Secret type (Tipo de secreto), elija Other type of secret (Otro tipo de secreto).
-
En los pares clave/valor, añada sus dos claves:
Para la primera clave, introduzca
CUSTOMER_MANAGED_ACTIVE_DIRECTORY_USERNAME
.Para el valor de la primera clave, introduzca el nombre del usuario de AD que creó en su dominio en el paso anterior.
Para la segunda clave, introduzca
CUSTOMER_MANAGED_ACTIVE_DIRECTORY_PASSWORD
.Para el valor de la segunda clave, introduzca la contraseña que creó para el usuario de AD en su dominio.
-
Para la Clave de cifrado, introduzca la clave de KMS que creó en el paso anterior y haga clic en Siguiente.
-
En Nombre de secreto, introduzca un nombre descriptivo que le ayude a buscar el secreto más adelante.
-
(Opcional) En Descripción, escriba una descripción del nombre del secreto.
-
En Permisos de recursos, haga clic en Editar.
-
Añada la siguiente política a la política de permisos:
nota
Le recomendamos que utilice la
aws:sourceAccount
y las condicionesaws:sourceArn
de la política para evitar el problema del suplente confuso. Utilice su Cuenta de AWS paraaws:sourceAccount
y el ARN de la instancia de base de datos de RDS para SQL Server paraaws:sourceArn
. Para obtener más información, consulte Prevención de los problemas del suplente confuso entre servicios.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*", "Condition": { "StringEquals": { "aws:sourceAccount": "
123456789012
" }, "ArnLike": { "aws:sourceArn": "arn:aws:rds:us-west-2
:123456789012
:db:*
" } } } ] } -
Haz clic en Guardar y, a continuación, en Siguiente.
-
En Configurar los ajustes de rotación, mantenga los valores predeterminados y seleccione Siguiente.
-
Revise la configuración del secreto y haga clic en Guardar.
-
Elija el secreto que creó y copie el valor del ARN del secreto. Esto se utilizará en el siguiente paso para configurar Active Directory autoadministrado.
Paso 6: Crear o modificar una instancia de base de datos de SQL Server
Puede utilizar la consola, la CLI o la API de RDS para asociar una instancia de base de datos de RDS para SQL Server a un dominio de AD autoadministrado. Puede hacerlo de una de las siguientes formas:
-
Cree una nueva instancia de base de datos de SQL Server mediante la consola, el comando de la CLI create-db-instance o la operación CreateDBInstance de la API de RDS.
Para obtener instrucciones, consulte Creación de una instancia de base de datos de Amazon RDS.
-
Modifique una instancia de base de datos de SQL Server existente mediante la consola, el comando de la CLI modify-db-instance o la operación ModifyDBInstance de la API de RDS.
Para obtener instrucciones, consulte Modificación de una instancia de base de datos de Amazon RDS.
-
Restaure una instancia de base de datos de SQL Server a partir de una instantánea de base de datos mediante la consola, el comando de la CLI restore-db-instance-from-db-snapshot o la operación RestoreDBInstanceFromDBSnapshot de la API de RDS.
Para obtener instrucciones, consulte Restauración a una instancia de base de datos.
-
Restaure una instancia de base de datos de SQL Server a un punto en el tiempo mediante la consola, el comando de la CLI restore-db-instance-to-point-in-time o la operación RestoreDBInstanceToPointInTime de la API de RDS.
Para obtener instrucciones, consulte Restauración de una instancia de base de datos a un momento especificado para Amazon RDS.
Si utiliza la AWS CLI, necesitará los siguientes parámetros para que la instancia de base de datos pueda usar el dominio de Active Directory autoadministrado que ha creado:
-
Para el parámetro
--domain-fqdn
, utilice el nombre de dominio completo (FQDN) de su Active Directory autoadministrado. -
Para el parámetro
--domain-ou
, utilice la OU que creó en su AD autoadministrado. -
Para el parámetro
--domain-auth-secret-arn
, utilice el valor del ARN del secreto que creó en un paso anterior. -
Para el parámetro
--domain-dns-ips
, utilice las direcciones IPv4 principal y secundaria de los servidores DNS de su AD autoadministrado. Si no tiene una dirección IP de servidor DNS secundaria, introduzca la dirección IP principal dos veces.
Los siguientes comandos de CLI de ejemplo muestran cómo crear, modificar y eliminar una instancia de base de datos de RDS para SQL Server con un dominio de AD autoadministrado.
importante
Si modifica una instancia de base de datos para unirla a un dominio de AD autoadministrado o eliminarla de él, es necesario reiniciar la instancia de base de datos para que la modificación surta efecto. Puede optar por aplicar los cambios inmediatamente o esperar hasta el próximo período de mantenimiento. Si opta por Aplicar inmediatamente, provocará un tiempo de inactividad para las instancias de base de datos Single-AZ. Las instancias de base de datos Multi-AZ realizarán una conmutación por error antes de completar el reinicio. Para obtener más información, consulte Uso de la configuración de la programación de modificaciones.
El siguiente comando de CLI crea una nueva instancia de base de datos de RDS para SQL Server y la une a un dominio de AD autoadministrado.
Para Linux, macOS o:Unix
aws rds create-db-instance \ --db-instance-identifier
my-DB-instance
\ --db-instance-classdb.m5.xlarge
\ --allocated-storage50
\ --enginesqlserver-se
\ --engine-version15.00.4043.16.v1
\ --license-modellicense-included
\ --master-usernamemy-master-username
\ --master-user-passwordmy-master-password
\ --domain-fqdnmy_AD_domain.my_AD.my_domain
\ --domain-ouOU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain
\ --domain-auth-secret-arn"arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456"
\ --domain-dns-ips"10.11.12.13" "10.11.12.14"
En:Windows
aws rds create-db-instance ^ --db-instance-identifier
my-DB-instance
^ --db-instance-classdb.m5.xlarge
^ --allocated-storage50
^ --enginesqlserver-se
^ --engine-version15.00.4043.16.v1
^ --license-modellicense-included
^ --master-usernamemy-master-username
^ --master-user-passwordmy-master-password
^ --domain-fqdnmy-AD-test.my-AD.mydomain
^ --domain-ouOU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain
^ --domain-auth-secret-arn"arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456" \
^ --domain-dns-ips"10.11.12.13" "10.11.12.14"
El siguiente comando de CLI modifica una instancia de base de datos de RDS para SQL Server existente para que utilice un dominio de Active Directory autoadministrado.
Para Linux, macOS o:Unix
aws rds modify-db-instance \ --db-instance-identifier
my-DB-instance
\ --domain-fqdnmy_AD_domain.my_AD.my_domain
\ --domain-ouOU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain
\ --domain-auth-secret-arn"arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456"
\ --domain-dns-ips"10.11.12.13" "10.11.12.14"
En:Windows
aws rds modify-db-instance ^ --db-instance-identifier
my-DBinstance
^ --domain-fqdnmy_AD_domain.my_AD.my_domain
^ --domain-ouOU=my-AD-test-OU,DC=my-AD-test,DC=my-AD,DC=my-domain
^ --domain-auth-secret-arn"arn:aws:secretsmanager:region:account-number:secret:my-AD-test-secret-123456"
^ --domain-dns-ips"10.11.12.13" "10.11.12.14"
El siguiente comando de CLI elimina una instancia de base de datos de RDS para SQL Server de un dominio de Active Directory autoadministrado.
Para Linux, macOS o:Unix
aws rds modify-db-instance \ --db-instance-identifier
my-DB-instance
\ --disable-domain
En:Windows
aws rds modify-db-instance ^ --db-instance-identifier
my-DB-instance
^ --disable-domain
Paso 7: Crear inicios de sesión de SQL Server de autenticación de Windows
Use las credenciales del usuario maestro de Amazon RDS para conectarse a la instancia de base de datos de SQL Server como lo haría con cualquier otra instancia de base de datos. Como la instancia de base de datos está unida al dominio de AD autoadministrado, puede aprovisionar inicios de sesión y usuarios de SQL Server. Para ello, utilice la utilidad de usuarios y grupos de AD de su dominio de AD autoadministrado. Los permisos de bases de datos se administran a través de los permisos de SQL Server estándar otorgados y revocados para estos inicios de sesión de Windows.
Para que un usuario de AD autoadministrado se autentique con SQL Server, debe existir un inicio de sesión de Windows de SQL Server para el usuario de AD autoadministrado o para un grupo de Active Directory autoadministrado del que el usuario sea miembro. El control detallado del acceso se gestiona mediante la concesión y la revocación de permisos en estos inicios de sesión de SQL Server. Un usuario de AD autoadministrado que no tenga un inicio de sesión de SQL Server o no pertenezca a un grupo de AD autoadministrado con dicho inicio de sesión no puede tener acceso a la instancia de base de datos de SQL Server.
El permiso ALTER ANY LOGIN es necesario para crear un inicio de sesión de SQL Server de AD autoadministrado. Si todavía no ha creado ningún inicio de sesión con este permiso, conéctese como usuario maestro de la instancia de base de datos usando la autenticación de SQL Server y cree sus inicios de sesión de SQL Server de AD autoadministrado bajo el contexto del usuario maestro.
Puede ejecutar un comando de lenguaje de definición de datos (DDL), como el siguiente, para crear un inicio de sesión de SQL Server para un usuario o grupo de AD autoadministrado.
nota
Especifique usuarios y grupos con el nombre de inicio de sesión anterior a Windows 2000 en el formato
. No puede usar un nombre principal del usuario (UPN) en el formato my_AD_domain
\my_AD_domain_user
my_AD_domain_user
@
.my_AD_domain
USE [master] GO CREATE LOGIN [
my_AD_domain
\my_AD_domain_user
] FROM WINDOWS WITH DEFAULT_DATABASE = [master], DEFAULT_LANGUAGE = [us_english]; GO
Para obtener más información, consulte CREATE LOGIN (Transact-SQL)
Los usuarios (tanto humanos como aplicaciones) del dominio pueden conectarse ahora a la instancia de RDS para SQL Server desde un equipo cliente unido al dominio de AD autoadministrado utilizando la autenticación de Windows.