¿Cómo puedo transferir usuarios de SQL Server desde una instancia de RDS para SQL Server a otra o a un entorno local desde RDS?

Última actualización: 25-10-2022

Quiero migrar los inicios de sesión y las contraseñas de SQL Server desde una instancia de Amazon Relational Database (Amazon RDS) para Microsoft SQL Server a otra instancia de Amazon RDS para SQL Server. O bien, quiero migrar los inicios de sesión desde o hacia un entorno local. ¿Cómo lo hago?

Resolución

Nota: Para obtener instrucciones sobre cómo duplicar el inicio de sesión del usuario maestro, consulte How can I duplicate or clone my RDS for SQL Server user login permissions? (¿Cómo puedo duplicar o clonar mis permisos de inicio de sesión de usuario de RDS para SQL Server?)

Migrar los inicios de sesión de SQL Server desde una instancia de RDS para SQL Server a otra diferente:

Para migrar los nombres de usuario y las contraseñas a una nueva instancia de RDS de destino, haga lo siguiente:

  1. Tome una instantánea de la instancia de origen.
  2. Restaure la instantánea con un nombre diferente en la instancia de destino.
  3. Elimine los inicios de sesión y las bases de datos que no sean necesarios.

Para migrar los inicios de sesión a una instancia de RDS de destino existente, siga los pasos de la sección siguiente.

Migrar inicios de sesión de RDS para SQL Server a un entorno local

Nota: Debe ingresar las contraseñas de manera manual en las siguientes resoluciones. No puede recuperar la contraseña cifrada de los inicios de sesión directamente desde RDS.

Opción 1

1.    Cree el procedimiento almacenado sp_help_revlogins en cualquier base de datos de usuarios. Para ver el script del procedimiento almacenado, consulte el Método 2 en Transferir inicios de sesión y contraseñas entre servidores SQL Server.

2.    Ejecute el procedimiento almacenado para archivar los inicios de sesión en la instancia de origen.

Nota: Al crear el procedimiento almacenado en la base de datos maestra, se produce el siguiente error:

Msg 262, Level 14, State 18, Procedure sp_hexadecimal, Line 1 [Batch Start Line 5]
CREATE PROCEDURE permission denied in database 'master'

Opción 2

Para crear los inicios de sesión de manera manual o crear scripts para los inicios de sesión mediante Microsoft SQL Server Management Studio (SSMS), haga lo siguiente:

1.    Abra el marcador de posición de seguridad en SSMS y, a continuación, amplíelo.

2.    Seleccione los inicios de sesión y pulse la tecla F7. O bien, seleccione Object explorer details (Detalles del explorador de objetos) en el menú View (Ver).

3.    Mantenga presionada la tecla de control para seleccionar los inicios de sesión que desea migrar.

4.    Después de seleccionar los inicios de sesión necesarios, haga clic con el botón derecho en la pantalla y elija Script Login as (Crear script de inicio de sesión como) para abrir una nueva ventana de consulta.

5.    Copie el script de creación de inicio de sesión y ejecútelo en la instancia de destino reemplazando las contraseñas. Para ver el script del procedimiento almacenado, consulte el Método 1 en Transferir inicios de sesión y contraseñas entre servidores SQL Server.

Migrar los inicios de sesión y las contraseñas desde un entorno local a RDS para SQL Server

En el servidor de origen (local), haga lo siguiente:

1.    Genere el script de creación de inicio de sesión para todos los inicios de sesión desde el servidor local. Para ver el script del procedimiento almacenado, consulte el Método 2 en Transferir inicios de sesión y contraseñas entre servidores SQL Server.

2.    Después de crear el procedimiento almacenado, abra una nueva ventana T-SQL y ejecute el procedimiento almacenado con el siguiente comando.

Nota: antes de ejecutar el script, asegúrese de que los resultados están en formato de texto pulsando CTRL+T en el teclado.

EXEC [sp_help_revlogin]

El resultado de esta consulta proporciona el script para crear los inicios de sesión que tienen el SID original y la contraseña en el servidor de destino.

En el servidor de destino, haga lo siguiente:

1.    Conéctese a la instancia de RDS para SQL Server con la cuenta de usuario maestro.

2.    Ejecute el script generado en el paso 2 (salida de sp_help_revlogin) en la sección On the source server (on-premises) (En el servidor de origen [local]) desde un servidor local.

Nota: No puede conceder al administrador del sistema acceso a los inicios de sesión en RDS. Por lo tanto, al migrar los inicios de sesión que tienen privilegios de administrador del sistema a RDS, no se concede el acceso. Debe conceder explícitamente el permiso necesario para esos inicios de sesión.

Si desea obtener una lista de los permisos disponibles para los usuarios de RDS, consulte Master user account privileges (Privilegios de la cuenta de usuario maestra).

Solución de problemas de permisos de cuentas

¿Dónde puedo encontrar mi nombre de usuario maestro?

1.    Inicie sesión en la consola RDS.

2.    En el panel de navegación, elija Databases (Bases de datos).

3.    Elija la instancia de base de datos de RDS para la que desea el nombre de usuario maestro.

4.    Abra la pestaña Configuration (Configuración). El nombre de usuario principal aparece en la sección Availability (Disponibilidad).

¿Cómo restablezco la contraseña del usuario maestro o restablezco los permisos del usuario maestro?

Si desea obtener información sobre cómo restablecer la contraseña del usuario maestro, consulte How do I reset the master user password for my Amazon RDS DB instance? (¿Cómo restablezco la contraseña de usuario maestra de mi instancia de base de datos de Amazon RDS?)


¿Le resultó útil este artículo?


¿Necesita asistencia técnica o con la facturación?