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
Azure SQL Felügyelt példány
Analitikai 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 entitások, amelyek más entitásokat csoportosítanak. A szerver szintű szerepkörök a kiszolgáló teljes engedélyhatókörére kiterjednek. (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 rendelkeznek a master és WideWorldImporters adatbázisokban. Ez a felhasználó rendelkezik a VIEW DATABASE STATE jogosultsággal ezen a két adatbázisban öröklés útján.
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ói fő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. Képesek a GRANT, DENY, és REVOKE kiszolgálószintű engedélyekkel dolgozni.
A securityadmin akkor is GRANT, DENY és REVOKE adatbázisszintű engedélyekkel rendelkezhet, ha hozzáférése van egy adatbázishoz. 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 szerver főfelhasználó nem kap vagy nem tilt meg adott engedélyeket egy védett objektumon, akkor a felhasználó örökli az objektumhoz nyilvános 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.
Az SQL Server 2022-ben bevezetett rögzített kiszolgálószintű szerepkörök
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 rendre VIEW DATABASE STATE engedéllyel rendelkeznek minden olyan adatbázisra, amelyen a szerepkör tagja felhasználói fiókkal rendelkezik. |
##MS_ServerPerformanceStateReader## |
A ##MS_ServerPerformanceStateReader## rögzített kiszolgálói szerepkör tagjai elolvashatják az összes dinamikus felügyeleti nézetet (DMV-t) és függvényt, amelyet a VIEW SERVER PERFORMANCE STATE fed le, és külön-külön engedéllyel rendelkeznek VIEW DATABASE PERFORMANCE STATE bármely olyan adatbázison, ahol ennek a szerepkörnek a tagja felhasználói fiókkal rendelkezik. Az a részhalmaz, amelyhez a ##MS_ServerStateReader## kiszolgáló szerepkör hozzáféréssel rendelkezik, 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 elolvashatják az összes dinamikus felügyeleti nézetet (DMV-t) és függvényt, amelyekre a VIEW SERVER SECURITY STATE vonatkozik, és ennek megfelelően VIEW DATABASE SECURITY STATE engedéllyel rendelkeznek bármely adatbázison, amelyben a szerepkör tagjainak felhasználói fiókjuk van. 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 ##MS_DefinitionReader## kiszolgálói szerepkör hozzáféréseinek 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 CONTROL SERVER engedéllyel rendelkező felhasználók bizonyos engedélyektől megfoszthatók. Biztonsági szempontból tekintse CONTROL SERVER-ot sysadmin-tagokkal azonosnak, mivel számos lehetséges mód van arra, hogy CONTROL SERVER-ről teljes sysadminra emelje az engedélyeket. 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
Ha az Azure bővítményt telepíti nem minimális jogosultsági módban az SQL Serverhez, a telepítés:
- Kiszolgálószintű szerepkört hoz létre:
SQLArcExtensionServerRole - Adatbázisszintű szerepkört hoz létre:
SQLArcExtensionUserRole - Hozzáadja az
NT AUTHORITY\SYSTEMfiókot az egyes szerepkörökhöz. - Térképek
NT AUTHORITY\SYSTEMaz 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 a Azure Arc által engedélyezett SQL Server, hogy a legkevésbé jogosultsági módban fusson. További információkért lásd: Minimális jogosultságokkal működő Azure Arc által engedélyezett SQL Server használata.
Emellett Azure SQL Server 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.
Megjegyzés:
A korábban ismertetett műveletek megkövetelik, hogy a központi telepítő NT AUTHORITY\SYSTEMként csatlakozzon SQL Server. Ha a NT AUTHORITY\SYSTEM bejelentkezést eltávolítják, letiltják, vagy CONNECT SQL engedély megtagadásra kerül, akkor a telepítő nem tudja végrehajtani a műveletek egyikét sem, és így az Azure Extension for SQL Server kiépítése meghiúsul.
Tekintse meg a bejelentkezés ellenőrzésének és visszaállításának előfeltételeit.
SqlServerExtensionPermissionProvider Windows-feladat. A Deployer.exe-t hajtja végre, hogy jogosultságokat adjon vagy vonjon vissza az SQL Serverben, ha ezt észleli.
- Új SQL Server-példány van telepítve a gazdagépen
- A rendszer eltávolít egy SQL Server-példányt a gazdagépről
- A példányszintű funkciók engedélyezve vannak vagy le vannak tiltva, vagy a beállítások frissülnek
- A bővítményszolgáltatás újraindul
- Az igény szerinti (JIT) engedélyek engedélyezve vagy letiltva vannak
Megjegyzés:
A 2024. júliusi kiadás előtt egy ütemezett feladat volt SqlServerExtensionPermissionProvider, amely óránként futott.
Részletekért tekintse át a Windows szolgáltatásfiókok és engedélyek konfigurálása az SQL Server Azure-bővítményhez dokumentumot.
Ha eltávolítja az Azure bővítményt az SQL Serverből, a kiszolgálószintű és az adatbázisszintű szerepkörök el lesznek távolítva.
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 szerver fő felhasználói jogosultságai (Transact-SQL)
- A kiszolgálói főszereplő engedélyeinek visszavonása (Transact-SQL)
- Főfelhasználói engedélyek megtagadása (Transact-SQL)
- Kiszolgálói szerepkör létrehozása
- Azure SQL Database-kiszolgálói szerepkörök engedélykezeléshez