Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Felügyelt Azure SQL-példány
Analytics platformrendszer (PDW)
Az SQL Server kiszolgálószintű szerepköröket biztosít a kiszolgálói engedélyek kezeléséhez. Ezek a szerepkörök olyan biztonsági tagok, amelyek más tagokat csoportosítanak. A kiszolgálószintű szerepkörök kiszolgálószintűek az engedélyek hatókörében. (A szerepkörök olyanok, mint a Windows operációs rendszer csoportjai .)
Az SQL Server 2019 (15.x) és a korábbi verziók kilenc rögzített kiszolgálói szerepkört biztosítottak. A rögzített kiszolgálói szerepkörökhöz megadott engedélyek (a nyilvánosak kivételével) nem módosíthatók. Az SQL Server 2012 -től kezdve (11.x) létrehozhat felhasználó által definiált kiszolgálói szerepköröket, és kiszolgálószintű engedélyeket adhat hozzá a felhasználó által definiált kiszolgálói szerepkörökhöz.
Az SQL Server 2022 (16.x) 10 további kiszolgálói szerepkörrel rendelkezik, amelyek kifejezetten a Minimális jogosultság elve szem előtt tartásával lettek kialakítva, amelyek előtagja ##MS_ és utótagja ## megkülönbözteti őket a szokásos, felhasználó által létrehozott tagoktól és egyéni kiszolgálói szerepköröktől. Ezek az új szerepkörök olyan jogosultságokat tartalmaznak, amelyek a kiszolgáló hatókörére vonatkoznak, de az egyes adatbázisokra is örökölhetnek (kivéve a ##MS_LoginManager## kiszolgálói szerepkört).)
A helyszíni SQL Serverhez hasonlóan a kiszolgálói engedélyek hierarchikusan vannak rendszerezve. A kiszolgálószintű szerepkörök által birtokolt engedélyek adatbázis-engedélyekre propagálhatók. Ahhoz, hogy az engedélyek adatbázisszinten hatékonyan hasznosak legyenek, a bejelentkezésnek vagy a kiszolgálószintű szerepkör ##MS_DatabaseConnector## tagjának kell lennie (az SQL Server 2022-től kezdve (16.x)), amely minden adatbázisnak megadja az CONNECT engedélyt, vagy felhasználói fiókkal kell rendelkeznie az egyes adatbázisokban. Ez az adatbázisra master is vonatkozik.
Vegye figyelembe a következő példát: A kiszolgálószintű szerepkör ##MS_ServerStateReader## rendelkezik az engedéllyel VIEW SERVER STATE. A szerepkörhöz tartozó bejelentkezések felhasználói fiókkal vannak az és WideWorldImporters az master adatbázisokban. Ez a felhasználó rendelkezik a VIEW DATABASE STATE két adatbázisban öröklési engedéllyel is.
Kiszolgálószintű szerepkörökbe kiszolgálószintű tagokat (SQL Server-bejelentkezéseket, Windows-fiókokat és Windows-csoportokat) vehet fel. A rögzített kiszolgálói szerepkör minden tagja hozzáadhat más bejelentkezéseket ugyanahhoz a szerepkörhöz. A felhasználó által definiált kiszolgálói szerepkörök tagjai nem adhatnak hozzá más kiszolgálóneveket a szerepkörhöz.
Kiszolgálószintű szerepkörök rögzítve
Megjegyzés:
Ezek a kiszolgálószintű szerepkörök az SQL Server 2022 (16.x) előtt jelentek meg, és nem érhetők el az Azure SQL Database-ben vagy az Azure Synapse Analyticsben. Az engedélykezeléshez speciális Azure SQL Database-kiszolgálói szerepkörök tartoznak, amelyek egyenértékűek az SQL Server 2022-ben bevezetett kiszolgálószintű szerepkörök (16.x) használatával. Az SQL Database-ről további információt az adatbázis-hozzáférés szabályozása és biztosítása című témakörben talál.
Az alábbi táblázat a rögzített kiszolgálószintű szerepköröket és azok képességeit mutatja be.
| Kijavítottuk a kiszolgálószintű szerepkört | Leírás |
|---|---|
| sysadmin | A sysadmin rögzített kiszolgálói szerepkör tagjai bármilyen tevékenységet végrehajthatnak a kiszolgálón. Fontos: az engedélyek nem tagadhatók meg a szerepkör tagjai számára. |
| serveradmin | A serveradmin rögzített kiszolgálói szerepkör tagjai módosíthatják a kiszolgálószintű konfigurációs beállításokat, és leálltathatják a kiszolgálót. |
| securityadmin | A securityadmin rögzített kiszolgálói szerepkör tagjai kezelik a bejelentkezéseket és azok tulajdonságait. Ezek a engedélyek és GRANTDENYREVOKE a kiszolgálószintű engedélyek.
A securityadmin akkor is GRANTDENYrendelkezhet adatbázisszintű engedélyekkel és REVOKE adatbázisszintű engedélyekkel. Emellett a securityadmin alaphelyzetbe állíthatja az SQL Server-bejelentkezések jelszavát.FONTOS: Az adatbázismotorhoz való hozzáférés biztosítása és a felhasználói engedélyek konfigurálása lehetővé teszi, hogy a biztonsági rendszergazda a legtöbb kiszolgálói engedélyt hozzárendelje. A securityadmin szerepkört a sysadmin szerepkörrel egyenértékűként kell kezelni. Alternatív megoldásként az SQL Server 2022-től kezdve (16.x) fontolja meg az új rögzített kiszolgálói szerepkör ##MS_LoginManager## használatát. |
| processadmin | A processadmin rögzített kiszolgálói szerepkör tagjai befejezhetik az SQL Server egy példányán futó folyamatokat. |
| setupadmin | A setupadmin rögzített kiszolgálói szerepkör tagjai Transact-SQL utasítások használatával adhatnak hozzá és távolíthatnak el csatolt kiszolgálókat. (a Management Studio használatakor sysadmin-tagságra van szükség.) |
| bulkadmin | A bulkadmin rögzített kiszolgálói szerepkör tagjai futtathatják az utasítást BULK INSERT . A szerepkör tagjai bizonyos feltételek mellett emelhetik jogosultságaikat. Alkalmazza a minimális jogosultság elvét a szerepkör hozzárendelésekor, és figyelje a tagok által végzett összes tevékenységet. A bulkadmin szerepkör vagy ADMINISTER BULK OPERATIONS engedélyek linuxos SQL Server esetén nem támogatottak.A tömeges műveletek ( BULK INSERT utasítások) nem támogatottak a Microsoft Entra-hitelesítésen alapuló bejelentkezésekhez Linux vagy Windows rendszeren. Ebben a forgatókönyvben csak a sysadmin szerepkör tagjai végezhetnek tömeges beszúrásokat az SQL Serverhez. |
| diskadmin | A lemezfájlok kezelésére a diskadmin rögzített kiszolgálói szerepkör szolgál. |
| dbcreator | A dbcreator rögzített kiszolgálói szerepkör tagjai bármilyen adatbázist létrehozhatnak, módosíthatnak, elvethetnek és visszaállíthatnak. |
| public | Minden SQL Server-bejelentkezés a nyilvános kiszolgálói szerepkörhöz tartozik. Ha egy kiszolgálónév nem kap vagy nem tagad meg adott engedélyeket egy biztonságos objektumhoz, a felhasználó örökli az adott objektumon a nyilvánosság számára megadott engedélyeket. Csak akkor rendeljen hozzá nyilvános engedélyeket bármely objektumhoz, ha azt szeretné, hogy az objektum minden felhasználó számára elérhető legyen. A nyilvános tagság nem módosítható. Megjegyzés:a nyilvános szerepkörök másként vannak implementálva, mint a többi szerepkör, és engedélyeket lehet adni, megtagadni vagy visszavonni a nyilvános rögzített kiszolgálói szerepkörökből. |
Fontos
A következő kiszolgálói szerepkörök által biztosított engedélyek többsége nem alkalmazható az Azure Synapse Analyticsre – processadmin, serveradmin, setupadmin és diskadmin.
Kijavítottuk az SQL Server 2022-ben bevezetett kiszolgálószintű szerepköröket
Az alábbi táblázat az SQL Server 2022-ben (16.x) bevezetett rögzített kiszolgálószintű szerepköröket és azok képességeit mutatja be.
Megjegyzés:
Ezek a kiszolgálószintű engedélyek nem érhetők el a felügyelt Azure SQL-példányhoz vagy az Azure Synapse Analyticshez.
##MS_PerformanceDefinitionReader##, ##MS_ServerPerformanceStateReader##és ##MS_ServerSecurityStateReader## az SQL Server 2022-ben (16.x) vezetik be, és nem érhetők el az Azure SQL Database-ben.
| Kijavítottuk a kiszolgálószintű szerepkört | Leírás |
|---|---|
##MS_DatabaseConnector## |
A ##MS_DatabaseConnector## rögzített kiszolgálói szerepkör tagjai bármilyen adatbázishoz csatlakozhatnak anélkül, hogy az adatbázisban felhasználói fiókra kellene csatlakozniuk.Ha meg szeretné tagadni egy adott adatbázis CONNECT engedélyét, a felhasználók létrehozhatnak egy megfelelő felhasználói fiókot ehhez a bejelentkezéshez az adatbázisban, majd DENY az adatbázis-felhasználónak CONNECT engedélyt. Ez a DENY engedély felülírja a szerepkörből származó GRANT CONNECT engedélyt. |
##MS_LoginManager## |
A ##MS_LoginManager## rögzített kiszolgálói szerepkör tagjai létrehozhatnak, törölhetnek és módosíthatnak bejelentkezéseket. A régi rögzített kiszolgálói szerepkör securityadmin-jével ellentétben ez a szerepkör nem teszi lehetővé a tagok számára a GRANT jogosultságokat. Ez egy korlátozottabb szerepkör, amely segít megfelelni a minimális jogosultság elvének. |
##MS_DatabaseManager## |
A ##MS_DatabaseManager## rögzített kiszolgálói szerepkör tagjai adatbázisokat hozhatnak létre és törölhetnek. Az adatbázist létrehozó ##MS_DatabaseManager## szerepkör tagja lesz az adatbázis tulajdonosa, amely lehetővé teszi, hogy a felhasználó dbo felhasználóként csatlakozzon az adatbázishoz. A dbo felhasználó minden adatbázis-engedéllyel rendelkezik az adatbázisban. A ##MS_DatabaseManager## szerepkör tagjai nem feltétlenül rendelkeznek engedéllyel a nem saját adatbázisaik eléréséhez. Ez a kiszolgálói szerepkör ugyanazokkal a jogosultságokkal rendelkezik, mint az SQL Server adatbázis-létrehozó szerepköre, de javasoljuk, hogy ezt az új szerepkört használja az előbbihez, mivel ez a szerepkör az Azure SQL Database-ben is létezik, így különböző környezetekben is ugyanazt a szkriptet használhatja. A szerepkör tagjai bizonyos feltételek mellett emelhetik jogosultságaikat. Alkalmazza a minimális jogosultság elvét a szerepkör hozzárendelésekor, és figyelje a tagok által végzett összes tevékenységet. |
##MS_ServerStateManager## |
A ##MS_ServerStateManager## rögzített kiszolgálói szerepkör tagjai ugyanazokkal az engedélyekkel rendelkeznek, mint a ##MS_ServerStateReader## szerepkör. Emellett rendelkezik az ALTER SERVER STATE engedéllyel, amely lehetővé teszi a hozzáférést több felügyeleti művelethez, például: DBCC FREEPROCCACHE, , DBCC FREESYSTEMCACHE ('ALL')DBCC SQLPERF() |
##MS_ServerStateReader## |
A ##MS_ServerStateReader## rögzített kiszolgálói szerepkör tagjai az összes dinamikus felügyeleti nézetet (DMV-t) és függvényt elolvashatják, és engedéllyel rendelkezhetnek VIEW SERVER STATEVIEW DATABASE STATE minden olyan adatbázishoz, amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. |
##MS_ServerPerformanceStateReader## |
A ##MS_ServerPerformanceStateReader## rögzített kiszolgálói szerepkör tagjai az összes dinamikus felügyeleti nézetet (DMV-t) és függvényt elolvashatják, és engedéllyel rendelkezhetnek VIEW SERVER PERFORMANCE STATEVIEW DATABASE PERFORMANCE STATE minden olyan adatbázishoz, amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. Annak a részhalmaznak a részhalmaza, amelyhez a ##MS_ServerStateReader## kiszolgálói szerepkörnek hozzáférése van, ami segít megfelelni a minimális jogosultság elvének. |
##MS_ServerSecurityStateReader## |
A ##MS_ServerSecurityStateReader## rögzített kiszolgálói szerepkör tagjai az összes dinamikus felügyeleti nézetet (DMV-t) és függvényt elolvashatják, és engedéllyel rendelkezhetnek VIEW SERVER SECURITY STATEVIEW DATABASE SECURITY STATE minden olyan adatbázishoz, amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. A kiszolgálói szerepkör hozzáférésének ##MS_ServerStateReader## kis része, amely segít megfelelni a minimális jogosultság elvének. |
##MS_DefinitionReader## |
A ##MS_DefinitionReader## rögzített kiszolgálói szerepkör tagjai elolvashatják az VIEW ANY DEFINITIONáltal lefedett összes katalógusnézetet, és VIEW DEFINITION engedéllyel rendelkezik minden olyan adatbázishoz, amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. |
##MS_PerformanceDefinitionReader## |
A ##MS_PerformanceDefinitionReader## rögzített kiszolgálói szerepkör tagjai elolvashatják az VIEW ANY PERFORMANCE DEFINITIONáltal lefedett összes katalógusnézetet, és VIEW PERFORMANCE DEFINITION engedéllyel rendelkezik minden olyan adatbázishoz, amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. A kiszolgálói szerepkör hozzáférésének ##MS_DefinitionReader## részhalmaza. |
##MS_SecurityDefinitionReader## |
A ##MS_SecurityDefinitionReader## rögzített kiszolgálói szerepkör tagjai elolvashatják az VIEW ANY SECURITY DEFINITIONáltal lefedett összes katalógusnézetet, és VIEW SECURITY DEFINITION engedéllyel rendelkezik minden olyan adatbázishoz, amelyen a szerepkör tagja rendelkezik felhasználói fiókkal. A kiszolgálói szerepkör hozzáférésének ##MS_DefinitionReader## kis része, amely segít megfelelni a minimális jogosultság elvének. |
Rögzített kiszolgálói szerepkörök engedélyei
Minden rögzített kiszolgálói szerepkörhöz bizonyos engedélyek vannak hozzárendelve.
Új rögzített kiszolgálói szerepkörök engedélyei az SQL Server 2022-ben
Az alábbi táblázat a kiszolgálószintű szerepkörökhöz rendelt engedélyeket mutatja be. Az öröklődő adatbázisszintű engedélyeket is megjeleníti, amíg a felhasználó csatlakozni tud az egyes adatbázisokhoz.
| Kijavítottuk a kiszolgálószintű szerepkört | Kiszolgálószintű engedélyek | Adatbázisszintű engedélyek |
|---|---|---|
##MS_DatabaseConnector## |
- CONNECT ANY DATABASE |
- CONNECT |
##MS_LoginManager## |
- CREATE LOGIN- ALTER ANY LOGIN |
Nincs adat. |
##MS_DatabaseManager## |
- CREATE ANY DATABASE- ALTER ANY DATABASE |
- ALTER |
##MS_ServerStateManager## |
- ALTER SERVER STATE- VIEW SERVER STATE- VIEW SERVER PERFORMANCE STATE- VIEW SERVER SECURITY STATE |
- VIEW DATABASE STATE- VIEW DATABASE PERFORMANCE STATE- VIEW DATABASE SECURITY STATE |
##MS_ServerStateReader## |
- VIEW SERVER STATE- VIEW SERVER PERFORMANCE STATE- VIEW SERVER SECURITY STATE |
- VIEW DATABASE STATE- VIEW DATABASE PERFORMANCE STATE- VIEW DATABASE SECURITY STATE |
##MS_ServerPerformanceStateReader## |
- VIEW SERVER PERFORMANCE STATE |
- VIEW DATABASE PERFORMANCE STATE |
##MS_ServerSecurityStateReader## |
- VIEW SERVER SECURITY STATE |
- VIEW DATABASE SECURITY STATE |
##MS_DefinitionReader## |
- VIEW ANY DATABASE- VIEW ANY DEFINITION- VIEW ANY PERFORMANCE DEFINITION- VIEW ANY SECURITY DEFINITION |
- VIEW DEFINITION- VIEW PERFORMANCE DEFINITION- VIEW SECURITY DEFINITION |
##MS_PerformanceDefinitionReader## |
- VIEW ANY PERFORMANCE DEFINITION |
- VIEW PERFORMANCE DEFINITION |
##MS_SecurityDefinitionReader## |
- VIEW ANY SECURITY DEFINITION |
- VIEW SECURITY DEFINITION |
Az SQL Server 2019-hez és korábbi verziókhoz tartozó kiszolgálói szerepkörök engedélyei
Az alábbi ábrán az örökölt kiszolgálói szerepkörökhöz (SQL Server 2019 (15.x) és korábbi verziókhoz rendelt engedélyek láthatók.
Az CONTROL SERVER engedély hasonló, de nem azonos a sysadmin rögzített kiszolgálói szerepkörrel. Az engedélyekkel rendelkező CONTROL SERVER tagok bizonyos engedélyeket megtagadhatnak. Biztonsági szempontból vegye figyelembe a sysadmin-tagokkal azonos tagokat CONTROL SERVER , mivel számos lehetséges módon emelheti az engedélyeket CONTROL SERVER a teljes sysadminra. Számos DBCC parancs és számos rendszereljárás megköveteli a sysadmin rögzített kiszolgálói szerepkör tagságát.
Kiszolgálószintű engedélyek
A felhasználó által definiált kiszolgálói szerepkörökhöz csak kiszolgálószintű engedélyek vehetők fel. A kiszolgálószintű engedélyek listázásához hajtsa végre a következő utasítást. A kiszolgálószintű engedélyek a következők:
SELECT *
FROM sys.fn_builtin_permissions('SERVER')
ORDER BY permission_name;
További információ az engedélyekről: Engedélyek (adatbázismotor) és sys.fn_builtin_permissions.
Kiszolgálószintű szerepkörök kezelése
Az alábbi táblázat ismerteti a kiszolgálószintű szerepkörök használatához használható parancsokat, nézeteket és függvényeket.
| Tulajdonság | Típus | Leírás |
|---|---|---|
| sp_helpsrvrole | Metadaták | Kiszolgálószintű szerepkörök listáját adja vissza. |
| sp_helpsrvrolemember | Metadaták | Egy kiszolgálószintű szerepkör tagjaival kapcsolatos információkat ad vissza. |
| sp_srvrolepermission | Metadaták | Egy kiszolgálószintű szerepkör engedélyeit jeleníti meg. |
| IS_SRVROLEMEMBER | Metadaták | Azt jelzi, hogy egy SQL Server-bejelentkezés tagja-e a megadott kiszolgálószintű szerepkörnek. |
| sys.server_role_members | Metadaták | Egy sort ad vissza az egyes kiszolgálószintű szerepkörök minden tagjára. |
| Szerepkör létrehozása kiszolgálóhoz | Parancs | Létrehoz egy felhasználó által definiált kiszolgálói szerepkört. |
| SZERVER SZEREP MÓDOSÍTÁSA | Parancs | Módosítja a kiszolgálói szerepkör tagságát, vagy módosítja egy felhasználó által definiált kiszolgálói szerepkör nevét. |
| DROP SERVER ROLE | Parancs | Eltávolít egy felhasználó által definiált kiszolgálói szerepkört. |
| sp_addsrvrolemember | Parancs | Egy kiszolgálószintű szerepkör tagjaként adja hozzá a bejelentkezést. Elavult vagy megszüntetett. Használja helyette az ALTER SERVER szerepkört . |
| sp_dropsrvrolemember | Parancs | Eltávolít egy SQL Server-bejelentkezést vagy egy Windows-felhasználót vagy -csoportot egy kiszolgálószintű szerepkörből. Elavult vagy megszüntetett. Használja helyette az ALTER SERVER szerepkört . |
Az Azure Arc által engedélyezett SQL Server-szerepkörök
Az SQL Serverhez készült Azure-bővítmény telepítésekor a telepítés:
Kiszolgálószintű szerepkör létrehozása: SQLArcExtensionServerRole
Adatbázisszintű szerepkör létrehozása: SQLArcExtensionUserRole
NT AUTHORITY\SYSTEM*-fiók hozzáadása minden szerepkörhöz
Az NT AUTHORITY\SYSTEM* leképezése az egyes adatbázisok adatbázisszintjén
Minimális engedélyek megadása az engedélyezett funkciókhoz
*Másik lehetőségként konfigurálhatja az Azure Arc által engedélyezett SQL Servert úgy, hogy a minimális jogosultsági módban fusson (előzetes verzióban érhető el). Részletekért tekintse át Az Azure Arc által engedélyezett SQL Servert a legkisebb jogosultsággal (előzetes verzió).
Emellett az SQL Server Azure-bővítménye visszavonja ezeknek a szerepköröknek az engedélyeit, ha már nincs rájuk szükség adott funkciókhoz.
SqlServerExtensionPermissionProvider Windows-feladat. Jogosultságokat ad vagy von vissza az SQL Serverben, amikor észleli:
- Új SQL Server-példány van telepítve a gazdagépen
- A rendszer eltávolítja az SQL Server-példányt a gazdagépről
- A példányszintű funkció engedélyezve van vagy le van tiltva, vagy a beállítások frissülnek
- A bővítményszolgáltatás újraindul
Megjegyzés:
A 2024. júliusi kiadás előtt a SqlServerExtensionPermissionProvider feladat ütemezetten szerepel. Óránként elindul.
További részletekért tekintse át Windows-szolgáltatásfiókok és -engedélyek konfigurálása az SQL ServerAzure-bővítményéhez.
Ha eltávolítja az AZURE-bővítményt az SQL Serverhez, a kiszolgáló- és adatbázisszintű szerepkörök törlődnek.
Engedélyekért tekintse át az engedélyeket.
Kapcsolódó tartalom
- Adatbázisszintű szerepkörök
- biztonsági katalógusnézetek (Transact-SQL)
- Security Functions (Transact-SQL)
- Az SQL Server biztosítása
- GRANT-kiszolgáló egyszerű engedélyeinek (Transact-SQL)
- A kiszolgálónév engedélyeinek visszavonása (Transact-SQL)
- DENY-kiszolgáló egyszerű engedélyei (Transact-SQL)
- Kiszolgálói szerepkör létrehozása
- Azure SQL Database-kiszolgálói szerepkörök engedélykezeléshez