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.
Vonatkozik a következőkre:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitikai Platform System (PDW)
SQL adatbázis a Microsoft Fabric-ben
Az adatbázisok engedélyeinek egyszerű kezelése érdekében az SQL Server számos olyan szerepkört biztosít, amelyek biztonsági tagok, amelyek más tagokat csoportosítanak. Olyanok, mint a Windows operációs rendszer csoportjai . Az adatbázisszintű szerepkörök az engedélyek szempontjából az egész adatbázisra kiterjednek.
Ha felhasználókat szeretne hozzáadni és eltávolítani egy adatbázis-szerepkörhöz, használja az ADD MEMBER ALTER ROLE utasítás és DROP MEMBER a beállításokat. Az Analytics Platform System (PDW) és az Azure Synapse Analytics nem támogatja a ALTER ROLE használatát. Használja inkább a régebbi sp_addrolemember és sp_droprolemember eljárásokat.
Az adatbázisszintű szerepköröknek két típusa van: az adatbázisban előre definiált rögzített adatbázis-szerepkörök és a létrehozható felhasználó által definiált adatbázis-szerepkörök .
A rögzített adatbázis-szerepkörök adatbázisszinten vannak definiálva, és minden adatbázisban léteznek. A db_owner adatbázis-szerepkör tagjai kezelhetik a rögzített adatbázisszerepkör-tagságot. Vannak speciális célú adatbázis-szerepkörök is az msdb adatbázisban.
Bármilyen adatbázisfiókot és más SQL Server-szerepkört felvehet adatbázisszintű szerepkörökbe.
Tip
Ne adjon hozzá felhasználó által definiált adatbázis-szerepköröket rögzített szerepkörök tagjaiként. Ez lehetővé teheti a nem szándékos jogosultságok eszkalálását.
A felhasználó által definiált adatbázis-szerepkörök engedélyeit a GRANT, a DENY és a REVOKE utasítással szabhatja testre. További információ: Engedélyek (adatbázismotor).
Az összes engedély listáját az adatbázismotor engedélyeinek plakátja tartalmazza. Kiszolgálószintű engedélyek nem adhatóak adatbázis-szerepkörökhöz. A bejelentkezések és más kiszolgálószintű tagok (például kiszolgálói szerepkörök) nem vehetők fel az adatbázis-szerepkörökbe. Az SQL Server kiszolgálószintű biztonságához használjon inkább kiszolgálói szerepköröket . A kiszolgálószintű engedélyek nem adhatók meg az Azure SQL Database és az Azure Synapse Analytics szerepköreivel.
Rögzített adatbázis-szerepkörök
Az alábbi táblázat a rögzített adatbázis-szerepköröket és azok képességeit mutatja be. Ezek a szerepkörök minden adatbázisban léteznek. A nyilvános adatbázis-szerepkör kivételével a rögzített adatbázis-szerepkörökhöz rendelt engedélyek nem módosíthatók.
| Rögzített adatbázisszerepkör neve | Description |
|---|---|
| db_owner | A db_owner rögzített adatbázis-szerepkör tagjai minden konfigurációs és karbantartási tevékenységet elvégezhetnek az adatbázisban, valamint kezelhetik az adatbázist az SQL Serveren is DROP . (Az SQL Database-ben és az Azure Synapse-ban egyes karbantartási tevékenységek kiszolgálószintű engedélyeket igényelnek, és az db_owners nem hajthatók végre.) |
| db_securityadmin | A db_securityadmin rögzített adatbázis-szerepkör tagjai csak egyéni szerepkörök szerepkör-tagságát módosíthatják, és kezelhetik az engedélyeket. Ennek a szerepkörnek a tagjai emelhetik a jogosultságaikat, és a tevékenységüket figyelni kell. |
| db_accessadmin | A db_accessadmin rögzített adatbázis-szerepkör tagjai hozzáadhatják vagy eltávolíthatják az adatbázishoz való hozzáférést Windows-bejelentkezésekhez, Windows-csoportokhoz és SQL Server-bejelentkezésekhez. |
| db_backupoperator | A db_backupoperator rögzített adatbázis-szerepkör tagjai biztonsági másolatot készíthetnek az adatbázisról. |
| db_ddladmin | A db_ddladmin rögzített adatbázis-szerepkör tagjai bármilyen Adatdefiníciós nyelv (DDL) parancsot futtathatnak egy adatbázisban. Ennek a szerepkörnek a tagjai emelhetik a jogosultságaikat olyan kód módosításával, amely magas jogosultságokkal végrehajtható, és a műveleteket figyelni kell. |
| db_datawriter | A db_datawriter rögzített adatbázis-szerepkör tagjai az összes felhasználói táblában hozzáadhatnak, törölhetnek vagy módosíthatnak adatokat. A legtöbb használati esetben ez a szerepkör db_datareader tagsággal kombinálva lehetővé teszi a módosítani kívánt adatok olvasását. |
| db_datareader | A db_datareader rögzített adatbázis-szerepkör tagjai az összes felhasználói táblából és nézetből beolvashatják az összes adatot. A felhasználói objektumok bármely sémában létezhetnek, kivéve sys a .INFORMATION_SCHEMA |
| db_denydatawriter | A db_denydatawriter rögzített adatbázis-szerepkör tagjai nem tudnak adatokat hozzáadni, módosítani vagy törölni az adatbázis felhasználói tábláiban. |
| db_denydatareader | A db_denydatareader rögzített adatbázis-szerepkör tagjai nem tudnak adatokat olvasni az adatbázis felhasználói tábláiból és nézeteiből. A szerepkör tagjai nem tudják olvasni az adatbázis és objektumai metaadatait, például a rendszernézetek megtekintését. |
A rögzített adatbázis-szerepkörökhöz rendelt engedélyek nem módosíthatók. Minden szerepkör (beleértve a public szerepkört) rendelkezik a CONNECT-engedélyekkel. Az alábbi ábrán a rögzített adatbázis-szerepkörökhöz rendelt engedélyek láthatók:
| Szerepkör neve | Permissions |
|---|---|
| db_owner | CONTROL DATABASE: Az adatbázis minden engedélyével rendelkezik. |
| db_securityadmin | BÁRMELY ALKALMAZÁSSZEREPKÖR MÓDOSÍTÁSA Séma létrehozása BÁRMELY SZEREPKÖR MÓDOSÍTÁSA NÉZETDEFINÍCIÓ |
| db_accessadmin | MEGVÁLTOZTATHATJA BÁRMELY FELHASZNÁLÓ Séma létrehozása FELHASZNÁLÓ LÉTREHOZÁSA |
| db_backupoperator | BIZTONSÁGI MENTÉSI ADATBÁZIS BIZTONSÁGI MENTÉSI NAPLÓ CHECKPOINT |
| db_ddladmin | BÁRMELY ÖSSZETEVŐ MÓDOSÍTÁSA BÁRMELY ASZIMMETRIKUS KULCS MÓDOSÍTÁSA BÁRMELY TANÚSÍTVÁNY MÓDOSÍTÁSA BÁRMELY SZERZŐDÉS MÓDOSÍTÁSA ADATBÁZIS-DDL-ESEMÉNYINDÍTÓ MÓDOSÍTÁSA ADATBÁZIS-ESEMÉNY ÉRTESÍTÉSÉNEK MÓDOSÍTÁSA BÁRMELY ADATTÉR MÓDOSÍTÁSA KÜLSŐ KÖNYVTÁR MÓDOSÍTÁSA BÁRMELY TELJES SZÖVEGES KATALÓGUS MÓDOSÍTÁSA BÁRMELY ÜZENETTÍPUS MÓDOSÍTÁSA BÁRMELY TÁVOLI SZOLGÁLTATÁS KÖTÉSÉNEK MÓDOSÍTÁSA ÚTVONAL MÓDOSÍTÁSA SÉMA MÓDOSÍTÁSA BÁRMELY SZOLGÁLTATÁS MÓDOSÍTÁSA BÁRMELY SZIMMETRIKUS KULCS MÓDOSÍTÁSA CHECKPOINT ÖSSZESÍTÉS LÉTREHOZÁSA SZERELVÉNY LÉTREHOZÁSA ASZIMMETRIKUS KULCS LÉTREHOZÁSA TANÚSÍTVÁNY LÉTREHOZÁSA SZERZŐDÉS LÉTREHOZÁSA ADATBÁZIS DDL-ESEMÉNYÉRTESÍTÉSÉNEK LÉTREHOZÁSA LÉTREHOZÁS ALAPÉRTELMEZETTKÉNT KÜLSŐ KÓDTÁR LÉTREHOZÁSA TELJES SZÖVEGŰ KATALÓGUS LÉTREHOZÁSA FÜGGVÉNY LÉTREHOZÁSA ÜZENETTÍPUS LÉTREHOZÁSA AZ ELJÁRÁS LÉTREHOZÁSA ÜZENETSOR LÉTREHOZÁSA TÁVOLI SZOLGÁLTATÁS KÖTÉSÉNEK LÉTREHOZÁSA ÚTVONAL LÉTREHOZÁSA SZABÁLY LÉTREHOZÁSA Séma létrehozása SZOLGÁLTATÁS LÉTREHOZÁSA SZIMMETRIKUS KULCS LÉTREHOZÁSA SZINONIMA LÉTREHOZÁSA CREATE TABLE LÉTREHOZÁS TÍPUSA NÉZET LÉTREHOZÁSA XML-SÉMAGYŰJTEMÉNY LÉTREHOZÁSA HIVATKOZÁSOK A következőkre vonatkozik: SQL Server 2019 és újabb verziók BÁRMELY KÜLSŐ NYELV MÓDOSÍTÁSA KÜLSŐ NYELV LÉTREHOZÁSA A következőkre vonatkozik: SQL Server 2022 és újabb verziók BÁRMELY KÜLSŐ ADATFORRÁS MÓDOSÍTÁSA BÁRMELY KÜLSŐ FÁJLFORMÁTUM MEGVÁLTOZTATÁSA BÁRMELY KÜLSŐ MUNKA MEGVÁLTOZTATÁSA BÁRMELY KÜLSŐ ADATFOLYAM MÓDOSÍTÁSA ALTER LEDGER FŐKÖNYV ENGEDÉLYEZÉSE |
| db_datareader | SELECT MEGADÁSA AZ ADATBÁZISBAN::<database-name> |
| db_denydatareader | DENY SELECT ON DATABASE::<database-name> |
| db_datawriter | BESZÚRÁS ENGEDÉLYEZÉSE AZ ADATBÁZISBAN::<database-name>FRISSÍTÉS ENGEDÉLYEZÉSE AZ ADATBÁZISBAN:: <database-name>ENGEDÉLYEZÉS TÖRLÉSRE AZ ADATBÁZISBAN:: <database-name> |
| db_denydatawriter | BESZÚRÁS MEGTAGADÁSA AZ ADATBÁZISRA::<database-name>A FRISSÍTÉS MEGTAGADÁSA AZ ADATBÁZISBAN:: <database-name>TÖRLÉS MEGTAGADÁSA AZ ADATBÁZISBAN:: <database-name> |
| public | A nyilvános adatbázis-szerepkör nem rendelkezik adatbázisszintű engedélyekkel. Bizonyos adatbázis-engedélyek azonban alapértelmezés szerint jelen vannak. Pontosabban az OSZLOPTITKOSÍTÁSI KULCS DEFINÍCIÓJÁNAK MEGTEKINTÉSE, AZ OSZLOP FŐKULCSDEFINÍCIÓJÁNAK MEGTEKINTÉSE és a SELECT engedély megtekintése számos egyes rendszertáblán. Ezek az engedélyek visszavonhatók. |
Az Azure SQL Database és az Azure Synapse speciális szerepkörei
Ezek az adatbázis-szerepkörök csak a virtuális master adatbázisban léteznek. Engedélyük csak a (z) alkalmazásban végrehajtott masterműveletekre korlátozódik. Az master adatbázisban csak a felhasználók vehetők fel ezekhez a szerepkörökhöz. A bejelentkezések nem vehetők fel ezekhez a szerepkörökhöz, de a felhasználók bejelentkezések alapján hozhatók létre, és ezek a felhasználók hozzáadhatók a szerepkörökhöz. Ezekhez a master szerepkörökhöz a tartalmazott adatbázis-felhasználók is hozzáadhatók. A dbmanager szerepkörhöz master hozzáadott tárolt adatbázis-felhasználók azonban nem használhatók új adatbázisok létrehozására.
| Szerepkör neve | Description |
|---|---|
| dbmanager | Adatbázisokat hozhat létre és törölhet. Az adatbázist létrehozó dbmanager 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 dbmanager szerepkör tagjai nem feltétlenül rendelkeznek engedéllyel a nem saját adatbázisaikhoz való hozzáféréshez. |
| db_exporter | A db_exporter rögzített adatbázis-szerepkör tagjai minden adatexportálási tevékenységet végrehajthatnak. A szerepkörön keresztül megadott engedélyek a következőkCREATE TABLE: , ALTER ANY SCHEMA, ALTER ANY EXTERNAL DATA SOURCEALTER ANY EXTERNAL FILE FORMAT.A következőkre vonatkozik: Dedikált Azure Synapse Analytics SQL-készletek (korábban SQL DW) |
| loginmanager | Létrehozhat és törölhet bejelentkezéseket a virtuális master adatbázisban. |
Note
A kiszolgálószintű egyszerű és a Microsoft Entra-rendszergazda (ha konfigurálva van) minden engedéllyel rendelkezik az SQL Database-ben és az Azure Synapse Analyticsben anélkül, hogy bármilyen szerepkör tagjának kellene lennie. További információ: Adatbázis-hozzáférés engedélyezése az SQL Database-hez, a felügyelt SQL-példányhoz és az Azure Synapse Analyticshez.
Egyes adatbázis-szerepkörök nem alkalmazhatók az Azure SQL-hez vagy az Azure Synapse-hoz:
db_backupoperator nem alkalmazható az Azure SQL Database-ben (nem az Azure SQL Managed Instance-ben) és az Azure Synapse Analytics kiszolgáló nélküli készletében, mert a T-SQL-parancsok biztonsági mentése és visszaállítása nem érhető el.
db_datawriter és db_denydatawriter nem alkalmazhatók kiszolgáló nélküli Azure Synapse Analyticsre, mert csak külső adatokat olvas be.
Szerepkörök az msdb-adatbázisban
Az msdb adatbázis az alábbi táblázatban látható speciális célú szerepköröket tartalmazza.
msdb szerepkör neve |
Description |
|---|---|
|
db_ssisadmin db_ssisoperator db_ssisltduser |
Ezeknek az adatbázis-szerepköröknek a tagjai felügyelhetik és használhatják az SSIS-t. A korábbi verzióról frissített SQL Server-példányok az SSIS helyett a Data Transformation Services (DTS) használatával elnevezett szerepkör régebbi verzióját tartalmazhatják. További információ: Integration Services-szerepkörök (SSIS-szolgáltatás). |
|
dc_admin dc_operator dc_proxy |
Ezen adatbázis-szerepkörök tagjai felügyelhetik és használhatják az adatgyűjtőt. További információért lásd: Adatgyűjtés. |
| PolicyAdministratorRole | A db_ PolicyAdministratorRole adatbázis-szerepkör tagjai minden konfigurációs és karbantartási tevékenységet elvégezhetnek a házirendalapú felügyeleti szabályzatokon és feltételeken. További információ: Kiszolgálók felügyelete házirendalapú felügyelettel. |
|
ServerGroupAdministratorRole ServerGroupReaderRole |
Ezeknek az adatbázis-szerepköröknek a tagjai felügyelhetik és használhatják a regisztrált kiszolgálócsoportokat. |
| dbm_monitor | Az msdb adatbázisban jön létre, amikor az első adatbázis regisztrálva van az Adatbázistükrözés-figyelőben. A dbm_monitor szerepkörnek nincsenek tagjai, amíg a rendszergazda nem rendel hozzá felhasználókat a szerepkörhöz. |
A db_ssisadmin és a dc_admin szerepkör tagjai emelhetik jogosultságaikat a sysadminra. Ez a jogosultságszint-emelés azért fordulhat elő, mert ezek a szerepkörök módosíthatják az Integration Services-csomagokat, és az Integration Services-csomagokat az SQL Server az SQL Server-ügynök sysadmin biztonsági környezetével hajthatja végre. A karbantartási tervek, az adatgyűjtési csoportok és más Integration Services-csomagok futtatásakor a jogosultság ilyen emelése elleni védelem érdekében konfigurálja a csomagokat futtató SQL Server Agent-feladatokat, hogy korlátozott jogosultságokkal rendelkező proxyfiókot használjon, vagy csak sysadmin tagokat vegyen fel a db_ssisadmin és dc_admin szerepkörökbe.
Adatbázisszintű szerepkörök kezelése
Az alábbi táblázat ismerteti az adatbázisszintű szerepkörökkel való munkavégzéshez szükséges parancsokat, nézeteket és függvényeket.
| Feature | Típus | Description |
|---|---|---|
| sp_helpdbfixedrole | Metadata | A rögzített adatbázis-szerepkörök listáját adja vissza. |
| sp_dbfixedrolepermission | Metadata | Egy rögzített adatbázis-szerepkör engedélyeit jeleníti meg. |
| sp_helprole | Metadata | Az aktuális adatbázisban lévő szerepkörök adatait adja vissza. |
| sp_helprolemember | Metadata | Az aktuális adatbázisban lévő szerepkör tagjaival kapcsolatos információkat adja vissza. |
| sys.database_role_members | Metadata | Az egyes adatbázis-szerepkörök minden egyes tagjára egy sort ad vissza. |
| IS_MEMBER | Metadata | Azt jelzi, hogy az aktuális felhasználó tagja-e a megadott Microsoft Windows-csoportnak, a Microsoft Entra csoportnak vagy a Microsoft SQL Server adatbázis-szerepkörnek. |
| SZEREPKÖR LÉTREHOZÁSA | Command | Új adatbázis-szerepkört hoz létre az aktuális adatbázisban. |
| ALTER ROLE | Command | Módosítja egy adatbázis-szerepkör nevét vagy tagságát. |
| DROP ROLE | Command | Eltávolít egy szerepkört az adatbázisból. |
| sp_addrole | Command | Új adatbázis-szerepkört hoz létre az aktuális adatbázisban. |
| sp_droprole | Command | Eltávolít egy adatbázis-szerepkört az aktuális adatbázisból. |
| sp_addrolemember | Command | Adatbázis-felhasználót, adatbázis-szerepkört, Windows-bejelentkezést vagy Windows-csoportot ad hozzá egy adatbázis-szerepkörhöz az aktuális adatbázisban. Ehelyett az Analytics Platform System (PDW) és az Azure Synapse kivételével minden platformnak használnia ALTER ROLE kell. |
| sp_droprolemember | Command | Eltávolít egy biztonsági fiókot egy SQL Server-szerepkörből az aktuális adatbázisban. Ehelyett az Analytics Platform System (PDW) és az Azure Synapse kivételével minden platformnak használnia ALTER ROLE kell. |
| GRANT | Permissions | Hozzáad egy engedélyt egy szerepkörhöz. |
| DENY | Permissions | Egy szerepkör engedélyét tagadja meg. |
| REVOKE | Permissions | Eltávolítja a korábban megadott vagy megtagadott engedélyeket. |
Nyilvános adatbázis-szerepkör
Minden adatbázis-felhasználó a nyilvános adatbázis-szerepkörhöz tartozik. Ha egy felhasználó nem kapott vagy nem tagadott meg adott engedélyeket egy biztonságos objektumon, a felhasználó örökli az adott objektumon a nyilvánosság számára megadott engedélyeket. Az adatbázis felhasználói nem távolíthatók el a nyilvános szerepkörből.
Examples
Az ebben a szakaszban szereplő példák bemutatják, hogyan használható adatbázisszintű szerepkörökkel.
A. Felhasználó hozzáadása adatbázisszintű szerepkörhöz
Az alábbi példa hozzáadja a "Ben" felhasználót a rögzített adatbázisszintű szerepkörhöz db_datareader.
ALTER ROLE db_datareader ADD MEMBER Ben;
GO
B. Az adatbázisszintű szerepkörök tagjai közé tartozó összes adatbázisnév listázása
A következő utasítás visszaadja bármely adatbázis-szerepkör összes tagját.
SELECT roles.principal_id AS RolePrincipalID,
roles.name AS RolePrincipalName,
database_role_members.member_principal_id AS MemberPrincipalID,
members.name AS MemberPrincipalName
FROM sys.database_role_members AS database_role_members
INNER JOIN sys.database_principals AS roles
ON database_role_members.role_principal_id = roles.principal_id
INNER JOIN sys.database_principals AS members
ON database_role_members.member_principal_id = members.principal_id;
GO