Administración de roles de seguridad de base de datos

A las entidades de seguridad se les concede acceso a los recursos a través de un modelo de control de acceso basado en roles, donde sus roles de seguridad asignados determinan su acceso a los recursos.

En este artículo, aprenderá a usar comandos de administración para ver los roles de seguridad existentes , así como agregar y quitar roles de seguridad en el nivel de base de datos.

Nota

Para eliminar una base de datos, necesita al menos permisos de Colaborador de Azure Resource Manager (ARM) en el clúster. Para asignar permisos de ARM, consulte Asignación de roles de Azure mediante el Azure Portal.

Permisos

Debe tener al menos permisos de Administración de base de datos para ejecutar estos comandos.

Roles de seguridad de nivel de base de datos

En la tabla siguiente se muestran los posibles roles de seguridad en el nivel de base de datos y se describen los permisos concedidos para cada rol.

Role Permisos
admins Vea y modifique las entidades de base de datos y de base de datos.
users Vea la base de datos y cree nuevas entidades de base de datos.
viewers Vea las tablas de la base de datos donde RestrictedViewAccess no está activada.
unrestrictedviewers Vea las tablas de la base de datos incluso donde está activado RestrictedViewAccess . La entidad de seguridad también debe tener adminspermisos o viewersusers .
ingestors Ingerir datos en la base de datos sin acceso a la consulta.
monitors Vea los metadatos de la base de datos, como esquemas, operaciones y permisos.

Nota

No es posible asignar el viewer rol solo para algunas tablas de la base de datos. Para obtener diferentes enfoques sobre cómo conceder a una vista de entidad de seguridad acceso a un subconjunto de tablas, consulte Administración del acceso a la vista de tabla.

Mostrar roles de seguridad existentes

Antes de agregar o quitar entidades de seguridad, puede usar el .show comando para ver una tabla con todas las entidades de seguridad y roles que ya están establecidos en la base de datos.

Syntax

Para mostrar todos los roles:

.showdatabaseDatabasenameprincipals

Para mostrar los roles:

.showdatabaseDatabasenameprincipalroles

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
DatabaseName string ✔️ Nombre de la base de datos para la que se van a enumerar las entidades de seguridad.

Ejemplo

El comando siguiente enumera todas las entidades de seguridad que tienen acceso a la Samples base de datos.

.show database Samples principals

Salida del ejemplo

Rol PrincipalType PrincipalDisplayName PrincipalObjectId PrincipalFQN
Ejemplos de base de datos Administración Usuario de Microsoft Entra Abbi Atkins cd709aed-a26c-e3953dec735e aaduser=abbiatkins@fabrikam.com

Incorporación y eliminación de roles de seguridad

En esta sección se proporciona sintaxis, parámetros y ejemplos para agregar y quitar entidades de seguridad.

Syntax

AccióndatabaseDatabaseNameRole(Principal [,Principal...] ) [skip-results] [ Description ]

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
Acción string ✔️ .addComando , .dropo .set.
.add agrega las entidades de seguridad especificadas, .drop quita las entidades de seguridad especificadas y .set agrega las entidades de seguridad especificadas y quita todas las anteriores.
DatabaseName string ✔️ Nombre de la base de datos para la que se van a agregar entidades de seguridad.
Rol string ✔️ Rol que se va a asignar a la entidad de seguridad. Para las bases de datos, puede ser admins, users, unrestrictedviewersviewers, , ingestorso monitors.
Principal string ✔️ Una o varias entidades de seguridad. Para obtener instrucciones sobre cómo especificar estas entidades de seguridad, consulte Referencia a entidades de seguridad.
skip-results string Si se proporciona, el comando no devolverá la lista actualizada de entidades de seguridad de base de datos.
Descripción string Texto para describir el cambio que se mostrará al usar el .show comando .

Nota

El .set comando con none en lugar de una lista de entidades de seguridad quitará todas las entidades de seguridad del rol especificado.

Ejemplos

En los ejemplos siguientes, verá cómo agregar roles de seguridad, quitar roles de seguridad y agregar y quitar roles de seguridad en el mismo comando.

Adición de roles de seguridad con .add

En el ejemplo siguiente se agrega una entidad de seguridad al users rol de la Samples base de datos.

.add database Samples users ('aaduser=imikeoein@fabrikam.com')

En el ejemplo siguiente se agrega una aplicación al viewers rol en la Samples base de datos.

.add database Samples viewers ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com')

Eliminación de roles de seguridad con .drop

En el ejemplo siguiente se quitan todas las entidades de seguridad del grupo del admins rol de la Samples base de datos.

.drop database Samples admins ('aadGroup=SomeGroupEmail@fabrikam.com')

Agregar nuevos roles de seguridad y quitar el antiguo con .set

En el ejemplo siguiente se quitan las entidades de seguridad existentes viewers y se agregan las entidades de seguridad proporcionadas como viewers en la Samples base de datos.

.set database Samples viewers ('aaduser=imikeoein@fabrikam.com', 'aaduser=abbiatkins@fabrikam.com')

Quitar todos los roles de seguridad con .set

El siguiente comando quita todos los existentes viewers en la Samples base de datos.

.set database Samples viewers none