Compartir a través de


CREAR ROL (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punto de conexión de análisis SQL en Microsoft FabricWarehouse en Microsoft FabricBase de datos SQL de Microsoft Fabric

Crea un rol de base de datos nuevo en la base de datos actual.

Convenciones de sintaxis de Transact-SQL

Sintaxis

CREATE ROLE role_name [ AUTHORIZATION owner_name ]  

Argumentos

role_name
Es el nombre del rol que se va a crear.

OWNER_NAME DE AUTORIZACIÓN
Es el usuario o el rol de base de datos que será propietario del nuevo rol. Si no se especifica un usuario, el rol será propiedad del usuario que ejecute CREATE ROLE. El propietario del rol, o cualquier miembro de un rol propietario, puede agregar o quitar miembros del rol.

Observaciones

Los roles son elementos protegibles de nivel de base de datos. Después de crear un rol, configure los permisos de nivel de base de datos del rol con GRANT, DENY y REVOKE. Para agregar miembros a un rol de base de datos, use ALTER ROLE (Transact-SQL). Para más información, vea Roles de nivel de base de datos.

Los roles de base de datos se pueden ver en las vistas de catálogos sys.database_role_members y sys.database_principals.

Para más información acerca de cómo diseñar un sistema de permisos, consulte Getting Started with Database Engine Permissions.

Nota:

Los esquemas no son equivalentes a los usuarios de la base de datos. Use vistas de catálogo del sistema para identificar las diferencias entre los usuarios y esquemas de la base de datos.

Permisos

Requiere el permiso CREATE ROLE en la base de datos o la pertenencia al rol fijo de base de datos db_securityadmin. Cuando usa la opción AUTHORIZATION, también se necesitan los siguientes permisos:

  • Asignar la propiedad de un rol a otro usuario requiere el permiso IMPERSONATE para ese usuario.

  • Asignar la propiedad de un rol a otro rol requiere la pertenencia al rol receptor o el permiso ALTER para ese rol.

  • Asignar la propiedad de un rol a un rol de aplicación requiere el permiso ALTER para el rol de aplicación.

Ejemplos

En todos estos ejemplos se usa la base de datos AdventureWorks.

Un. Crear un rol de base de datos propiedad de un usuario de la base de datos

En el siguiente ejemplo se crea el rol de base de datos buyers que es propiedad del usuario BenMiller.

CREATE ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. Crear un rol de base de datos que es propiedad de un rol fijo de base de datos

En el siguiente ejemplo se crea el rol de base de datos auditors que es propiedad del rol fijo de base de datos db_securityadmin.

CREATE ROLE auditors AUTHORIZATION db_securityadmin;  
GO  

Consulte también

Entidades de seguridad (motor de base de datos)
ALTER ROLE (Transact-SQL)
ROL DE CAÍDA (Transact-SQL)
EVENTDATA (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)
Introducción a los permisos de los motores de bases de datos