- 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