Compartir a través de


Introducción a los roles de seguridad

Se aplica a: ✅Microsoft FabricAzure Data Explorer

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.

Cuando una entidad de seguridad intenta una operación, el sistema realiza una comprobación de autorización para asegurarse de que la entidad de seguridad está asociada con al menos un rol de seguridad que concede permisos para realizar la operación. Si se produce un error en una comprobación de autorización, se anula la operación.

Los comandos de administración enumerados en este artículo se pueden usar para administrar entidades de seguridad y sus roles de seguridad en bases de datos, tablas, tablas externas, vistas materializadas y funciones.

Nota:

Los roles de seguridad de AllDatabasesAdmin, AllDatabasesViewer no se pueden configurar con comandos de administración de roles de seguridad. Los roles y Viewer del Admin área de trabajo heredan respectivamente.

Nota:

Los tres roles de seguridad de nivel de clúster de AllDatabasesAdmin, AllDatabasesViewery AllDatabasesMonitor no se pueden configurar con comandos de administración de roles de seguridad.

Para obtener información sobre cómo configurarlos en Azure Portal, consulte Administración de permisos de clúster.

Comandos de administración

En la tabla siguiente se describen los comandos que se usan para administrar roles de seguridad.

Comando Descripción
.show Enumera las entidades de seguridad con el rol especificado.
.add Agrega una o varias entidades de seguridad al rol.
.drop Quita una o varias entidades de seguridad del rol.
.set Establece el rol en la lista específica de entidades de seguridad, quitando todas las anteriores.

Roles de seguridad

En la tabla siguiente se describe el nivel de acceso concedido para cada rol y se muestra una comprobación si el rol se puede asignar dentro del tipo de objeto especificado.

Rol Permisos Bases de datos Tablas Tablas externas Vistas materializadas Funciones
admins Vea, modifique y quite los objetos y subobjetos. ✔️ ✔️ ✔️ ✔️ ✔️
users Vea el objeto y cree nuevos subobjetos. ✔️
viewers Vea el objeto donde RestrictedViewAccess no está activado. ✔️
unrestrictedviewers Vea el objeto incluso donde está activado RestrictedViewAccess . La entidad de seguridad también debe tener adminspermisos o viewersusers . ✔️
ingestors Ingerir datos en el objeto sin acceso a la consulta. ✔️ ✔️
monitors Vea metadatos como esquemas, operaciones y permisos. ✔️

Para obtener una descripción completa de los roles de seguridad en cada ámbito, consulte Control de acceso basado en roles de Kusto.

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 acceso a una vista de entidad de seguridad a un subconjunto de tablas, consulte Administración del acceso a la vista de tablas.

Escenarios frecuentes

Mostrar los roles principales

Para ver sus propios roles en el clúster, ejecute el siguiente comando:

Para ver sus propios roles en el centro de eventos, ejecute el siguiente comando:

.show cluster principal roles

Mostrar los roles en un recurso

Para comprobar los roles asignados en un recurso específico, ejecute el siguiente comando dentro de la base de datos pertinente o la base de datos que contiene el recurso:

// For a database:
.show database DatabaseName principal roles

// For a table:
.show table TableName principal roles

// For an external table:
.show external table ExternalTableName principal roles

// For a function:
.show function FunctionName principal roles

// For a materialized view:
.show materialized-view MaterializedViewName principal roles

Mostrar los roles de todas las entidades de seguridad de un recurso

Para ver los roles asignados a todas las entidades de seguridad de un recurso determinado, ejecute el siguiente comando dentro de la base de datos pertinente o la base de datos que contiene el recurso:

// For a database:
.show database DatabaseName principals

// For a table:
.show table TableName principals

// For an external table:
.show external table ExternalTableName principals

// For a function:
.show function FunctionName principals

// For a materialized view:
.show materialized-view MaterializedViewName principals

Sugerencia

Use el operador where para filtrar los resultados por una entidad de seguridad o un rol específicos.

Importante

  • Si la entidad de seguridad está en el mismo inquilino que el usuario, se muestra su nombre completo (FQN).

  • Si la entidad de seguridad está en un inquilino diferente al del usuario:

    • El nombre para mostrar no muestra el FQN.
    • El nombre para mostrar indica que la entidad de seguridad es de un inquilino diferente. El formato es [User/Group/Application] from AAD tenant [Tenant Id].
    • Para agregar información de identificación, asigne a la entidad de seguridad un rol en su inquilino y use el Description parámetro para agregar detalles de identificación. Description se muestra en la columna Notas de la salida.

Modificación de las asignaciones de roles

Para más información sobre cómo modificar las asignaciones de roles en los niveles de base de datos y tabla, consulte Administración de roles de seguridad de base de datos y Administración de roles de seguridad de tabla.