Oktatóanyag: Biztonságossá tétel Microsoft Entra-bejelentkezésekkel – Felügyelt Azure SQL-példány
A következőre vonatkozik: Felügyelt Azure SQL-példány
Ebből a cikkből megtudhatja, hogyan használhatja a Microsoft Entra ID (korábbi nevén Azure Active Directory) által támogatott kiszolgálóneveket (bejelentkezéseket) egy felügyelt Azure SQL-példány védelméhez.
Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:
- Microsoft Entra-bejelentkezés létrehozása felügyelt példányhoz
- Engedélyek megadása felügyelt példányban lévő bejelentkezésekhez
- Microsoft Entra-felhasználók létrehozása bejelentkezésekből
- Engedélyek hozzárendelése a felhasználókhoz és az adatbázis biztonsága
- Megszemélyesítés használata a felhasználókkal
- Adatbázisközi lekérdezések használata felhasználókkal
- További információ a biztonsági funkciókról, például a fenyegetésvédelemről, a naplózásról, az adatmaszkolásról és a titkosításról
Feljegyzés
A Microsoft Entra ID az Azure Active Directory (Azure AD) új neve. Jelenleg frissítjük a dokumentációt.
Előfeltételek
Az oktatóanyag elvégzéséhez győződjön meg arról, hogy rendelkezik a következő előfeltételekkel:
- SQL Server Management Studio (SSMS)
- Felügyelt példány
- Kövesse ezt a cikket: Rövid útmutató: Felügyelt példány létrehozása
- Hozzáférhet a felügyelt példányhoz, és kiépített egy Microsoft Entra-rendszergazdát a felügyelt példányhoz. További információ:
Hozzáférés korlátozása
A felügyelt példányok privát IP-címmel érhetők el. Az izolált SQL Server-környezetekhez hasonlóan az alkalmazásoknak vagy a felhasználóknak is hozzáférésre van szükségük a felügyelt SQL-példányok hálózatához (VNet) a kapcsolat létrehozása előtt. További információ: Alkalmazás felügyelt SQL-példányhoz csatlakoztatása.
Szolgáltatásvégpontot is konfigurálhat egy felügyelt példányon, amely a nyilvános kapcsolatokat ugyanúgy teszi lehetővé, mint az Azure SQL Database esetében. További információ: Nyilvános végpont konfigurálása felügyelt Azure SQL-példányban.
Microsoft Entra-bejelentkezés létrehozása az SSMS használatával
Az első Microsoft Entra-bejelentkezést az SQL-rendszergazda vagy a kiépítés során létrehozott Microsoft Entra-rendszergazda hozhatja létre. További információ: Microsoft Entra-rendszergazda kiépítése felügyelt SQL-példányhoz.
A felügyelt SQL-példányhoz való csatlakozásra az alábbi cikkekben talál példákat:
- Rövid útmutató: Azure-beli virtuális gép konfigurálása felügyelt SQL-példányhoz való csatlakozáshoz
- Rövid útmutató: Pont–hely kapcsolat konfigurálása felügyelt SQL-példányhoz a helyszínen
Csatlakozás a felügyelt példányhoz egy
sysadmin
SQL-bejelentkezés vagy a Microsoft Entra-rendszergazda az SQL Server Management Studio (SSMS) használatával.Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
A lekérdezési ablakban az alábbi szintaxissal hozzon létre bejelentkezést egy helyi Microsoft Entra-fiókhoz:
USE master GO CREATE LOGIN login_name FROM EXTERNAL PROVIDER GO
Ez a példa létrehoz egy bejelentkezést a fiókhoz nativeuser@aadsqlmi.onmicrosoft.com.
USE master GO CREATE LOGIN [nativeuser@aadsqlmi.onmicrosoft.com] FROM EXTERNAL PROVIDER GO
Az eszköztáron válassza a Végrehajtás lehetőséget a bejelentkezés létrehozásához.
Ellenőrizze az újonnan hozzáadott bejelentkezést a következő T-SQL-parancs végrehajtásával:
SELECT * FROM sys.server_principals; GO
További információt a CREATE LOGIN (BEJELENTKEZÉS LÉTREHOZÁSA) című témakörben talál.
Engedélyek megadása bejelentkezések létrehozásához
A meglévő bejelentkezéseknek megfelelő engedélyekkel kell rendelkezniük, vagy a megfelelő kiszolgálói szerepköröknek kell lenniük más Microsoft Entra-bejelentkezések létrehozásához.
SQL-hitelesítéses bejelentkezések
- Ha a bejelentkezés egy SQL-alapú kiszolgálónév, akkor hozzá kell rendelni a szerepkörhöz,
sysadmin
hogy bejelentkezéseket hozzon létre a Microsoft Entra-fiókokhoz.
Microsoft Entra hitelesítési bejelentkezések
- Ha a bejelentkezés Egy Microsoft Entra-kiszolgálónév, akkor azt vagy a
sysadmin
securityadmin
kiszolgálói szerepkört kell hozzárendelni ahhoz, hogy más Microsoft Entra-felhasználók, csoportok és alkalmazások számára hozzon létre bejelentkezéseket. - Legalább az ALTER ANY bejelentkezési engedélyt meg kell adni más Microsoft Entra-bejelentkezések létrehozásához.
- Alapértelmezés szerint az újonnan létrehozott Microsoft Entra-bejelentkezésekhez
master
megadott szokásos engedélyek a következők: CONNECT SQL és VIEW ANY DATABA Standard kiadás. - A
sysadmin
kiszolgálói szerepkör számos Microsoft Entra-bejelentkezéshez adható egy felügyelt példányon belül.
A bejelentkezés hozzáadása a kiszolgálói sysadmin
szerepkörhöz:
Jelentkezzen be ismét a felügyelt példányba, vagy használja a meglévő kapcsolatot a Microsoft Entra rendszergazdájával vagy az SQL-taggal, amely egy
sysadmin
.Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
Adja meg a Microsoft Entra-nak a
sysadmin
kiszolgálói szerepkört az alábbi T-SQL-szintaxissal:ALTER SERVER ROLE sysadmin ADD MEMBER login_name GO
Az alábbi példa a kiszolgálói
sysadmin
szerepkört adja meg a bejelentkezéshez nativeuser@aadsqlmi.onmicrosoft.comALTER SERVER ROLE sysadmin ADD MEMBER [nativeuser@aadsqlmi.onmicrosoft.com] GO
További Microsoft Entra-bejelentkezések létrehozása az SSMS használatával
A Microsoft Entra-bejelentkezés létrehozása és jogosultságok megadása sysadmin
után a bejelentkezés további bejelentkezéseket hozhat létre a FROM EXTERNAL PROVIDER záradék és a CREATE LOGIN használatával.
Csatlakozás a felügyelt példányra a Microsoft Entra bejelentkezéssel az SQL Server Management Studióban (SSMS) Csatlakozás kiválasztásával.
- Adja meg a felügyelt SQL-példány gazdanevét a kiszolgáló nevében.
- A hitelesítéshez válassza az Active Directory – Univerzális, MFA-támogatással rendelkező lehetőséget a többtényezős hitelesítés bejelentkezési ablakának létrehozásához. Bejelentkezés lehetőséget. További információ: Univerzális hitelesítés (többtényezős hitelesítés SSMS-támogatása).
Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
A lekérdezési ablakban az alábbi szintaxissal hozzon létre bejelentkezést egy másik Microsoft Entra-fiókhoz:
USE master GO CREATE LOGIN login_name FROM EXTERNAL PROVIDER GO
Ez a példa létrehoz egy bejelentkezést a Microsoft Entra-felhasználó bob@aadsqlmi.netszámára, akinek a tartománya aadsqlmi.net a Microsoft Entra aadsqlmi.onmicrosoft.com tartománnyal van összevonva .
Hajtsa végre a következő T-SQL-parancsot. Az összevont Microsoft Entra-fiókok a helyszíni Windows-bejelentkezések és -felhasználók felügyelt SQL-példányai.
USE master GO CREATE LOGIN [bob@aadsqlmi.net] FROM EXTERNAL PROVIDER GO
Hozzon létre egy adatbázist a felügyelt példányban a CREATE DATABA Standard kiadás szintaxis használatával. Ez az adatbázis a felhasználói bejelentkezések tesztelésére szolgál a következő szakaszban.
Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
A lekérdezési ablakban az alábbi szintaxissal hozzon létre egy MyMITestDB nevű adatbázist.
CREATE DATABASE MyMITestDB; GO
Felügyelt SQL-példány bejelentkezésének létrehozása egy csoporthoz a Microsoft Entra-azonosítóban. A csoportnak léteznie kell a Microsoft Entra-azonosítóban, mielőtt hozzáadja a bejelentkezést a felügyelt SQL-példányhoz. Lásd: Alapszintű csoport létrehozása és tagok hozzáadása a Microsoft Entra-azonosítóval. Hozzon létre egy csoportomcsoportot, és vegyen fel tagokat ebbe a csoportba.
Nyisson meg egy új lekérdezési ablakot az SQL Server Management Studióban.
Ez a példa feltételezi, hogy létezik egy mygroup nevű csoport a Microsoft Entra-azonosítóban. Hajtsa végre a következő parancsot:
USE master GO CREATE LOGIN [mygroup] FROM EXTERNAL PROVIDER GO
Tesztként jelentkezzen be a felügyelt példányba az újonnan létrehozott bejelentkezéssel vagy csoporttal. Nyisson meg egy új kapcsolatot a felügyelt példányhoz, és hitelesítéskor használja az új bejelentkezést.
Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget az új kapcsolathoz.
Ellenőrizze az újonnan létrehozott Microsoft Entra-bejelentkezés kiszolgálói engedélyeit az alábbi parancs végrehajtásával:
SELECT * FROM sys.fn_my_permissions (NULL, 'DATABASE') GO
A vendégfelhasználók egyéni felhasználókként támogatottak (anélkül, joe@contoso.conhogy egy Microsoft Entra-csoport tagjai lennének (bár lehetnek)), és a bejelentkezések közvetlenül (például) az aktuális bejelentkezési szintaxis használatával hozhatók létremaster
.
Microsoft Entra-felhasználó létrehozása a Microsoft Entra-bejelentkezésből
Az egyes adatbázisok engedélyezése ugyanúgy működik a felügyelt SQL-példányokban, mint az SQL Server adatbázisaiban. Létrehozhat felhasználót egy meglévő bejelentkezésből egy olyan adatbázisban, amely engedélyt kap az adatbázishoz, vagy hozzáadható egy adatbázis-szerepkörhöz.
Most, hogy létrehoztunk egy MyMITestDB nevű adatbázist, és egy olyan bejelentkezést, amely csak alapértelmezett engedélyekkel rendelkezik, a következő lépés egy felhasználó létrehozása a bejelentkezésből. Jelenleg a bejelentkezés csatlakozhat a felügyelt példányhoz, és megtekintheti az összes adatbázist, de nem tudja kezelni az adatbázisokat. Ha az alapértelmezett engedélyekkel rendelkező Microsoft Entra-fiókkal jelentkezik be, és megpróbálja kibontani az újonnan létrehozott adatbázist, a következő hibaüzenet jelenik meg:
Az adatbázis-engedélyek megadásáról további információt az Adatbázismotor-engedélyek használatának első lépései című témakörben talál.
Microsoft Entra-felhasználó létrehozása és mintatábla létrehozása
Feljegyzés
Bizonyos korlátozások vonatkoznak arra az esetben, ha egy felhasználó egy Microsoft Entra-csoport részeként jelentkezik be.
Például egy visszatérési SUSER_SID
NULL
hívás, mivel az adott Microsoft Entra-felhasználó nem része a sys.server_principals
táblának.
Ezért ebben az esetben bizonyos tárolt eljárásokhoz vagy a megadott engedélyek listájához való hozzáférés korlátozott lehet.
Jelentkezzen be a felügyelt példányba az SQL Server Management Studióval egy
sysadmin
fiókkal.Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
A lekérdezési ablakban a következő szintaxissal hozzon létre egy felhasználót egy Microsoft Entra-bejelentkezésből:
USE <Database Name> -- provide your database name GO CREATE USER user_name FROM LOGIN login_name GO
Az alábbi példa létrehoz egy felhasználót bob@aadsqlmi.net a bejelentkezésből bob@aadsqlmi.net:
USE MyMITestDB GO CREATE USER [bob@aadsqlmi.net] FROM LOGIN [bob@aadsqlmi.net] GO
Azt is támogatja, hogy microsoft entra-felhasználót hozzon létre egy csoportnak számító Microsoft Entra-bejelentkezésből.
Az alábbi példa létrehoz egy bejelentkezést a Microsoft Entra-bérlőben található Microsoft Entra-csoport mygroupjához .
USE MyMITestDB GO CREATE USER [mygroup] FROM LOGIN [mygroup] GO
A mygrouphoz tartozó összes felhasználó hozzáférhet a MyMITestDB-adatbázishoz.
Fontos
Ha U Standard kiadás R-t hoz létre Egy Microsoft Entra-bejelentkezésből, adja meg a user_name ugyanazzal a login_name a BEJELENTKEZÉSből.
További információ: CREATE U Standard kiadás R.
Egy új lekérdezési ablakban hozzon létre egy teszttáblát a következő T-SQL-paranccsal:
USE MyMITestDB GO CREATE TABLE TestTable ( AccountNum varchar(10), City varchar(255), Name varchar(255), State varchar(2) );
Hozzon létre kapcsolatot az SSMS-ben a létrehozott felhasználóval. Megfigyelheti, hogy nem látja a korábban létrehozott TestTable táblát.
sysadmin
Engedélyt kell biztosítanunk a felhasználónak az adatbázisból származó adatok beolvasására.Az alábbi parancs végrehajtásával ellenőrizheti a felhasználó aktuális engedélyét:
SELECT * FROM sys.fn_my_permissions('MyMITestDB','DATABASE') GO
Felhasználók hozzáadása adatbázisszintű szerepkörökhöz
Ahhoz, hogy a felhasználó az adatbázisban láthassa az adatokat, adatbázisszintű szerepköröket adhat a felhasználónak.
Jelentkezzen be a felügyelt példányba az SQL Server Management Studióval egy
sysadmin
fiókkal.Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
Adja meg a Microsoft Entra-felhasználónak az
db_datareader
adatbázis-szerepkört a következő T-SQL-szintaxissal:Use <Database Name> -- provide your database name ALTER ROLE db_datareader ADD MEMBER user_name GO
Az alábbi példa a felhasználónak bob@aadsqlmi.net és a csoportnak a MyMITestDB-adatbázisravonatkozó engedélyekkel rendelkezik:
db_datareader
USE MyMITestDB GO ALTER ROLE db_datareader ADD MEMBER [bob@aadsqlmi.net] GO ALTER ROLE db_datareader ADD MEMBER [mygroup] GO
Ellenőrizze az adatbázisban létrehozott Microsoft Entra-felhasználót a következő parancs végrehajtásával:
SELECT * FROM sys.database_principals GO
Hozzon létre egy új kapcsolatot a felügyelt példányhoz a szerepkörhöz
db_datareader
hozzáadott felhasználóval.Bontsa ki az adatbázist az Object Explorerben a tábla megtekintéséhez.
Nyisson meg egy új lekérdezési ablakot, és hajtsa végre a következő Standard kiadás LECT utasítást:
SELECT * FROM TestTable
Lát adatokat a táblából? Látnia kell a visszaadott oszlopokat.
Microsoft Entra-bejelentkezések megszemélyesítése
A felügyelt SQL-példány támogatja a Microsoft Entra-bejelentkezések megszemélyesítését.
Tesztelési megszemélyesítés
Jelentkezzen be a felügyelt példányba az SQL Server Management Studióval egy
sysadmin
fiókkal.Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
A lekérdezési ablakban a következő paranccsal hozzon létre egy új tárolt eljárást:
USE MyMITestDB GO CREATE PROCEDURE dbo.usp_Demo WITH EXECUTE AS 'bob@aadsqlmi.net' AS SELECT user_name(); GO
A következő paranccsal láthatja, hogy a tárolt eljárás végrehajtásakor megszemélyesített felhasználó a bob@aadsqlmi.netkövetkező.
Exec dbo.usp_Demo
A megszemélyesítés tesztelése az EXECUTE AS LOGIN utasítással:
EXECUTE AS LOGIN = 'bob@aadsqlmi.net' GO SELECT SUSER_SNAME() REVERT GO
Feljegyzés
Csak a sysadmin
szerepkör részét képező SQL Server-szintű bejelentkezések hajthatják végre a Microsoft Entra-tagokra vonatkozó alábbi műveleteket:
- VÉGREHAJTÁS U-KÉNT STANDARD KIADÁS R
- VÉGREHAJTÁS BEJELENTKEZÉSKÉNT
Adatbázisközi lekérdezések használata
Az adatbázisközi lekérdezések microsoft Entra-bejelentkezésekkel rendelkező Microsoft Entra-fiókok esetében támogatottak. Ha adatbázisközi lekérdezést szeretne tesztelni egy Microsoft Entra-csoporttal, létre kell hoznunk egy másik adatbázist és táblát. Ha már létezik, kihagyhatja egy másik adatbázis és tábla létrehozását.
Jelentkezzen be a felügyelt példányba az SQL Server Management Studióval egy
sysadmin
fiókkal.Az Object Explorerben kattintson a jobb gombbal a kiszolgálóra, és válassza az Új lekérdezés lehetőséget.
A lekérdezési ablakban a következő paranccsal hozzon létre egy MyMITestDB2 nevű adatbázist és egy TestTable2 nevű táblát:
CREATE DATABASE MyMITestDB2; GO USE MyMITestDB2 GO CREATE TABLE TestTable2 ( EmpId varchar(10), FirstName varchar(255), LastName varchar(255), Status varchar(10) );
Egy új lekérdezési ablakban hajtsa végre a következő parancsot a felhasználói csoport létrehozásához az új MyMITestDB2 adatbázisban, és adjon Standard kiadás LECT-engedélyeket az adatbázishoz a saját csoportnak:
USE MyMITestDB2 GO CREATE USER [mygroup] FROM LOGIN [mygroup] GO GRANT SELECT TO [mygroup] GO
Jelentkezzen be a felügyelt példányba az SQL Server Management Studióval a Microsoft Entra csoport mygroup tagjaként. Nyisson meg egy új lekérdezési ablakot, és hajtsa végre az adatbázisközi Standard kiadás LECT utasítást:
USE MyMITestDB SELECT * FROM MyMITestDB2..TestTable2 GO
A tábla eredményeit a TestTable2-ből kell látnia.
További támogatott forgatókönyvek
- Az SQL Agent kezelése és a feladatok végrehajtása támogatott a Microsoft Entra-bejelentkezésekhez.
- Az adatbázis biztonsági mentési és visszaállítási műveleteit Microsoft Entra-bejelentkezések hajthatják végre.
- A Microsoft Entra-bejelentkezésekkel és hitelesítési eseményekkel kapcsolatos összes utasítás naplózása.
- Dedikált rendszergazdai kapcsolat a kiszolgálói szerepkörrel rendelkező
sysadmin
Microsoft Entra-bejelentkezésekhez. - A Microsoft Entra-bejelentkezések az sqlcmd segédprogram és az SQL Server Management Studio eszköz használatával támogatottak.
- A bejelentkezési eseményindítók támogatottak a Microsoft Entra-bejelentkezésekből származó bejelentkezési eseményekhez.
- A Service Broker és a DB-levelek a Microsoft Entra-bejelentkezések használatával állíthatók be.
Következő lépések
Biztonsági funkciók engedélyezése
A felügyelt SQL-példány biztonsági funkcióiról szóló cikk az adatbázis biztonságossá tételének módjait ismerteti. A következő biztonsági funkciókat tárgyaljuk:
- Felügyelt SQL-példány naplózása
- Always Encrypted
- Fenyegetések észlelése
- Dinamikus adatmaszkolás
- Sorszintű biztonság
- Transzparens adattitkosítás (TDE)
Felügyelt SQL-példány képességei
A felügyelt SQL-példány képességeinek teljes áttekintéséért tekintse meg a következőt:
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: