
Credenciales
Una credencial es un objeto de SQL Server que contiene la información de autenticación necesaria para acceder a un recurso cuyo acceso está administrado fuera de SQL Server, por ejemplo una carpeta, una impresora, un recurso compartido asignado a una cuenta de Windows.
Consideraciones:
- SQL Server utiliza internamente la información de la credencial.
- Las credenciales incluyen generalmente un nombre de usuario y una contraseña de Windows.
- Si el inicio de sesión a SQL Server fue con una cuenta de SQL, se utiliza la credencial para permitir al usuario acceder a recursos situados fuera de la instancia del servidor.
- Cuando el recurso externo es Windows, el usuario se autentica como el usuario de Windows especificado en la credencial.
- Varios inicios de sesión de SQL Server pueden tener asignadas una única credencial, sin embargo, un inicio de sesión de SQL Server solo se puede asignar a una credencial.
- Las credenciales del sistema se crean de forma automática y se asocian a EndPoints específicos.
- Los nombres de las credenciales del sistema comienzan por dos signos de número (##).
Creación de Credenciales
Instrucción: Create Credential
Crea una credencial en SQL Server
Sintaxis:
Create Credential NombreCredencial WITH IDENTITY = ‘Identidad’
[ , SECRET = ‘password’ ]
[ FOR CRYPTOGRAPHIC PROVIDER ProveedorCriptográfico ]
Donde:
NombreCredencial
Especifica el nombre de la credencial que se va a crear. NombreCredencial no puede comenzar por el signo de número (#). Las credenciales del sistema comienzan por ##.
IDENTITY =’Identidad’
Especifica el nombre de la cuenta que se utilizará para conectarse fuera del servidor.
SECRET =’password’
Especifica el secreto necesario para la autenticación de salida. Esta cláusula es opcional.
FOR CRYPTOGRAPHIC PROVIDER ProveedorCriptográfico
Especifica el nombre de un Proveedor de administración de claves de la empresa (EKM).
Ejemplo:
Ejercicio 1
Crear una credencial con la cuenta de Windows, el servidor se llama TrainerSQL y el usuario de Windows es TesterDBA
USE master
go
Create Credential Supervisor WITH IDENTITY = ‘TrainerSQL\TesterDBA’, SECRET = ‘123’
go
Para listar las credenciales del servidor
select * from sys.credentials
go
Importante
- Una vez creada una credencial, puede asignarla a un inicio de sesión de SQL Server mediante CREATE LOGIN o ALTER LOGIN. (Ver Logins)
- Un inicio de sesión de SQL Server solamente se puede asignar a una credencial, pero una credencial puede asignarse a varios inicios de sesión de SQL Server.
Crear un inicio de sesión llamado PowerDBA y asignar la credencial Supervisor
Create login PowerDBA with password = ‘123’, credential= Supervisor
go
Ejercicio 2
Crear una Credencial usando el asistente.
Los pasos son los siguientes:
1. En el Explorador de objetos de Microsoft SQL Server Management Studio, desplegar el nodo Seguridad y pulsar botón derecho en Credenciales y seleccionar Nueva Credencial…

2. Escribir el nombre de la credencial y su contraseña, para el ejemplo el nombre es CursoSQL En este paso especificamos la contraseña y su confirmación.


3. Para la identidad se recomienda pulsar click en el botón con los tres puntos, aparece la ventana para seleccionar un usuario o grupo.


4. Seleccionar la ubicación, es decir, el equipo donde se encuentra la cuenta Windows, para seleccionar un equipo diferente se puede pulsar el botón Ubicaciones.

5. Pulsar Opciones Avanzadas, se muestra la ventana para seleccionar el usuario o grupo, pulsar Buscar ahora

6. Seleccionar la cuenta y pulsar Aceptar.


7. Al regresar a la ventana principal de Nueva credencial pulsar nuevamente Aceptar.