Delen via


ROL AANMAKEN (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-eindpunt in Microsoft FabricMagazijn in Microsoft FabricSQL-database in Microsoft Fabric Preview

Hiermee maakt u een nieuwe databaserol in de huidige database.

Transact-SQL syntaxis-conventies

Syntax

CREATE ROLE role_name [ AUTHORIZATION owner_name ]  

Arguments

role_name
Is de naam van de rol die moet worden gemaakt.

AUTHORIZATION owner_name
Is de databasegebruiker of -rol die eigenaar is van de nieuwe rol. Als er geen gebruiker is opgegeven, is de rol eigendom van de gebruiker die CREATE ROLE uitvoert. De eigenaar van de rol of een lid van een rol die eigenaar is, kan leden van de rol toevoegen of verwijderen.

Remarks

Rollen zijn beveiligbaar op databaseniveau. Nadat u een rol hebt gemaakt, configureert u de machtigingen op databaseniveau van de rol met behulp van GRANT, DENY en REVOKE. Als u leden wilt toevoegen aan een databaserol, gebruikt u ALTER ROLE (Transact-SQL). Zie Rollen op databaseniveau voor meer informatie.

Databaserollen zijn zichtbaar in de sys.database_role_members- en sys.database_principals catalogusweergaven.

Zie Aan de slag met database-enginemachtigingenvoor informatie over het ontwerpen van een machtigingssysteem.

Note

Schema's zijn niet gelijk aan databasegebruikers. Gebruik systeemcatalogusweergaven om eventuele verschillen tussen databasegebruikers en schema's te identificeren.

Permissions

Vereist machtiging CREATE ROLE voor de database of het lidmaatschap van de db_securityadmin vaste databaserol. Wanneer u de optie AUTORISATIE gebruikt, zijn ook de volgende machtigingen vereist:

  • Als u het eigendom van een rol aan een andere gebruiker wilt toewijzen, moet u de machtiging IMITATE voor die gebruiker hebben.

  • Als u het eigendom van een rol aan een andere rol wilt toewijzen, moet u lid zijn van de rol van de ontvanger of alter-machtiging voor die rol.

  • Als u het eigendom van een rol wilt toewijzen aan een toepassingsrol, moet u alter-machtigingen voor de toepassingsrol hebben.

Examples

In de volgende voorbeelden wordt de AdventureWorks-database gebruikt.

A. Een databaserol maken die eigendom is van een databasegebruiker

In het volgende voorbeeld wordt de databaserol buyers gemaakt die eigendom is van de gebruiker BenMiller.

CREATE ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. Een databaserol maken die eigendom is van een vaste databaserol

In het volgende voorbeeld wordt de databaserol auditors gemaakt die eigendom is van de db_securityadmin vaste databaserol.

CREATE ROLE auditors AUTHORIZATION db_securityadmin;  
GO  

See Also

Principals (database-engine)
ROL VANTransact-SQL)
ROL LATEN VALLEN (Transact-SQL)
EVENTDATA (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)
Aan de slag met database-enginemachtigingen