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
A következőre vonatkozik: Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics
Ebben a cikkben a következő tudnivalókat ismerheti meg:
- Az Azure SQL Database, a felügyelt Azure SQL-példány és az Azure Synapse Analytics konfigurálásának lehetőségei, amelyekkel a felhasználók felügyeleti feladatokat végezhetnek, és hozzáférhetnek az ezekben az adatbázisokban tárolt adatokhoz.
- A hozzáférési és engedélyezési konfiguráció az új kiszolgáló kezdeti létrehozása után.
- Bejelentkezések és felhasználói fiókok hozzáadása az adatbázishoz és a
master
felhasználói fiókokhoz, majd rendszergazdai engedélyek megadása. - Felhasználói fiókok hozzáadása a felhasználói adatbázisokban, akár bejelentkezésekhez, akár tartalmazott felhasználói fiókokhoz társítva.
- A felhasználói fiókokat adatbázis-szerepkörök és explicit engedélyek használatával konfigurálhatja a felhasználói adatbázisokban lévő engedélyekkel.
Fontos
Az Azure SQL Database-ben, az Azure SQL Managed Instance-ben és az Azure Synapse-ban található adatbázisokra a jelen cikk további részében együttesen adatbázisokként hivatkozunk, a kiszolgáló pedig arra a logikai kiszolgálóra hivatkozik, amely az Azure SQL Database és az Azure Synapse adatbázisait kezeli.
Megjegyzés:
A Microsoft Entra ID az Azure Active Directory (Azure AD) új neve. Jelenleg frissítjük a dokumentációt.
Hitelesítés és engedélyezés
Az engedélyezés az a folyamat, amely során bizonyítást nyer, hogy a felhasználó valójában az-e, akinek kiadja magát. A user connects to a database using a user account. When a user attempts to connect to a database, they provide a user account and authentication information. The user is authenticated using one of the following two authentication methods:
-
With this authentication method, the user submits a user account name and associated password to establish a connection. Ezt a jelszót a rendszer a
master
bejelentkezéshez csatolt felhasználói fiókok adatbázisában tárolja, vagy a bejelentkezéshez nem kapcsolódó felhasználói fiókokat tartalmazó adatbázisban tárolja.Megjegyzés:
Az Azure SQL Database csak a jelszóházirend jelszó-összetettségét kényszeríti ki. A felügyelt Azure SQL-példány jelszószabályzatát a felügyelt Azure SQL-példánysal kapcsolatos gyakori kérdések (GYIK) című témakörben találja.
Microsoft Entra authentication
Ezzel a hitelesítési módszerrel a felhasználó elküldi a felhasználói fiók nevét, és kéri, hogy a szolgáltatás használja a Microsoft Entra-azonosítóban (korábban Azure Active Directory) tárolt hitelesítő adatokat.
Bejelentkezések és felhasználók: Az adatbázisban lévő felhasználói fiókok társíthatók az adatbázisban tárolt master
bejelentkezéssel, vagy egy egyéni adatbázisban tárolt felhasználónévvel.
- A bejelentkezés az adatbázisban található
master
egyéni fiók, amelyhez egy vagy több adatbázis felhasználói fiókja csatolható. Ha rendelkezik bejelentkezési azonosítóval, a felhasználói fiókhoz tartozó hitelesítő adatokat a rendszer a bejelentkezési azonosítóval együtt tárolja. - A felhasználói fiók egy egyéni fiók egy adatbázisban, amely lehet bejelentkezési azonosítóhoz rendelve, de nem feltétlenül. With a user account that is not linked to a login, the credential information is stored with the user account.
Az adatokhoz való hozzáférés engedélyezése és a különböző műveletek végrehajtása adatbázis-szerepkörök és explicit engedélyek használatával történik. Az engedélyezés a felhasználóhoz rendelt engedélyekre vonatkozik, és meghatározza, hogy a felhasználó mit tehet. Az engedélyezést a felhasználói fiók adatbázis-szerepkör-tagságai és az objektumszintű engedélyek vezérlik. As a best practice, you should grant users the least privileges necessary.
Existing logins and user accounts after creating a new database
Az Azure SQL első üzembe helyezésekor megadhat egy bejelentkezési nevet és egy jelszót egy speciális típusú rendszergazdai bejelentkezéshez, a kiszolgáló rendszergazdájához. A fő- és felhasználói adatbázisokban lévő bejelentkezések és felhasználók következő konfigurációja az üzembe helyezés során történik:
- A rendszer rendszergazdai jogosultságokkal rendelkező SQL-bejelentkezést hoz létre a megadott bejelentkezési névvel. A bejelentkezés egy egyéni fiók az SQL Database-be, a felügyelt SQL-példányba és az Azure Synapse-be való bejelentkezéshez.
- Ez a bejelentkezés teljes körű rendszergazdai engedélyeket kap az összes adatbázishoz kiszolgálószintű rendszernévként. A bejelentkezés minden elérhető engedéllyel rendelkezik, és nem korlátozható. Felügyelt SQL-példányban ez a bejelentkezés hozzáadódik a sysadmin rögzített kiszolgálói szerepkörhöz (ez a szerepkör nem létezik az Azure SQL Database-ben).
- Amikor ez a fiók bejelentkezik egy adatbázisba, a rendszer az egyes felhasználói adatbázisokban található speciális felhasználói fiókkal
dbo
(felhasználói fiókkal) egyezik. A dbo-felhasználó minden adatbázis-engedéllyel rendelkezik az adatbázisban, és tagja adb_owner
rögzített adatbázis-szerepkörnek. A cikk későbbi részében további rögzített adatbázis-szerepkörökről is szó lesz.
A logikai kiszolgáló kiszolgálói rendszergazdai fiókjának azonosításához nyissa meg az Azure Portalt, és lépjen a kiszolgáló vagy a felügyelt példány Tulajdonságok lapjára.
Fontos
A kiszolgálói rendszergazdai fiók neve nem módosítható a létrehozása után. A kiszolgáló rendszergazdájának jelszavának visszaállításához lépjen az Azure Portalra, kattintson az SQL Servers elemre, válassza ki a kiszolgálót a listából, majd kattintson a Jelszó kérése parancsra. A felügyelt SQL-példány jelszavának alaphelyzetbe állításához nyissa meg az Azure Portalt, kattintson a példányra, és kattintson a Jelszó visszaállítása parancsra. A PowerShellt vagy az Azure CLI-t is használhatja.
További bejelentkezések és rendszergazdai engedélyekkel rendelkező felhasználók létrehozása
Ezen a ponton a kiszolgáló vagy a felügyelt példány csak egyetlen SQL-bejelentkezéssel és felhasználói fiókkal való hozzáférésre van konfigurálva. Ha további, teljes vagy részleges rendszergazdai engedélyekkel rendelkező bejelentkezéseket szeretne létrehozni, az alábbi lehetőségek közül választhat (az üzembehelyezési módtól függően):
Microsoft Entra rendszergazdai fiók létrehozása teljes körű rendszergazdai engedélyekkel
Engedélyezze a Microsoft Entra-hitelesítést, és adjon hozzá egy Microsoft Entra-rendszergazdát. Egy Microsoft Entra-fiók konfigurálható az Azure SQL-telepítés rendszergazdájaként teljes körű rendszergazdai engedélyekkel. Ez a fiók lehet egyéni vagy biztonsági csoportfiók. Microsoft Entra-rendszergazdátkell konfigurálni, ha Microsoft Entra-fiókokkal szeretne csatlakozni az SQL Database-hez, a felügyelt SQL-példányhoz vagy az Azure Synapse-hoz. A Microsoft Entra-hitelesítés engedélyezésével kapcsolatos részletes információkért tekintse meg az alábbi cikkeket:
Felügyelt SQL-példányban hozzon létre SQL-bejelentkezéseket teljes körű rendszergazdai engedélyekkel
- Hozzon létre egy további SQL-bejelentkezést az
master
adatbázisban. - Adja hozzá a bejelentkezést a sysadmin rögzített kiszolgálói szerepkörhöz az ALTER Standard kiadás RVER ROLE utasítással. Ez a bejelentkezés teljes körű rendszergazdai engedélyekkel rendelkezik.
- Másik lehetőségként hozzon létre egy Microsoft Entra-bejelentkezést a CREATE LOGIN szintaxissal.
Megjegyzés:
A
dbmanager
szerepkörök ésloginmanager
a szerepkörök nem tartoznak a felügyelt Azure SQL-példányok üzembe helyezéséhez.- Hozzon létre egy további SQL-bejelentkezést az
Az SQL Database-ben létrehozott SQL bejelentkezési azonosítók korlátozott rendszergazdai engedélyekkel rendelkeznek
- Hozzon létre egy további SQL-bejelentkezést az
master
adatbázisban. - Adja hozzá a bejelentkezést a ,
##MS_LoginManager##
és##MS_DatabaseConnector##
kiszolgálószintű##MS_DatabaseManager##
szerepkörökhöz az ALTER Standard kiadás RVER ROLE utasítással.
Az Azure SQL Database speciális
master
adatbázis-szerepköreinek tagjai jogosultak adatbázisok létrehozására és kezelésére, illetve bejelentkezések létrehozására és kezelésére. A szerepkörrel rendelkeződbmanager
felhasználó által létrehozott adatbázisokban a tag a rögzített adatbázis-szerepkörredb_owner
van leképezve, és a felhasználói fiókkal bejelentkezhet és kezelheti azdbo
adatbázist. Ezek a szerepkörök nem rendelkeznek explicit engedélyekkel azmaster
adatbázison kívül.Fontos
Az Azure SQL Database-ben nem hozhat létre további, teljes rendszergazdai engedélyekkel rendelkező SQL-bejelentkezést. Csak a kiszolgálói rendszergazdai fiók vagy a Microsoft Entra rendszergazdai fiók (amely lehet Microsoft Entra-csoport) adhat hozzá vagy távolíthat el más bejelentkezéseket a kiszolgálói szerepkörökbe vagy a kiszolgálói szerepkörökből. Ez az Azure SQL Database-hez tartozik.
- Hozzon létre egy további SQL-bejelentkezést az
Dedikált Azure Synapse SQL-készletben hozzon létre korlátozott rendszergazdai engedélyekkel rendelkező SQL-bejelentkezéseket
- Hozzon létre egy további SQL-bejelentkezést az
master
adatbázisban. - Hozzon létre egy felhasználói fiókot az
master
új bejelentkezéshez társított adatbázisban. - Adja hozzá a felhasználói fiókot az
dbmanager
adatbázishoz, aloginmanager
szerepkörhöz vagy mindkettőhöz amaster
sp_addrolemember utasítással.
- Hozzon létre egy további SQL-bejelentkezést az
Az Azure Synapse kiszolgáló nélküli SQL-készletében korlátozott rendszergazdai engedélyekkel hozzon létre SQL-bejelentkezéseket
- Hozzon létre egy további SQL-bejelentkezést az
master
adatbázisban. - Adja hozzá az SQL-bejelentkezést a sysadmin rögzített kiszolgálói szerepkörhöz az ALTER Standard kiadás RVER ROLE utasítással.
- Másik lehetőségként hozzon létre egy Microsoft Entra-bejelentkezést a CREATE LOGIN szintaxissal.
- Hozzon létre egy további SQL-bejelentkezést az
Create accounts for non-administrator users
A nem rendszergazda felhasználók számára két módszer egyikével hozhat létre fiókokat:
Bejelentkezés létrehozása
SQL-bejelentkezés létrehozása az
master
adatbázisban. Ezután hozzon létre egy felhasználói fiókot minden adatbázisban, amelyhez a felhasználónak hozzáférésre van szüksége, és társítsa a felhasználói fiókot ezzel a bejelentkezéssel. Ez a módszer akkor ajánlott, ha a felhasználónak több adatbázishoz kell hozzáférnie, és szinkronizálni szeretné a jelszavakat. Ez a megközelítés azonban összetettségekkel rendelkezik a georeplikációs szolgáltatás használatakor, mivel a bejelentkezést mind az elsődleges kiszolgálón, mind a másodlagos kiszolgálón létre kell hozni. További információ: Az Azure SQL Database biztonságának konfigurálása és kezelése georedukcióhoz vagy feladatátvételhez.Felhasználói fiók létrehozása
Hozzon létre egy felhasználói fiókot az adatbázisban, amelyhez a felhasználónak hozzáférésre van szüksége (más néven tartalmazott felhasználó).
- Az SQL Database használatával bármikor létrehozhat ilyen típusú felhasználói fiókot.
- Ha a Felügyelt SQL-példány támogatja a Microsoft Entra-kiszolgálóneveket, felhasználói fiókokat hozhat létre a felügyelt SQL-példány hitelesítéséhez anélkül, hogy adatbázis-felhasználókat kellene létrehoznia tárolt adatbázis-felhasználóként.
Ezzel a módszerrel a rendszer minden adatbázisban tárolja a felhasználói hitelesítési adatokat, és automatikusan replikálja őket a georeplikált adatbázisokba. Ha azonban ugyanaz a fiók több adatbázisban is létezik, és SQL-hitelesítést használ, a jelszavakat manuálisan kell szinkronizálni. Emellett, ha egy felhasználó különböző adatbázisokban lévő fiókkal rendelkezik, különböző jelszavakkal, a jelszavak megjegyzése problémát okozhat.
Fontos
A Microsoft Entra-identitásokra leképezett, tartalmazott felhasználók létrehozásához be kell jelentkeznie egy Microsoft Entra-fiókkal az Azure SQL Database adatbázisában. A felügyelt SQL-példányban az engedélyekkel rendelkező sysadmin
SQL-bejelentkezések Microsoft Entra-bejelentkezést vagy -felhasználót is létrehozhatnak.
Példák bejelentkezések és felhasználók létrehozására:
- Bejelentkezés létrehozása az Azure SQL Database-hez
- Bejelentkezés létrehozása felügyelt Azure SQL-példányhoz
- Bejelentkezés létrehozása az Azure Synapse-hoz
- Felhasználó létrehozása
- A Microsoft Entra által tartalmazott felhasználók létrehozása
Tipp.
A felhasználók Azure SQL Database-ben való létrehozását ismertető biztonsági oktatóanyagért tekintse meg az Azure SQL Database biztonságossá tételét ismertető oktatóanyagot.
Rögzített és egyéni adatbázis-szerepkörök használata
Miután létrehozott egy felhasználói fiókot egy adatbázisban, akár bejelentkezés alapján, akár tartalmazott felhasználóként, engedélyezheti, hogy a felhasználó különböző műveleteket végezzen, és hozzáférjen egy adott adatbázis adataihoz. A hozzáférés engedélyezéséhez az alábbi módszereket használhatja:
Rögzített adatbázis-szerepkörök
Adja hozzá a felhasználói fiókot egy rögzített adatbázis-szerepkörhöz. 9 rögzített adatbázis-szerepkör van, amelyek mindegyike meghatározott engedélykészlettel rendelkezik. A leggyakoribb rögzített adatbázis-szerepkörök a következők: db_owner, db_ddladmin, db_datawriter, db_datareader, db_denydatawriter és db_denydatareader. A db_owner általában teljes körű engedélyek biztosítására szolgál néhány felhasználó számára. A többi rögzített adatbázis-szerepkör hasznos az egyszerű adatbázisok fejlesztésének gyors elkezdéséhez, de a legtöbb éles környezetbeli adatbázishoz nem ajánlott. A db_datareader rögzített adatbázis-szerepkör például olvasási hozzáférést biztosít az adatbázis minden táblája számára, ami több mint feltétlenül szükséges.
Felhasználó hozzáadása rögzített adatbázis-szerepkörhöz:
- Az Azure SQL Database-ben és az Azure Synapse kiszolgáló nélküli SQL-készletben használja az ALTER ROLE utasítást. Példák: ALTER ROLE examples
- A dedikált Azure Synapse SQL-készletben használja a sp_addrolemember utasítást. Példákért lásd sp_addrolemember példákat.
Egyéni adatbázis-szerepkör
Hozzon létre egy egyéni adatbázis-szerepkört a CREATE ROLE utasítással. Az egyéni szerepkörök lehetővé teszik saját, felhasználó által definiált adatbázis-szerepkörök létrehozását, és gondosan biztosítják az egyes szerepkörök számára az üzleti igényhez szükséges legkisebb engedélyeket. Ezután hozzáadhat felhasználókat az egyéni szerepkörhöz. Ha a felhasználó egyszerre több szerepkörnek is tagja, akkor a rendszer összesíti az engedélyeket.
Engedélyek közvetlen megadása
Adja meg közvetlenül a felhasználói fiók engedélyeit . Az SQL Database-ben több mint 100 engedély adható vagy tagadható meg külön-külön. Ezek közül számos engedély beágyazott. Egy sémában található
UPDATE
engedély például a séma minden táblájára vonatkozóUPDATE
engedélyt tartalmazza. A legtöbb engedélyrendszerhez hasonlóan az engedély megtagadása felülírja a megadását. Az engedélyek beágyazott jellege és száma miatt lehetséges, hogy alapos tervezés szükséges az adatbázis megfelelő védelmét biztosító engedélyrendszer kialakításához. Kezdje az Engedélyek (Adatbázismotor) szakaszban felsorolt engedélyek listájával, majd tekintse át az engedélyek poszterméretű ábráját.
Csoportok használata
A hatékony hozzáférés-kezelés az Active Directory biztonsági csoportokhoz rendelt engedélyeket és rögzített vagy egyéni szerepköröket használja az egyes felhasználók helyett.
A Microsoft Entra-hitelesítés használatakor helyezze a Microsoft Entra-felhasználókat egy Microsoft Entra biztonsági csoportba. Hozzon létre a csoportban egy adatbázis-felhasználót. Vegyen fel egy vagy több adatbázis-felhasználót tagként az egyéni vagy beépített adatbázis-szerepkörökbe az adott felhasználói csoportnak megfelelő engedélyekkel.
SQL-hitelesítés használatakor hozzon létre tartalmazott adatbázis-felhasználókat az adatbázisban. Helyezzen egy vagy több adatbázis-felhasználót egy egyéni adatbázis-szerepkörbe az adott felhasználói csoportnak megfelelő adott engedélyekkel.
Megjegyzés:
A csoportokat nem tartalmazott adatbázis-felhasználók számára is használhatja.
Érdemes megismerkednie az alábbi funkciókkal, amelyek az engedélyek korlátozására vagy a szint emelésére is használhatók:
- A megszemélyesítés és a modulaláírás az engedélyek biztonságos átmeneti növelésére használható.
- A sorszintű biztonság használatával korlátozhatja, hogy a felhasználó mely sorokhoz férhessen hozzá.
- Az adatmaszkolás használatával korlátozhatja a bizalmas adatok megjelenítését.
- A tárolt eljárások segítségével korlátozhatja az adatbázisban végezhető műveleteket.
További lépések
Az Azure SQL Database és az SQL Managed Instance összes biztonsági funkciójának áttekintéséhez tekintse meg a biztonság áttekintését.