- 05/24/2017
- 4 minuten om te lezen
-
- V
- w
- M
- j
- D
-
+8
TOEPASSING OP: SQL Server Azure SQL Database Azure Synapse Analytics Parallel Data Warehouse
SQL Server biedt rollen op serverniveau om u te helpen de machtigingen op een server te beheren. Deze rollen zijn beveiligingsprincipes die andere principalen groeperen. Rollen op server-niveau zijn server-breed in hun permissies. (Rollen zijn als groepen in het Windows-besturingssysteem.)
Vaste server rollen zijn voorzien voor het gemak en achterwaartse compatibiliteit. Wijs meer specifieke permissies toe waar mogelijk.
SQL Server biedt negen vaste server rollen. De rechten die aan de vaste serverrollen worden toegekend (behalve public) kunnen niet worden gewijzigd. Beginnend met SQL Server 2012 (11.x), kunt u door de gebruiker gedefinieerde serverrollen maken en machtigingen op serverniveau toevoegen aan de door de gebruiker gedefinieerde serverrollen.
U kunt principals op serverniveau (SQL Server-logins, Windows-accounts en Windows-groepen) toevoegen aan rollen op serverniveau. Elk lid van een vaste serverrol kan andere aanmeldingen aan diezelfde rol toevoegen. Leden van door de gebruiker gedefinieerde serverrollen kunnen geen andere serverprincipals aan de rol toevoegen.
Note
machtigingen op serverniveau zijn niet beschikbaar in SQL Database of Azure Synapse Analytics. Zie Database-toegang beheren en verlenen voor meer informatie over SQL Database.
Vaste rollen op serverniveau
De volgende tabel toont de vaste rollen op serverniveau en hun mogelijkheden.
Rol op vast serverniveau | Omschrijving |
---|---|
sysadmin | Leden met de vaste serverrol sysadmin kunnen elke activiteit op de server uitvoeren. |
serveradmin | Leden met de vaste serverrol serveradmin kunnen serverbrede configuratieopties wijzigen en de server afsluiten. |
securityadmin | Leden met de vaste serverrol securityadmin beheren logins en hun eigenschappen. Zij kunnen GRANT , DENY , en REVOKE permissies op serverniveau. Ze kunnen ook GRANT , DENY , en REVOKE database-niveau permissies als ze toegang hebben tot een database. Bovendien kunnen zij wachtwoorden voor SQL Server-logins resetten.BELANGRIJK: De mogelijkheid om toegang te verlenen tot de Database Engine en om gebruikersmachtigingen te configureren stelt de security-ad in staat om de meeste servermachtigingen toe te wijzen. De securityadmin rol moet worden behandeld als gelijkwaardig aan de sysadmin rol. |
processadmin | Leden van de processadmin vaste server rol kunnen processen beëindigen die draaien in een instantie van SQL Server. |
setupadmin | Leden van de setupadmin vaste server rol kunnen gekoppelde servers toevoegen en verwijderen door gebruik te maken van Transact-SQL statements. (Het lidmaatschap van sysadmin is nodig wanneer Management Studio wordt gebruikt.) |
bulkadmin | Leden met de vaste serverrol bulkadmin kunnen het BULK INSERT statement uitvoeren. |
diskadmin | De vaste serverrol diskadmin wordt gebruikt voor het beheer van schijfbestanden. |
dbcreator | Leden van de vaste serverrol dbcreator kunnen elke database maken, wijzigen, verwijderen en herstellen. |
public | Elke SQL Server-login behoort tot de publieke serverrol. Wanneer een server principal geen specifieke machtigingen op een beveiligbaar object heeft gekregen of geweigerd, erft de gebruiker de machtigingen die aan public op dat object zijn toegekend. Ken alleen publieke rechten toe op een object als u wilt dat het object beschikbaar is voor alle gebruikers. U kunt het lidmaatschap van public niet wijzigen. Note: public is anders geïmplementeerd dan andere rollen, en permissies kunnen worden toegekend, geweigerd, of ingetrokken van de public vaste server rollen. |
Belangrijk
De meeste permissies van de volgende serverrollen zijn niet van toepassing op Synapse SQL – processadmin, serveradmin, setupadmin, en diskadmin.
Permissies van vaste serverrollen
Elke vaste serverrol heeft bepaalde permissies die eraan zijn toegewezen. De volgende afbeelding toont de machtigingen die aan de serverrollen zijn toegewezen.
Belangrijk
De CONTROL SERVER-machtiging is vergelijkbaar met, maar niet identiek aan de vaste serverrol sysadmin. Toestemmingen impliceren geen rollidmaatschappen en rollidmaatschappen verlenen geen toestemmingen. (Bijv. CONTROL SERVER impliceert geen lidmaatschap van de vaste serverrol sysadmin). Het is echter soms mogelijk om je te impersoneren tussen rollen en gelijkwaardige permissies. Voor de meeste DBCC-opdrachten en veel systeemprocedures is lidmaatschap van de vaste-serverrol sysadmin vereist. Voor een lijst van 171 systeem stored procedures die sysadmin lidmaatschap vereisen, zie de volgende blog post van Andreas Wolter CONTROL SERVER vs. sysadmin/sa: permissies, systeem procedures, DBCC, automatische schema creatie en privilege escalatie – caveats.
Server-Level Permissions
Alleen permissies op serverniveau kunnen worden toegevoegd aan door de gebruiker gedefinieerde server rollen. Voer het volgende statement uit om de machtigingen op serverniveau op te sommen. De machtigingen op serverniveau zijn:
SELECT * FROM sys.fn_builtin_permissions('SERVER') ORDER BY permission_name;
Voor meer informatie over machtigingen, zie Machtigingen (Database Engine) en sys.fn_builtin_permissions (Transact-SQL).
Werken met rollen op serverniveau
In de volgende tabel worden de opdrachten, weergaven en functies uitgelegd die u kunt gebruiken om met rollen op serverniveau te werken.
Feature | Type | Description |
---|---|---|
sp_helpsrvrole (Transact-SQL) | Metadata | Retourneert een lijst met rollen op serverniveau. |
sp_helpsrvrolemember (Transact-SQL) | Metadata | Retourneert informatie over de leden van een rol op serverniveau. |
sp_srvrolepermission (Transact-SQL) | Metadata | Geeft de permissies van een rol op serverniveau weer. |
IS_SRVROLEMEMBER (Transact-SQL) | Metadata | Geeft aan of een SQL Server-login lid is van de opgegeven rol op serverniveau. |
sys.server_role_members (Transact-SQL) | Metadata | Retourneert een rij voor elk lid van elke rol op serverniveau. |
sp_addsrvrolemember (Transact-SQL) | Commando | Voegt een login toe als lid van een rol op serverniveau. Verouderd. Gebruik in plaats daarvan ALTER SERVER ROLE. |
sp_dropsrvrolemember (Transact-SQL) | Command | Verwijdert een SQL Server login of een Windows gebruiker of groep van een rol op serverniveau. Verouderd. Gebruik in plaats daarvan ALTER SERVER ROLE. |
CREATE SERVER ROLE (Transact-SQL) | Command | Creëert een door de gebruiker gedefinieerde serverrol. |
ALTER SERVER ROLE (Transact-SQL) | Command | Verandert het lidmaatschap van een serverrol of wijzigt de naam van een door de gebruiker gedefinieerde serverrol. |
DROP SERVER ROLE (Transact-SQL) | Command | Verwijdert een door de gebruiker gedefinieerde serverrol. |
IS_SRVROLEMBER (Transact-SQL) | Functie | Bepaalt het lidmaatschap van een serverrol. |
Zie ook
Database-Level Roles
Security Catalog Views (Transact-SQL)
Security Functions (Transact-SQL)
Beveiliging SQL Server
GRANT Server Principal Permissions (Transact-SQL)
REVOKE Server Principal Permissions (Transact-SQL)
DENY Server Principal Permissions (Transact-SQL)
Maak een Server Role