Overovanie v databáze SQL v službe Microsoft Fabric
Vzťahuje sa na:✅databáza SQL v službe Microsoft Fabric
Tento článok vysvetľuje overovanie pre databázy SQL.
Databázy SQL podobne ako iné typy položiek služby Microsoft Fabric využívajú overovanie Microsoft Entra.
Na úspešnú overenie v databáze SQL musí mať používateľ služby Microsoft Entra, objekt služby alebo ich skupina povolenie na čítanie položky pre databázu v službe Fabric. Informácie o tom, ako udeliť prístup identity microsoft Entra k pracovnému priestoru služby Fabric alebo konkrétnej databáze, nájdete v téme Ovládacie prvky prístupu k službe Fabric.
Ak chcete vyhľadať reťazec pripojenia k databáze SQL v službe Fabric, pozrite si tému Pripojenie k databáze SQL v službe Microsoft Fabric.
Poznámka
Ak chcete objektom služby povoliť pripojenie k databáze Fabric a databázam SQL, musíte tiež povoliť, aby objekty služby mohli používať nastavenia nájomníka rozhrania API služby Fabric. Informácie o tom, ako povoliť nastavenia nájomníka, nájdete v téme Nastavenia nájomníka služby Fabric.
Pripojenie k databáze SQL pomocou overovania Microsoft Entra
K databáze sa môžete pripojiť pomocou overovania Microsoft Entra prostredníctvom:
- Nástroje SQL, ktoré podporujú overovanie Microsoft Entra, vrátane SQL Server Management Studio a rozšírenia mssql s Visual Studio Code.
- Aplikácie, ktoré používajú klientske ovládače SQL podporujúce overovanie Microsoft Entra, vrátane SqlClient, JDBC, ODBC a OLE DB.
Aplikácie a nástroje musia inovovať ovládače na verzie, ktoré podporujú overovanie Microsoft Entra, a pridať kľúčové slovo režimu overovania v sql reťazec pripojenia, ako napríklad ActiveDirectoryInteractive
, ActiveDirectoryServicePrincipal
alebo ActiveDirectoryPassword
.
Vytváranie používateľov databázy pre identity Microsoft Entra
Ak plánujete konfigurovať ovládacie prvky prístupu SQL pomocou transact-SQL, musíte najprv vytvoriť používateľov databázy zodpovedajúcu vašim identitám Microsoft Entra – používateľom, objektom služby alebo ich skupinám – pomocou funkcie CREATE USER (Transact-SQL).
Vytváranie používateľov databázy sa nevyžaduje, ak používate ovládacie prvky prístupu k službe Fabric (roly pracovného priestoru alebo povolenia položky). Nemusíte vytvárať používateľov, ak spravujete roly na úrovni databázy SQL z portálu služby Fabric – portál v prípade potreby automaticky vytvorí používateľov.
Vytvorenie používateľov databázy, keď ste pripojení ako používateľ entru spoločnosti Microsoft
Keď ste pripojení k databáze ako používateľ entra spoločnosti Microsoft, mali by ste použiť CREATE USER
s klauzulou Z EXTERNÉHO POSKYTOVATEĽA na vytvorenie používateľov pre objektu Microsoft Entra. FROM EXTERNAL PROVIDER
overí zadané hlavné meno so spoločnosťou Microsoft Entra, načíta hlavný identifikátor (ID objektu používateľa alebo skupiny, ID aplikácie alebo ID klienta) a uloží identifikátor ako identifikátor zabezpečenia (SID) používateľa v metaúdajoch SQL. Pri používaní klauzuly musíte byť členom roly Čitateľa adresára v aplikácii FROM EXTERNAL PROVIDER
Microsoft Entra. Nasledujúce ukážkové skripty T-SQL sa používajú FROM EXTERNAL PROVIDER
na vytvorenie používateľa založeného na používateľovi služby Microsoft Entra, objekte služby v službe Microsoft Entra alebo na základe skupiny v spoločnosti Microsoft Entra.
-- Create a user for a Microsoft Entra user
CREATE USER [alice@contoso.com] FROM EXTERNAL PROVIDER;
-- Create a user for a service principal in Microsoft Entra
CREATE USER [HRApp] FROM EXTERNAL PROVIDER;
-- Create a user for a group in Microsoft Entra
CREATE USER [HR] FROM EXTERNAL PROVIDER;
Vytvorenie používateľov databázy, keď ste pripojení ako objekt služby Microsoft Entra
Keď je aplikácia pripojená k databáze s objektom služby, aplikácia musí vydať CREATE USER
klauzuly SID a TYPE , aby sa pre objekty spoločnosti Microsoft Entra vytvorili používatelia. Zadaný hlavný názov nie je overený v entre spoločnosti Microsoft. Je zodpovednosťou aplikácie (vývojára aplikácií) zadať platný názov a platný identifikátor SID a typ objektu používateľa.
Ak je zadaný objekt používateľom alebo skupinou v službe Microsoft Entra, identifikátor SID musí byť ID daného používateľa alebo skupiny v spoločnosti Microsoft Entra. Ak je zadaný objekt objektom služby v aplikácii Microsoft Entra, identifikátor SID musí byť ID aplikácie (ID klienta) objektu služby v entre spoločnosti Microsoft. ID objektov a ID aplikácií (ID klienta) získané zo spoločnosti Microsoft Entra sa musia skonvertovať na binary(16).
Hodnota argumentu TYPE
musí byť:
E
– ak je zadaný objekt služby Microsoft Entra používateľom alebo objektom služby,X
– ak je zadaný objekt microsoft Entra skupinou.
Nasledujúci príklad skriptu T-SQL vytvorí používateľa databázy pre používateľa entra spoločnosti Microsoft s názvom bob@contoso.com
, čím nastavíte IDENTIFIKÁTOR SID nového používateľa na ID objektu používateľa entru spoločnosti Microsoft. Jedinečný identifikátor ID objektu používateľa sa skonvertuje a potom zreťazí do CREATE USER
príkazu. Nahraďte <unique identifier sid>
ho ID objektu používateľa v aplikácii Microsoft Entra.
DECLARE @principal_name SYSNAME = 'bob@contoso.com';
DECLARE @objectId UNIQUEIDENTIFIER = '<unique identifier sid>'; -- user's object ID in Microsoft Entra
-- Convert the guid to the right type
DECLARE @castObjectId NVARCHAR(MAX) = CONVERT(VARCHAR(MAX), CONVERT (VARBINARY(16), @objectId), 1);
-- Construct command: CREATE USER [@principal_name] WITH SID = @castObjectId, TYPE = E;
DECLARE @cmd NVARCHAR(MAX) = N'CREATE USER [' + @principal_name + '] WITH SID = ' + @castObjectId + ', TYPE = E;'
EXEC (@cmd);
V nasledujúcom príklade sa vytvorí používateľ databázy pre objekt služby Microsoft Entra s názvom HRApp
, čím nastaví identifikátor SID nového používateľa na ID klienta objektu služby v aplikácii Microsoft Entra.
DECLARE @principal_name SYSNAME = 'HRApp';
DECLARE @clientId UNIQUEIDENTIFIER = '<unique identifier sid>'; -- principal's client ID in Microsoft Entra
-- Convert the guid to the right type
DECLARE @castClientId NVARCHAR(MAX) = CONVERT(VARCHAR(MAX), CONVERT (VARBINARY(16), @clientId), 1);
-- Construct command: CREATE USER [@principal_name] WITH SID = @castClientId, TYPE = E;
DECLARE @cmd NVARCHAR(MAX) = N'CREATE USER [' + @principal_name + '] WITH SID = ' + @castClientId + ', TYPE = E;'
EXEC (@cmd);
V nasledujúcom príklade sa vytvorí používateľ databázy pre skupinu Microsoft Entra s názvom HR
, čím nastavíme identifikátor SID nového používateľa na ID objektu skupiny.
DECLARE @group_name SYSNAME = 'HR';
DECLARE @objectId UNIQUEIDENTIFIER = '<unique identifier sid>'; -- principal's object ID in Microsoft Entra
-- Convert the guid to the right type
DECLARE @castObjectId NVARCHAR(MAX) = CONVERT(VARCHAR(MAX), CONVERT (VARBINARY(16), @objectId), 1);
-- Construct command: CREATE USER [@groupName] WITH SID = @castObjectId, TYPE = X;
DECLARE @cmd NVARCHAR(MAX) = N'CREATE USER [' + @principal_name + '] WITH SID = ' + @castObjectId + ', TYPE = X;'
EXEC (@cmd);
Obmedzenia
- Microsoft Entra ID je jediná podpora databázy SQL poskytovateľa identity v službe Fabric. Konkrétne sa overovanie SQL nepodporuje.
- Prihlásenia (objektu servera) nie sú podporované.
Súvisiaci obsah
- VYTVORENIE POUŽÍVATEĽA (Transact-SQL)
- ALTER USER (Transact-SQL)
- DROP USER (Transact-SQL)
- Vytvorenie používateľa databázy
- Prihlásenia do služby Microsoft Entra a používatelia s neunique zobrazovanými názvami (Preview)
- Overenie v databáze SQL v službe Microsoft Fabric
- Pripojenie k databáze SQL v službe Microsoft Fabric