Dela via


SKAPA ROLL (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalysplattformssystem (PDW)SQL-analysslutpunkt i Microsoft FabricLager i Microsoft FabricSQL-databas i Förhandsversion av Microsoft Fabric

Skapar en ny databasroll i den aktuella databasen.

Transact-SQL syntaxkonventioner

Syntax

CREATE ROLE role_name [ AUTHORIZATION owner_name ]  

Arguments

role_name
Är namnet på den roll som ska skapas.

AUTHORIZATION owner_name
Är databasanvändaren eller rollen som ska äga den nya rollen. Om ingen användare anges ägs rollen av den användare som kör CREATE ROLE. Rollens ägare eller någon medlem i en ägande roll kan lägga till eller ta bort medlemmar i rollen.

Remarks

Roller är skyddsbara på databasnivå. När du har skapat en roll konfigurerar du behörigheterna på databasnivå för rollen med hjälp av GRANT, DENY och REVOKE. Om du vill lägga till medlemmar i en databasroll använder du ALTER ROLE (Transact-SQL). Mer information finns i Roller på databasnivå.

Databasroller visas i sys.database_role_members- och sys.database_principals katalogvyer.

Information om hur du utformar ett behörighetssystem finns i Komma igång med behörigheter för databasmotorn.

Note

Scheman motsvarar inte databasanvändare. Använd systemkatalogvyer för att identifiera eventuella skillnader mellan databasanvändare och scheman.

Permissions

Kräver behörigheten SKAPA ROLL för databasen eller medlemskapet i db_securityadmin fast databasroll. När du använder alternativet AUKTORISERING krävs även följande behörigheter:

  • Om du vill tilldela ägarskap för en roll till en annan användare, kräver IMPERSONATE-behörighet för den användaren.

  • Om du vill tilldela ägarskap för en roll till en annan roll kräver medlemskap i mottagarrollen eller ALTER-behörighet för den rollen.

  • Om du vill tilldela ägarskap för en roll till en programroll kräver alter-behörighet för programrollen.

Examples

Följande exempel använder alla AdventureWorks-databasen.

A. Skapa en databasroll som ägs av en databasanvändare

I följande exempel skapas databasrollen buyers som ägs av användaren BenMiller.

CREATE ROLE buyers AUTHORIZATION BenMiller;  
GO  

B. Skapa en databasroll som ägs av en fast databasroll

I följande exempel skapas den databasroll auditors som ägs av den fasta databasrollen db_securityadmin .

CREATE ROLE auditors AUTHORIZATION db_securityadmin;  
GO  

See Also

huvudnamn (databasmotor)
ÄNDRA ROLL (Transact-SQL)
SLÄPP ROLL (Transact-SQL)
EVENTDATA (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)
Komma igång med behörigheter för databasmotorn