Credenciales en SQL Server Modificar y eliminar

Credenciales en SQL Server

Modificar y eliminar 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.
(Ver credenciales en SQL Server). En este artículo explicaremos como se pueden modificar y eliminar las credenciales.

Crear credenciales en SQL Server

Para crear credenciales se utiliza la instrucción Create credencial.

Ejemplo: Para crear la credencial llamada TrainerCredencial en base al usuario de Windows TestCredenciales en el equipo CubilTrainer se utiliza la siguiente instrucción
USE [master]
GO
CREATE CREDENTIAL TrainerCredencial
WITH IDENTITY = ‘CubilTrainer\TestCredenciales’, SECRET = ‘123’
GO

Para listar las credenciales
select * from sys.credentials
go

Modificación de credenciales en SQL Server

Instrucción Alter Credencial

Permite modificar una credencial, las opciones posibles son: cambiar la identidad, es decir, el usuario de Windows de la identidad y cambiar el password.

Sintaxis
ALTER CREDENTIAL NombreCredencial
WITH IDENTITY = ‘NombreIdentidad’
[ , SECRET = ‘password’ ]
go

Importante:

  • Cuando se cambia una credencial, se restablecen los valores de NombreIdentidad y secret. Si no se especifica el argumento SECRET opcional, el valor del secreto cambiará a NULL.
  • El Password se encripta utilizando la clave maestra del servicio. Si la clave maestra de servicio se regenera, el Password se vuelve a cifrar utilizando la nueva clave maestra de servicio.
  • La información sobre las credenciales se puede ver en la vista del catálogo sys.credentials.

Permisos necesarios (Ver Grant para asignar permisos)
Para modificar una credencial se requiere ALTER ANY Credential
Si la credencial es una credencial del sistema, se requiere el permiso CONTROL SERVER.

Ejercicios

  1. Cambiar el Password (secret) de la credencial
    Alter credential TrainerCredencial
    with identity = ‘CubilTrainer\TestCredenciales’,
    SECRET = ‘nuevo321’
    go
  2. Eliminar el password (secret) de la credencial TrainerCredencial
    Alter credential TrainerCredencial
    with identity = ‘CubilTrainer\TestCredenciales’
    go

Eliminación de credenciales

Instrucción Drop Credencial
Permite eliminar una credencial
Sintaxis
DROP CREDENTIAL NombreCredencial
go

Permisos necesarios (Ver Grant para asignar permisos)
Requiere ALTER ANY Credential
Si la credencial es una credencial del sistema, se requiere el permiso CONTROL SERVER.

Ejercicios
Eliminar la credencial TrainerCredencial
Drop credential TrainerCredencial
go