

# Uso de Active Directory autoadministrado con una instancia de base de datos de Amazon RDS para SQL Server
<a name="USER_SQLServer_SelfManagedActiveDirectory"></a>

Amazon RDS para SQL Server se integra perfectamente con el dominio autoadministrado de Active Directory (AD), independientemente de dónde esté alojado el AD, ya sea en el centro de datos, en Amazon EC2 o con otros proveedores de nube. Esta integración permite la autenticación directa de los usuarios mediante los protocolos NTLM o Kerberos, lo que elimina la necesidad de dominios intermediarios complejos o de confianza entre bosques. Cuando se conecta a la instancia de base de datos de RDS SQL Server, las solicitudes de autenticación se reenvían de forma segura al dominio de AD designado, lo que mantiene la estructura de administración de identidades existente y, al mismo tiempo, aprovecha las capacidades de base de datos administrada de Amazon RDS.

**Topics**
+ [Disponibilidad en regiones y versiones](#USER_SQLServer_SelfManagedActiveDirectory.RegionVersionAvailability)
+ [Requisitos](USER_SQLServer_SelfManagedActiveDirectory.Requirements.md)
+ [Consideraciones](#USER_SQLServer_SelfManagedActiveDirectory.Limitations)
+ [Configuración de Active Directory autoadministrado](USER_SQLServer_SelfManagedActiveDirectory.SettingUp.md)
+ [Unión de la instancia de base de datos a un Active Directory autoadministrado](USER_SQLServer_SelfManagedActiveDirectory.Joining.md)
+ [Administración de una instancia de base de datos en un dominio de Active Directory autoadministrado](USER_SQLServer_SelfManagedActiveDirectory.Managing.md)
+ [Descripción de la suscripción a un dominio de Active Directory autoadministrado](#USER_SQLServer_SelfManagedActiveDirectory.Understanding)
+ [Solución de problemas de Active Directory autoadministrado](USER_SQLServer_SelfManagedActiveDirectory.TroubleshootingSelfManagedActiveDirectory.md)
+ [Restauración de una instancia de base de datos de SQL Server y adición de esta a un dominio de  Active Directory autoadministrado](#USER_SQLServer_SelfManagedActiveDirectory.Restore)

## Disponibilidad en regiones y versiones
<a name="USER_SQLServer_SelfManagedActiveDirectory.RegionVersionAvailability"></a>

Amazon RDS admite AD autoadministrado para SQL Server mediante NTLM y Kerberos en todas las Regiones de AWS y AWS GovCloud (US) Regions comerciales.

# Requisitos
<a name="USER_SQLServer_SelfManagedActiveDirectory.Requirements"></a>

Asegúrese de cumplir los siguientes requisitos antes de unir una instancia de base de datos de RDS para SQL Server a su dominio de AD autoadministrado.

**Topics**
+ [Configure su AD en las instalaciones](#USER_SQLServer_SelfManagedActiveDirectory.Requirements.OnPremConfig)
+ [Configure la conectividad de red](#USER_SQLServer_SelfManagedActiveDirectory.Requirements.NetworkConfig)
+ [Configure su cuenta de servicio de dominio de AD](#USER_SQLServer_SelfManagedActiveDirectory.Requirements.DomainAccountConfig)
+ [Configuración de la comunicación segura a través de LDAPS](#USER_SQLServer_SelfManagedActiveDirectory.Requirements.LDAPS)

## Configure su AD en las instalaciones
<a name="USER_SQLServer_SelfManagedActiveDirectory.Requirements.OnPremConfig"></a>

Asegúrese de tener un Microsoft AD en las instalaciones o de otro tipo autoadministrado al que pueda unirse a la instancia de Amazon RDS para SQL Server. Su AD en las instalaciones debe tener la siguiente configuración:
+ Si tiene sitios de AD definidos, asegúrese de que las subredes de la VPC asociadas a la instancia de base de datos de RDS para SQL Server estén definidas en el sitio de AD. Confirme que no haya ningún conflicto entre las subredes de la VPC y las subredes de sus otros sitios de AD.
+ El controlador de dominio de AD tiene un nivel funcional de dominio de Windows Server 2008 R2 o superior.
+ El nombre de dominio de AD no puede estar en formato de dominio de etiqueta única (SLD). RDS para SQL Server no admite dominios de SLD.
+ El nombre de dominio completo (FQDN) y su AD no pueden superar los 47 caracteres.

## Configure la conectividad de red
<a name="USER_SQLServer_SelfManagedActiveDirectory.Requirements.NetworkConfig"></a>

Asegúrese de cumplir las siguientes configuraciones de red:
+ Configure la conectividad entre Amazon VPC donde desea crear la instancia de base de datos de RDS para SQL Server y el AD autoadministrado. Puede configurar la conectividad mediante AWS Direct Connect, AWS VPN, emparejamiento de VPC o AWS Transit Gateway.
+ En el caso de los grupos de seguridad de VPC, el grupo de seguridad predeterminado de la Amazon VPC predeterminada ya está agregado a la instancia de base de datos de RDS para SQL Server en la consola. Asegúrese de que el grupo de seguridad y las ACL de red de VPC de las subredes en las que va a crear su instancia de base de datos de RDS para SQL Server permitan el tráfico en los puertos y en las direcciones que se muestran en el siguiente diagrama.  
![\[Reglas de puerto de configuración de red de AD autoadministrado.\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/SQLServer_SelfManagedActiveDirectory_Requirements_NetworkConfig.png)

  En la siguiente tabla se identifica la función de cada puerto.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/USER_SQLServer_SelfManagedActiveDirectory.Requirements.html)
+ Por lo general, los servidores DNS de dominio se encuentran en los controladores de dominio de AD. No es necesario configurar el conjunto de opciones de DHCP de VPC para utilizar esta característica. Para obtener más información, consulte [Conjuntos de opciones de DHCP](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html) en la *Guía del usuario de Amazon VPC*.

**importante**  
Si utiliza ACL de red de VPC, también debe permitir el tráfico saliente en los puertos dinámicos (49152-65535) desde su instancia de base de datos de RDS para SQL Server. Asegúrese de que estas reglas de tráfico también se reflejen en los firewalls que se aplican a cada uno de los controladores de dominio de AD, los servidores DNS y las instancias de base de datos de RDS para SQL Server.  
Si bien los grupos de seguridad de VPC requieren que los puertos se abran solo en la dirección en la que se inicia el tráfico de red, la mayoría de los firewalls de Windows y las ACL de red de VPC requieren que los puertos estén abiertos en ambas direcciones.

## Configure su cuenta de servicio de dominio de AD
<a name="USER_SQLServer_SelfManagedActiveDirectory.Requirements.DomainAccountConfig"></a>

Asegúrese de cumplir los siguientes requisitos para la cuenta de servicio de dominio de AD:
+ Asegúrese de tener una cuenta de servicio de dominio de AD autoadministrado con permisos delegados para unir equipos al dominio. Una cuenta de servicio de dominio es una cuenta de usuario de su AD autoadministrado a la que se le ha delegado permiso para realizar determinadas tareas.
+ Los siguientes permisos se deben delegar en la cuenta de servicio de dominio en la unidad organizativa (OU) a la que va a unir su instancia de base de datos de RDS para SQL Server:
  + Capacidad validada para escribir en el nombre de host DNS
  + Capacidad validada para escribir en el nombre de entidad principal del servicio
  + Crear y eliminar objetos de equipo

  Estos representan el conjunto mínimo de permisos que se requieren para unir objetos del equipo al AD autoadministrado. Para obtener más información, consulte [Errors when attempting to join computers to a domain](https://learn.microsoft.com/en-US/troubleshoot/windows-server/identity/access-denied-when-joining-computers) en la documentación de Microsoft Windows Server.
+ Para usar la autenticación Kerberos, debe proporcionar nombres de entidades principales de servicio (SPN) y permisos de DNS a la cuenta de servicio de dominio de AD:
  + **Escribir SPN**: delegue el permiso **Escribir SPN** en la cuenta de servicio de dominio de AD en la unidad organizativa donde necesita unirse a la instancia de base de datos de RDS para SQL Server. Este permiso es diferente del SPN de escritura validado.
  + **Permisos de DNS**: proporcione los siguientes permisos a la cuenta de servicio de dominio de AD en el mánager de DNS por servidor del controlador de dominio:
    + Contenido de la lista
    + Lectura de todas las propiedades
    + Permisos de lectura

**importante**  
No mueva los objetos de equipo que RDS para SQL Server cree en la unidad organizativa después de crear la instancia de base de datos. Si mueve los objetos asociados, la instancia de base de datos de RDS para SQL Server se configurará mal. Si necesita mover los objetos de equipo creados por Amazon RDS, utilice la operación de API de RDS [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) para modificar los parámetros del dominio con la ubicación deseada de los objetos del equipo.

## Configuración de la comunicación segura a través de LDAPS
<a name="USER_SQLServer_SelfManagedActiveDirectory.Requirements.LDAPS"></a>

Se recomienda la comunicación a través de LDAPS para que RDS consulte y acceda a los objetos del equipo, así como a los SPN del controlador de dominio. Para utilizar un LDAP seguro, utilice un certificado SSL válido en el controlador de dominio que cumpla con los requisitos de un LDAPS seguro. Si no existe un certificado SSL válido en el controlador de dominio, la instancia de base de datos de RDS para SQL Server utilizará LDAP de forma predeterminada. Para obtener más información sobre la validez del certificado, consulte [Requisitos para un certificado de LDAPS](https://learn.microsoft.com/en-us/troubleshoot/windows-server/active-directory/enable-ldap-over-ssl-3rd-certification-authority#requirements-for-an-ldaps-certificate).

## Consideraciones
<a name="USER_SQLServer_SelfManagedActiveDirectory.Limitations"></a>

Al agregar una instancia de base de datos de RDS para SQL Server a un AD autoadministrado, tenga en cuenta lo siguiente:
+ Las instancias de base de datos se sincronizan con el servicio NTP de AWS y no con el servidor de tiempo del dominio de AD. Para las conexiones de bases de datos entre instancias de SQL Server vinculadas dentro del dominio de AD, solo puede realizar la autenticación de SQL y no la autenticación de Windows.
+ La configuración del objeto de política de grupo del dominio de AD autoadministrado no se propaga a las instancias de RDS para SQL Server.

# Configuración de Active Directory autoadministrado
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp"></a>

Para configurar un AD autoadministrado, siga estos pasos.

**Topics**
+ [Paso 1: Crear una unidad organizativa en el AD](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateOU)
+ [Paso 2: creación de una cuenta de servicio de dominio de AD en el AD](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateADuser)
+ [Paso 3: delegación del control a la cuenta de servicio de dominio de AD](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.DelegateControl)
+ [Paso 4: Crear una clave de AWS KMS](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateKMSkey)
+ [Paso 5: Crear un secreto de AWS](#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateSecret)

## Paso 1: Crear una unidad organizativa en el AD
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateOU"></a>

**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**

1. Conéctese a su dominio de AD como administrador de dominio.

1. Abra **Usuarios y equipos de Active Directory** y seleccione el dominio en el que desea crear la OU.

1. Haga clic con el botón derecho en el dominio y seleccione **Nuevo** y, a continuación, **Unidad organizativa**.

1. Escriba un nombre para la OU.

1. Mantenga la casilla seleccionada para **Proteger el contenedor contra la eliminación accidental**.

1. Haga clic en **OK (Aceptar)**. La nueva OU aparecerá en su dominio.

## Paso 2: creación de una cuenta de servicio de dominio de AD en el AD
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateADuser"></a>

Las credenciales de la cuenta de servicio de dominio se utilizarán para el secreto en AWS Secrets Manager.

**Creación de una cuenta de servicio de dominio de AD en el AD**

1. Abra **Usuarios y equipos de Active Directory** y seleccione el dominio y la OU  en los que desea crear el usuario.

1. Haga clic con el botón derecho en el objeto **Usuarios** y seleccione **Nuevo** y, a continuación, **Usuario**.

1. Introduzca el nombre, los apellidos y el nombre de inicio de sesión del usuario. Haga clic en **Next (Siguiente)**.

1. 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)**.

1. Haga clic en **OK (Aceptar)**. El nuevo usuario aparecerá en su dominio.

## Paso 3: delegación del control a la cuenta de servicio de dominio de AD
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.DelegateControl"></a>

**Delegación del control a la cuenta de servicio de dominio de AD en el dominio**

1. Abra el complemento MMC **Usuarios y equipos de Active Directory** y seleccione el dominio en el que desea crear el usuario.

1. Haga clic con el botón derecho en la OU que creó anteriormente y seleccione **Delegar control**.

1. En **Asistente para delegación de control**, haga clic en **Siguiente**.

1. En la sección **Usuarios o grupos**, haga clic en **Agregar**.

1. En la sección **Seleccionar usuarios, equipos o grupos**, ingrese la cuenta de servicio de dominio de AD que creó y haga clic en **Verificar nombres**. Si la comprobación de la cuenta de servicio de dominio de AD se ha realizado correctamente, haga clic en **Aceptar**.

1. En la sección **Usuarios o grupos**, confirme que se ha agregado la cuenta de servicio de dominio de AD y haga clic en **Siguiente**.

1. En la página **Tareas que se delegarán**, seleccione **Crear una tarea personalizada para delegar** y haga clic en **Siguiente**.

1. En la sección **Tipo de objeto de Active Directory**:

   1. Elija **Solo los siguientes objetos de la carpeta**.

   1. Seleccione **Objetos computacionales**.

   1. Seleccione **Crear objetos seleccionados en esta carpeta**.

   1. Seleccione **Eliminar los objetos seleccionados en esta carpeta** y haga clic en **Siguiente**.

1. En la sección **Permisos**:

   1. Mantenga seleccionada la opción **General**.

   1. Seleccione **Escritura validada en el nombre de host DNS**.

   1. Seleccione **Escritura validada en el nombre de la entidad de servicio** y haga clic en **Siguiente**.

   1. Para habilitar la autenticación Kerberos, mantenga seleccionado **Property-specific** y seleccione **Escribir servicePrincipalName** de la lista.

1. Para **Completar el asistente para delegación de control**, revise y confirme la configuración y haga clic en **Finalizar**.

1. Para la autenticación Kerberos, abra el Administrador de DNS y abra las propiedades del **Servidor**.

   1. En el cuadro de diálogo de Windows, escriba `dnsmgmt.msc`.

   1. Agregue la cuenta de servicio de dominio de AD en la pestaña **Seguridad**.

   1. Seleccione el permiso de **lectura** y aplique los cambios.

## Paso 4: Crear una clave de AWS KMS
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateKMSkey"></a>

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. 

1. En la consola de AWS KMS, elija **Crear API**.

1. En **Tipo de clave**, elija **Simétrica**.

1. Para **Uso de claves**, elija **Cifrar y descifrar**.

1. Para **Advanced options (Opciones avanzadas)**:

   1. En **Origen del material de claves**, elija **Externo**.

   1. Para **Regionalidad**, elija **Clave de región única** y haga clic en **Siguiente**.

1. Para **Alias**, proporcione un nombre para la clave de KMS.

1. (Opcional) En **Description**, proporcione una descripción de la clave de KMS.

1. (Opcional) En **etiquetas**, introduzca una etiqueta para la clave KMS, y haga clic en **Siguiente**.

1. En **Administradores de claves**, proporcione el nombre de un usuario de IAM y selecciónelo.

1. En **Eliminación de la clave**, mantenga seleccionada la casilla **Permitir que los administradores de claves eliminen esta clave** y haga clic en **Siguiente**.

1. En **Usuarios de clave**, proporcione el mismo usuario de IAM del paso anterior y selecciónelo. Haga clic en **Next (Siguiente)**.

1. Revise la configuración.

1. 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": "*"
   }
   ```

1. Haga clic en **Finish (Finalizar)**.

## Paso 5: Crear un secreto de AWS
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateSecret"></a>

**Creación de 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. 

1. En AWS Secrets Manager, elija **Almacenar un nuevo secreto**.

1. En **Secret type** (Tipo de secreto), elija **Other type of secret** (Otro tipo de secreto).

1. En los **pares clave/valor**, añada sus dos claves:

   1. Para la primera clave, introduzca  `SELF_MANAGED_ACTIVE_DIRECTORY_USERNAME`.

   1. Para el valor de la primera clave, ingrese solo el nombre de usuario (sin el prefijo de dominio) del usuario de AD. No incluya el nombre de dominio, ya que esto provocará un error en la creación de la instancia.

   1. Para la segunda clave, introduzca  `SELF_MANAGED_ACTIVE_DIRECTORY_PASSWORD`.

   1. Para el valor de la segunda clave, introduzca la contraseña que creó para el usuario de AD en su dominio.

1. Para la **Clave de cifrado**, introduzca la clave de KMS que creó en el paso anterior y haga clic en **Siguiente**.

1. En **Nombre de secreto**, introduzca un nombre descriptivo que le ayude a buscar el secreto más adelante.

1. (Opcional) En **Descripción**, escriba una descripción del nombre del secreto.

1. En **Permisos de recursos**, haga clic en **Editar**.

1. Añada la siguiente política a la política de permisos:
**nota**  
Le recomendamos que utilice la `aws:sourceAccount` y las condiciones `aws:sourceArn` de la política para evitar el problema del *suplente confuso*. Utilice su Cuenta de AWS para `aws:sourceAccount` y el ARN de la instancia de base de datos de RDS para SQL Server para `aws:sourceArn`. Para obtener más información, consulte [Prevención de los problemas del suplente confuso entre servicios](cross-service-confused-deputy-prevention.md).

------
#### [ JSON ]

****  

   ```
   {
       "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:*"
                   }
               }
           }
       ]
   }
   ```

------

1. Haz clic en **Guardar** y, a continuación, en **Siguiente**.

1. En **Configurar los ajustes de rotación**, mantenga los valores predeterminados y seleccione **Siguiente**.

1. Revise la configuración del secreto y haga clic en **Guardar**.

1. 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.

# Unión de la instancia de base de datos a un Active Directory autoadministrado
<a name="USER_SQLServer_SelfManagedActiveDirectory.Joining"></a>

Para unir la instancia de base de datos de RDS para SQL Server al AD autoadministrado, siga estos pasos:

## Paso 1: crear o modificar una instancia de base de datos de SQL Server
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateModify"></a>

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. Puedes 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](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) o la operación [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) de la API de RDS.

  Para obtener instrucciones, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).
+ Modifique una instancia de base de datos de SQL Server existente mediante la consola, el comando de la CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) o la operación [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) de la API de RDS.

  Para obtener instrucciones, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).
+ 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](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html) o la operación [RestoreDBInstanceFromDBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html) de la API de RDS.

  Para obtener instrucciones, consulte [Restauración a una instancia de base de datos](USER_RestoreFromSnapshot.md).
+ 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](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html) o la operación [RestoreDBInstanceToPointInTime](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html) 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](USER_PIT.md).

Si utiliza la AWS CLI, necesitará los siguientes parámetros para que la instancia de base de datos pueda usar el dominio de AD autoadministrado que ha creado:
+ Para el parámetro `--domain-fqdn`, utilice el nombre de dominio completo (FQDN) del AD 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](USER_ModifyInstance.ApplyImmediately.md). 

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-class db.m5.xlarge \
    --allocated-storage 50 \
    --engine sqlserver-se \
    --engine-version 15.00.4043.16.v1 \
    --license-model license-included \
    --master-username my-master-username \
    --master-user-password my-master-password \
    --domain-fqdn my_AD_domain.my_AD.my_domain \
    --domain-ou OU=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"
```

Para Windows:

```
aws rds create-db-instance ^
    --db-instance-identifier my-DB-instance ^
    --db-instance-class db.m5.xlarge ^
    --allocated-storage 50 ^
    --engine sqlserver-se ^
    --engine-version 15.00.4043.16.v1 ^
    --license-model license-included ^
    --master-username my-master-username ^
    --master-user-password my-master-password ^
    --domain-fqdn my-AD-test.my-AD.mydomain ^
    --domain-ou OU=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 la CLI modifica una instancia de base de datos de RDS para SQL Server existente para que utilice un dominio de AD autoadministrado.

Para Linux, macOS o Unix:

```
aws rds modify-db-instance \
    --db-instance-identifier my-DB-instance \
    --domain-fqdn my_AD_domain.my_AD.my_domain \
    --domain-ou OU=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"
```

Para Windows:

```
aws rds modify-db-instance ^
    --db-instance-identifier my-DBinstance ^
    --domain-fqdn my_AD_domain.my_AD.my_domain ^
    --domain-ou OU=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 la CLI elimina una instancia de base de datos de RDS para SQL Server de un dominio de AD autoadministrado.

Para Linux, macOS o Unix:

```
aws rds modify-db-instance \
    --db-instance-identifier my-DB-instance \
    --disable-domain
```

Para Windows:

```
aws rds modify-db-instance ^
    --db-instance-identifier my-DB-instance ^
    --disable-domain
```

## Paso 2: Uso de la autenticación Kerberos o NTLM
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.KerbNTLM"></a>

### Autenticación de NTLM
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.KerbNTLM.NTLM"></a>

Cada instancia de base de datos de Amazon RDS contiene un punto de conexión y cada punto de conexión contiene el nombre DNS y el número de puerto para la instancia de base de datos. Para conectarse a su instancia de base de datos mediante una aplicación cliente SQL, necesita el nombre DNS y el número de puerto para la instancia de base de datos. Para autenticarse mediante la autenticación de NTLM, debe conectarse al punto de conexión de RDS o al punto de conexión de oyente si utiliza una implementación multi-AZ.

Durante una interrupción del servicio no planificada o un mantenimiento planificado de la base de datos, Amazon RDS conmuta automáticamente a la base de datos secundaria actualizada para que las operaciones puedan reanudarse rápidamente sin intervención manual. Las instancias principal y secundaria usan el mismo punto de conexión, cuya dirección de red física cambia a la secundaria como parte del proceso de conmutación por error. No tiene que volver a configurar su aplicación cuando se produzca una conmutación por error.

### Autenticación de Kerberos
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.Kerb"></a>

La autenticación basada en Kerberos para RDS para SQL Server requiere que las conexiones se realicen a un nombre de entidad principal de servicio (SPN) específico. Sin embargo, tras un evento de conmutación por error, es posible que la aplicación no conozca el nuevo SPN. Para solucionar este problema, RDS para SQL Server ofrece un punto de conexión basado en Kerberos.

El punto de conexión basado en Kerberos sigue un formato específico. Si su punto de conexión de RDS es `rds-instance-name.account-region-hash.aws-region.rds.amazonaws.com`, el punto de conexión correspondiente basado en Kerberos sería `rds-instance-name.account-region-hash.aws-region.awsrds.fully qualified domain name (FQDN)`.

Por ejemplo, si el punto de conexión de RDS es `ad-test.cocv6zwtircu.us-east-1.rds.amazonaws.com` y el nombre de dominio es `corp-ad.company.com`, el punto de conexión basado en Kerberos sería `ad-test.cocv6zwtircu.us-east-1.awsrds.corp-ad.company.com`.

Este punto de conexión basado en Kerberos se puede usar para autenticarse con la instancia de SQL Server mediante Kerberos, incluso después de un evento de conmutación por error, ya que el punto de conexión se actualiza automáticamente para que apunte al nuevo SPN de la instancia principal de SQL Server.

### Cómo encontrar su CNAME
<a name="USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CNAME"></a>

Para encontrar su CNAME, conéctese al controlador de dominio y abra **Administrador de DNS**. Navegue hasta **Zonas de búsqueda avanzada** y su FQDN.

Navegue por **awsrds**, **aws-region** y **hash específicos de la cuenta y la región.**

![\[Modificación de la cantidad de almacenamiento de una instancia de base de datos\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/kerb-endpoint-selfManagedAD-RDSMS.png)


Si después de conectar CNAME desde un cliente remoto, se devuelve una conexión NTLM, compruebe si los puertos necesarios están en la lista de permitidos.

Para comprobar si su conexión usa Kerberos, ejecute la siguiente consulta:

```
SELECT net_transport, auth_scheme
    FROM sys.dm_exec_connections
    WHERE session_id = @@SSPID;
```

Si la instancia devuelve una conexión de NTLM al conectarse a un punto de conexión de Kerberos, compruebe la configuración de la red y de los usuarios. Consulte [Configure la conectividad de red](USER_SQLServer_SelfManagedActiveDirectory.Requirements.md#USER_SQLServer_SelfManagedActiveDirectory.Requirements.NetworkConfig).

## Paso 3: crear inicios de sesión de SQL Server de autenticación de Windows
<a name="USER_SQLServer_SelfManagedActiveDirectory.CreateLogins"></a>

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 una cuenta de servicio de dominio de AD autoadministrada se autentique con SQL Server, debe existir un inicio de sesión de Windows de SQL Server para la cuenta de servicio de dominio de AD autoadministrada o un grupo de AD 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. Una cuenta de servicio de dominio de AD autoadministrada 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 una cuenta de servicio de dominio de AD autoadministrada o grupo.

**nota**  
Especifique usuarios y grupos con el nombre de inicio de sesión anterior a Windows 2000 en el formato `my_AD_domain\my_AD_domain_user`. No puede usar un nombre principal del usuario (UPN) en el formato *`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)](https://msdn.microsoft.com/en-us/library/ms189751.aspx) (Crear inicio de sesión [Transact-SQL]) en la documentación de Microsoft Developer Network.

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.

# Administración de una instancia de base de datos en un dominio de Active Directory autoadministrado
<a name="USER_SQLServer_SelfManagedActiveDirectory.Managing"></a>

 Puede usar la consola, la AWS CLI o la API de Amazon RDS para administrar la instancia de base de datos y la relación con su dominio de AD autoadministrado. Por ejemplo, puede mover la instancia de base de datos dentro, fuera o entre dominios. 

 Por ejemplo, con la API de Amazon RDS puede hacer lo siguiente: 
+ Para volver a intentar una unión de dominio autoadministrado por una suscripción fallida, utilice la operación de API [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) y especifique el mismo conjunto de parámetros:
  + `--domain-fqdn`
  + `--domain-dns-ips`
  + `--domain-ou`
  + `--domain-auth-secret-arn`
+ Para eliminar una instancia de base de datos de un dominio autoadministrado, use la operación `ModifyDBInstance` de la API y especifique `--disable-domain` como parámetro del dominio.
+ Para mover una instancia de base de datos de un dominio autoadministrado a otro, use la operación `ModifyDBInstance` de la API y especifique los parámetros para el nuevo dominio.
  + `--domain-fqdn`
  + `--domain-dns-ips`
  + `--domain-ou`
  + `--domain-auth-secret-arn`
+ Para ver la suscripción de dominio de AD autoadministrado para cada instancia de base de datos, use la operación [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/DescribeDBInstances.html) de la API.

## Descripción de la suscripción a un dominio de Active Directory autoadministrado
<a name="USER_SQLServer_SelfManagedActiveDirectory.Understanding"></a>

Una vez que haya creado o modificado la instancia de base de datos al especificar detalles de AD, esta se convierte en miembro del dominio de AD autoadministrado. La consola de AWS indica el estado de la suscripción del dominio de Active Directory autoadministrado para la instancia de base de datos. El estado de la instancia de base de datos puede ser uno de los siguientes: 
+  **joined**: la instancia es miembro del dominio de AD.
+  **joining**: la instancia está en el proceso de convertirse en miembro del dominio de AD.
+  **pending-join**: la suscripción de la instancia está pendiente.
+  **pending-maintenance-join**: AWS intentará convertir la instancia en miembro del dominio de AD durante el próximo período de mantenimiento programado.
+  **pending-removal**: la eliminación de la instancia del dominio de AD está pendiente.
+  **pending-maintenance-removal**: AWS intentará eliminar la instancia del dominio de AD durante el próximo período de mantenimiento programado.
+  **error**: un problema de configuración ha impedido que la instancia se una al dominio de AD. Compruebe y corrija la configuración antes de volver a ejecutar el comando para modificar la instancia.
+  **removing**: la instancia se está eliminando del dominio de AD autoadministrado.

**importante**  
Una solicitud para convertirse en miembro de un dominio de AD autoadministrado puede generar un error a causa de un problema de conectividad de la red. Por ejemplo, puede crear una instancia de base de datos o modificar una instancia existente y que se produzca un error al intentar que la instancia de base de datos se convierta en miembro de un dominio de AD autoadministrado. En este caso, vuelva a emitir el comando para crear o modificar la instancia de base de datos o modificar la instancia recién creada para unirse al dominio de AD autoadministrado.

# Solución de problemas de Active Directory autoadministrado
<a name="USER_SQLServer_SelfManagedActiveDirectory.TroubleshootingSelfManagedActiveDirectory"></a>

Los siguientes son los problemas que pueden surgir al configurar o modificar el AD autoadministrado.


****  

| Código de error | Descripción | Causas habituales | Sugerencias para la solución de problemas | 
| --- | --- | --- | --- | 
| Error 2 / 0x2 | El sistema no puede encontrar el archivo especificado. | El formato o la ubicación de la unidad organizativa (OU) especificados con el parámetro `—domain-ou` no es válido. La cuenta de servicio de dominio especificada mediante AWS Secrets Manager carece de los permisos necesarios para unirse a la OU. | Revise el parámetro `—domain-ou`. Asegúrese de que la cuenta de servicio de dominio tenga los permisos correctos para la OU. Para obtener más información, consulte [Configure su cuenta de servicio de dominio de AD](USER_SQLServer_SelfManagedActiveDirectory.Requirements.md#USER_SQLServer_SelfManagedActiveDirectory.Requirements.DomainAccountConfig).  | 
| Error 5 / 0x5 | Se deniega el acceso. | Los permisos de la cuenta de servicio del dominio están mal configurados o la cuenta del equipo ya existe en el dominio. | Revise los permisos de la cuenta de servicio del dominio y compruebe que la cuenta del equipo de RDS no esté duplicada en el dominio. Para comprobar el nombre de la cuenta del equipo de RDS, ejecute `SELECT @@SERVERNAME` en su instancia de base de datos de RDS para SQL Server. Si utiliza Multi-AZ, intente reiniciar con conmutación por error y, a continuación, compruebe de nuevo la cuenta del equipo de RDS. Para obtener más información, consulte [Reinicio de una instancia de base de datos ](USER_RebootInstance.md). | 
| Error 87 / 0x57 | El parámetro es incorrecto. | La cuenta de servicio de dominio especificada mediante AWS Secrets Manager no tiene los permisos correctos. El perfil de usuario también podría estar dañado. | Revise los requisitos de la cuenta de servicio de dominio. Para obtener más información, consulte [Configure su cuenta de servicio de dominio de AD](USER_SQLServer_SelfManagedActiveDirectory.Requirements.md#USER_SQLServer_SelfManagedActiveDirectory.Requirements.DomainAccountConfig).  | 
| Error 234 / 0xEA | La unidad organizativa (OU) especificada no existe. | La unidad organizativa especificada con el parámetro `—domain-ou` no existe en su AD autoadministrado. | Revise el parámetro `—domain-ou` y asegúrese de que la unidad organizativa especificada exista en su AD autoadministrado. | 
| Error 1326 / 0x52E | El nombre de usuario o la contraseña es incorrecto. | Las credenciales de la cuenta de servicio de dominio proporcionadas en AWS Secrets Manager contienen un nombre de usuario desconocido o una contraseña incorrecta. La cuenta de dominio también podría estar deshabilitada en su AD autoadministrado. | Asegúrese de que las credenciales proporcionadas en AWS Secrets Manager sean correctas y de que la cuenta de dominio esté habilitada en el AD autoadministrado. | 
| Error 1355 / 0x54B | El dominio especificado no existe o no se pudo contactar con él. | El dominio está inactivo, no se puede acceder al conjunto especificado de IP de DNS o no se puede acceder al FQDN especificado. | Revise los parámetros `—domain-dns-ips` y `—domain-fqdn`  para asegurarse de que son correctos. Revise la configuración de red de su instancia de base de datos de RDS para SQL Server y asegúrese de que sea posible acceder a su AD autoadministrado. Para obtener más información, consulte [Configure la conectividad de red](USER_SQLServer_SelfManagedActiveDirectory.Requirements.md#USER_SQLServer_SelfManagedActiveDirectory.Requirements.NetworkConfig).  | 
| Error 1772/0x6BA | El servidor RPC no está disponible. | Se ha producido un problema al acceder al servicio de RPC de su dominio de AD. Puede deberse a un problema de red o de servicio. | Valide que el servicio de RPC se esté ejecutando en sus controladores de dominio y que se pueda acceder a los puertos de TCP `135` y `49152-65535` en su dominio desde su instancia de base de datos de RDS para SQL Server. | 
|  Error 1727/0x6BF  |  La llamada al procedimiento remoto produjo un error y no se ejecutó.  |  Un problema de conectividad de red o una restricción del firewall bloquean la comunicación del RPC con el controlador de dominio.  |  Si utiliza la unión de dominios entre VPC, compruebe que la comunicación entre VPC esté configurada correctamente con el emparejamiento de VPC o con Transit Gateway. Asegúrese de que se pueda acceder a los puertos altos `49152-65535` de TCP en el dominio desde la instancia de base de datos de RDS para SQL Server, incluidas las posibles restricciones de firewall.  | 
| Error 2224 / 0x8B0 | La cuenta de usuario ya existe. | La cuenta de equipo que se intenta añadir al AD autoadministrado ya existe. | Para identificar la cuenta del equipo, ejecute `SELECT @@SERVERNAME` en su instancia de base de datos de RDS para SQL Server y, a continuación, elimínela cuidadosamente de su AD autoadministrado. | 
| Error 2242 / 0x8c2 | La contraseña de este usuario ha caducado. | La contraseña de la cuenta de servicio de dominio especificada a través de AWS Secrets Manager ha caducado. | Actualice la contraseña de la cuenta de servicio de dominio utilizada para unir su instancia de base de datos de RDS para SQL Server a su AD autoadministrado. | 

Tras unir la instancia de base de datos a un dominio de Active Directory autoadministrado, es posible que reciba eventos de RDS relacionados con el estado del dominio.

```
Unhealthy domain state detected while attempt to verify or 
configure your Kerberos endpoint in your domain on 
node node_n. message
```

En el caso de las instancias multi-AZ, es posible que observe el error que aparece en el node1 y en el node2, lo que indica que la configuración de Kerberos de la instancia no está preparada para la conmutación por error. En caso de que se produzca una conmutación por error, es posible que tenga dificultades de autenticación con Kerberos. Resuelva los problemas de configuración para garantizar que la configuración de Kerberos sea válida y esté actualizada. En el caso de las instancias multi-AZ, no es necesario realizar ninguna acción para utilizar la autenticación Kerberos en el nuevo host principal, ya que todas las configuraciones de red y permisos están implementadas.

En las instancias single-AZ, el node1 es el nodo principal. Si la autenticación de Kerberos no funciona según lo esperado, compruebe los eventos de la instancia y resuelva los problemas de configuración para asegurarse de que la configuración de Kerberos es válida y está actualizada.

## Restauración de una instancia de base de datos de SQL Server y adición de esta a un dominio de  Active Directory autoadministrado
<a name="USER_SQLServer_SelfManagedActiveDirectory.Restore"></a>

Puede restaurar una instantánea de base de datos o realizar una recuperación en un momento dado (PITR) para una instancia de base de datos de SQL Server y, a continuación, añadirla a un dominio de Active Directory autoadministrado. Una vez que la instancia de base de datos se haya restaurado, modifíquela con el proceso que se explica en [Paso 1: crear o modificar una instancia de base de datos de SQL Server](USER_SQLServer_SelfManagedActiveDirectory.Joining.md#USER_SQLServer_SelfManagedActiveDirectory.SettingUp.CreateModify) para agregar la instancia de base de datos a un dominio de AD autoadministrado.