• 24/05/2017
  • 4 minutter at læse
    • V
    • w
    • M
    • j
    • D
    • +8

Gælder for: SQL Server Azure SQL Database Azure Synapse Analytics Parallel Data Warehouse

SQL Server indeholder roller på serverniveau for at hjælpe dig med at administrere tilladelserne på en server. Disse roller er sikkerhedsprincipaler, der grupperer andre principaler. Roller på serverniveau er serverdækkende med hensyn til deres tilladelsesområde. (Roller er ligesom grupper i Windows-operativsystemet.)

Fikserede serverroller leveres for nemheds skyld og for at sikre bagudkompatibilitet. Tildel mere specifikke tilladelser, når det er muligt.

SQL Server indeholder ni faste serverroller. De tilladelser, der er tildelt de faste serverroller (undtagen offentlig), kan ikke ændres. Fra og med SQL Server 2012 (11.x) kan du oprette brugerdefinerede serverroller og tilføje tilladelser på serverniveau til de brugerdefinerede serverroller.

Du kan tilføje principaler på serverniveau (SQL Server-logins, Windows-konti og Windows-grupper) i roller på serverniveau. Hvert medlem af en fast serverrolle kan tilføje andre logins til den samme rolle. Medlemmer af brugerdefinerede serverroller kan ikke tilføje andre serverprincipaler til rollen.

Note

Rettigheder på serverniveau er ikke tilgængelige i SQL Database eller Azure Synapse Analytics. Du kan finde flere oplysninger om SQL Database under Kontrol og tildeling af databaseadgang.

Fikserede roller på serverniveau

Den følgende tabel viser de faste roller på serverniveau og deres funktioner.

Rolle på fast serverniveau Beskrivelse
sysadmin Medlemmer af den faste serverrolle sysadmin kan udføre enhver aktivitet i serveren.
serveradmin Medlemmer af den faste serverrolle serveradmin kan ændre konfigurationsindstillinger for hele serveren og lukke serveren ned.
securityadmin Medlemmer af den faste serverrolle securityadmin administrerer logins og deres egenskaber. De kan GRANT, DENY og REVOKE tilladelser på serverniveau. De kan også GRANT, DENY og REVOKE tilladelser på databaseniveau, hvis de har adgang til en database. Desuden kan de nulstille adgangskoder til SQL Server-logins.
VIGTIGT: Muligheden for at give adgang til databasemotoren og konfigurere brugertilladelser gør det muligt for sikkerhedsadministratoren at tildele de fleste servertilladelser. Rollen securityadmin skal behandles som svarende til rollen sysadmin.
processadmin Medlemmer af den faste serverrolle processadmin kan afslutte processer, der kører i en instans af SQL Server.
setupadmin Medlemmer af den faste serverrolle setupadmin kan tilføje og fjerne tilknyttede servere ved hjælp af Transact-SQL-meddelelser. (medlemskab af sysadmin er nødvendigt, når Management Studio anvendes.)
bulkadmin Medlemmer af den faste serverrolle bulkadmin kan køre BULK INSERT-erklæringen.
diskadmin Den faste serverrolle diskadmin bruges til at administrere diskfiler.
dbcreator Medlemmer af den faste serverrolle dbcreator kan oprette, ændre, slette og gendanne enhver database.
public Alle SQL Server-logins tilhører den faste serverrolle public. Når en serverprincipal ikke er blevet tildelt eller nægtet specifikke tilladelser til et sikringsobjekt, arver brugeren de tilladelser, der er tildelt public til det pågældende objekt. Du må kun tildele public-tilladelser på et objekt, når du ønsker, at objektet skal være tilgængeligt for alle brugere. Du kan ikke ændre medlemskab i public.
Bemærk: public er implementeret anderledes end andre roller, og tilladelser kan tildeles, nægtes eller tilbagekaldes fra de faste serverroller public.

Vigtigt

