• 05/24/2017
  • 4 minuter att läsa
    • V
    • w
    • M
    • j
    • D
    • +8

GÖR TILL: SQL Server Azure SQL Database Azure Synapse Analytics Parallel Data Warehouse

SQL Server tillhandahåller roller på servernivå som hjälper dig att hantera behörigheter på en server. Dessa roller är säkerhetsprinciper som grupperar andra principer. Roller på servernivå är serverövergripande i sitt behörighetsområde. (Roller är som grupper i operativsystemet Windows.)

Fasta serverroller tillhandahålls för bekvämlighet och bakåtkompatibilitet. Tilldela mer specifika behörigheter när det är möjligt.

SQL Server tillhandahåller nio fasta serverroller. De behörigheter som tilldelas de fasta serverrollerna (utom public) kan inte ändras. Från och med SQL Server 2012 (11.x) kan du skapa användardefinierade serverroller och lägga till behörigheter på servernivå till de användardefinierade serverrollerna.

Du kan lägga till principaler på servernivå (SQL Server-login, Windows-konton och Windows-grupper) i roller på servernivå. Varje medlem i en fast serverroll kan lägga till andra inloggningar till samma roll. Medlemmar i användardefinierade serverroller kan inte lägga till andra serverprinciper i rollen.

Notera

Handlingar på servernivå är inte tillgängliga i SQL Database eller Azure Synapse Analytics. Mer information om SQL Database finns i Kontrollera och bevilja databasåtkomst.

Fasta roller på servernivå

I följande tabell visas de fasta rollerna på servernivå och deras funktioner.

Roll på fast servernivå Beskrivning
sysadmin Medlemmar i den fasta serverrollen sysadmin kan utföra vilken aktivitet som helst på servern.
serveradmin Medlemmar i den fasta serverrollen serveradmin kan ändra konfigurationsalternativ för hela servern och stänga ner servern.
securityadmin Medlemmar i den fasta serverrollen securityadmin hanterar inloggningar och deras egenskaper. De kan GRANT, DENY och REVOKE behörigheter på servernivå. De kan även GRANT, DENY och REVOKE behörigheter på databasnivå om de har tillgång till en databas. Dessutom kan de återställa lösenord för inloggningar till SQL Server.
VIKTIGT: Möjligheten att bevilja åtkomst till databasmotorn och konfigurera användarbehörigheter gör att säkerhetsadministratören kan tilldela de flesta serverbehörigheter. Rollen securityadmin bör behandlas som likvärdig med rollen sysadmin.
processadmin Medlemmar i den fasta serverrollen processadmin kan avsluta processer som körs i en instans av SQL Server.
setupadmin Medlemmar i den fasta serverrollen setupadmin kan lägga till och ta bort länkade servrar med hjälp av Transact-SQL-meddelanden. (Medlemskap som sysadmin krävs när Management Studio används.)
bulkadmin Medlemmar i den fasta serverrollen bulkadmin kan köra BULK INSERT-anvisningen.
diskadmin Diskadmin-rollen för fasta servrar används för att hantera diskfiler.
dbcreator Medlemmar i den fasta serverrollen dbcreator kan skapa, ändra, släppa och återställa alla databaser.
public Alla inloggningar till SQL Server tillhör serverrollen public. När en serverhuvudman inte har beviljats eller nekats specifika behörigheter för ett säkerhetsbart objekt ärver användaren de behörigheter som har beviljats till public för det objektet. Tilldela endast offentliga behörigheter på ett objekt när du vill att objektet ska vara tillgängligt för alla användare. Du kan inte ändra medlemskap i public.
Notera: public implementeras på ett annat sätt än andra roller, och behörigheter kan beviljas, nekas eller återkallas från de fasta serverrollerna public.

Viktigt

De flesta av de behörigheter som tillhandahålls av följande serverroller är inte tillämpliga på Synapse SQL – processadmin, serveradmin, setupadmin och diskadmin.

Handlingsbehörigheter för fasta serverroller

Varje fast serverroll har tilldelats vissa behörigheter. Följande grafik visar de behörigheter som tilldelats serverrollerna.

Viktigt

Handlingsbehörigheten CONTROL SERVER liknar men är inte identisk med den fasta serverrollen sysadmin. Behörigheter innebär inte rolltillhörighet och rolltillhörighet ger inte behörighet. (CONTROL SERVER innebär t.ex. inte medlemskap i rollen sysadmin fixed server). Det är dock ibland möjligt att personifiera sig mellan roller och motsvarande behörigheter. De flesta DBCC-kommandon och många systemprocedurer kräver medlemskap i rollen sysadmin fixed server. En lista över 171 lagrade systemprocedurer som kräver sysadmin-medlemskap finns i följande blogginlägg av Andreas Wolter CONTROL SERVER vs. sysadmin/sa: permissions, systemprocedurer, DBCC, automatic schema creation and privilege escalation – caveats.

Server-Level Permissions

Endast behörigheter på servernivå kan läggas till i användardefinierade serverroller. Om du vill visa en lista över behörigheter på servernivå utför du följande anvisning. Behörigheterna på servernivå är:

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

För mer information om behörigheter, se Behörigheter (databasmotor) och sys.fn_builtin_permissions (Transact-SQL).

Arbeta med roller på servernivå

I följande tabell förklaras de kommandon, vyer och funktioner som du kan använda för att arbeta med roller på servernivå.

Feature Type Description
sp_helpsrvrole (Transact-SQL) Metadata Returnerar en lista över roller på servernivå.
sp_helpsrvrolemember (Transact-SQL) Metadata Hämtar information om medlemmarna i en roll på servernivå.
sp_srvrolepermission (Transact-SQL) Metadata Visar behörigheterna för en roll på servernivå.
IS_SRVROLEMEMBER (Transact-SQL) Metadata Indikerar om en SQL Server-inloggning är medlem i den angivna rollen på servernivå.
sys.server_role_members (Transact-SQL) Metadata Returnerar en rad för varje medlem i varje roll på servernivå.
sp_addsrvrolemember (Transact-SQL) Kommando Lägger till en inloggning som medlem i en roll på servernivå. Föråldrad. Använd ALTER SERVER ROLE i stället.
sp_dropsrvrolemember (Transact-SQL) Kommando Ta bort en SQL Server-inloggning eller en Windows-användare eller grupp från en roll på servernivå. Föråldrad. Använd ALTER SERVER ROLE i stället.
CREATE SERVER ROLE (Transact-SQL) Command Skapa en användardefinierad serverroll.
ALTER SERVER ROLE (Transact-SQL) Kommando Ändar medlemskapet i en serverroll eller ändrar namnet på en användardefinierad serverroll.
DROP SERVER ROLE (Transact-SQL) Kommando Försvinner en användardefinierad serverroll.
IS_SRVROLEMEMBER (Transact-SQL) Funktion Detektiverar medlemskap i serverrollen.

Se även

Roller på databasnivå
Säkerhetskatalogvyer (Transact-SQL)
Säkerhetsfunktioner (Transact-SQL)
Säkring av SQL Server
GRANT Server Principal Permissions (Transact-SQL)
REVOKE Server Principal Permissions (Transact-SQL)
DENY Server Principal Permissions (Transact-SQL)
Skapa en serverroll

Lämna ett svar

Din e-postadress kommer inte publiceras.