De fleste af de tilladelser, der gives af følgende serverroller, gælder ikke for Synapse SQL – processadmin, serveradmin, setupadmin og diskadmin.

Godkendelser for faste serverroller

Der er tildelt visse tilladelser til hver fast serverrolle. Følgende grafik viser de tilladelser, der er tildelt serverrollerne.

Vigtigt

Godkendelsen CONTROL SERVER ligner, men er ikke identisk med den faste serverrolle sysadmin, men er ikke identisk med den faste serverrolle sysadmin. Tilladelser indebærer ikke rolletilhørsforhold, og rolletilhørsforhold giver ikke tilladelser. (F.eks. indebærer CONTROL SERVER ikke medlemskab af den faste serverrolle sysadmin). Det er dog nogle gange muligt at optræde som person mellem roller og tilsvarende tilladelser. De fleste DBCC-kommandoer og mange systemprocedurer kræver medlemskab af den faste serverrolle sysadmin. En liste over 171 gemte systemprocedurer, der kræver medlemskab af sysadmin, findes i følgende blogindlæg af Andreas Wolter CONTROL SERVER vs. sysadmin/sa: tilladelser, systemprocedurer, DBCC, automatisk oprettelse af skemaer og rettighedseskalering – forbehold.

Rettigheder på serverniveau

Der kan kun tilføjes tilladelser på serverniveau til brugerdefinerede serverroller. Hvis du vil have vist tilladelserne på serverniveau, skal du udføre følgende erklæring. Tilladelserne på serverniveau er:

SELECT * FROM sys.fn_builtin_permissions('SERVER') ORDER BY permission_name; 

Der er flere oplysninger om tilladelser i Tilladelser (databasemotor) og sys.fn_builtin_permissions (Transact-SQL).

Arbejde med roller på serverniveau

Den følgende tabel forklarer de kommandoer, visninger og funktioner, som du kan bruge til at arbejde med roller på serverniveau.

Feature Type Beskrivelse
sp_helpsrvrole (Transact-SQL) Metadata Giver en liste over roller på serverniveau tilbage.
sp_helpsrvrolemember (Transact-SQL) Metadata Giver oplysninger om medlemmerne af en rolle på serverniveau.
sp_srvrolepermission (Transact-SQL) Metadata Viser tilladelserne for en rolle på serverniveau.
IS_SRVROLEMEMBER (Transact-SQL) Metadata Indikerer, om et SQL Server-login er medlem af den angivne rolle på serverniveau.
sys.server_role_members (Transact-SQL) Metadata Giver én række for hvert medlem af hver rolle på serverniveau.
sp_addsrvrolemember (Transact-SQL) Kommando Føjer et login til som et medlem af en rolle på serverniveau. Forældet. Brug ALTER SERVER ROLE i stedet.
sp_dropsrvrolemember (Transact-SQL) Kommando Fjernelse af et SQL Server-login eller en Windows-bruger eller -gruppe fra en rolle på serverniveau. Forældet. Brug ALTER SERVER ROLE i stedet.
CREATE SERVER ROLE (Transact-SQL) Kommando Opretter en brugerdefineret serverrolle.
ALTER SERVER ROLE (Transact-SQL) Kommando Ændrer medlemskabet af en serverrolle eller ændrer navnet på en brugerdefineret serverrolle.
DROP SERVER ROLE (Transact-SQL) Kommando Fjernelse af en brugerdefineret serverrolle.
IS_SRVROLEMEMBER (Transact-SQL) Funktion Destemmer medlemskab af serverrolle.

Se også

Roller på databaseniveau
Sikkerheds-katalogvisninger (Transact-SQL)
Sikkerhedsfunktioner (Transact-SQL)
Sikring af SQL Server
GRANT Server Principal Permissions (Transact-SQL)
REVOKE Server Principal Permissions (Transact-SQL)
DENY Server Principal Permissions (Transact-SQL)
Opret en serverrolle

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.