Todentaminen SQL-tietokannassa Microsoft Fabricissa
Koskee Microsoft Fabricin SQL-tietokantaa✅
Tässä artikkelissa kerrotaan SQL-tietokantojen todennuksesta.
Muiden Microsoft Fabric -kohdetyyppien tavoin SQL-tietokannat käyttävät Microsoft Entra -todennusta.
JOTTA SQL-tietokantaan todennus onnistuu, Microsoft Entra -käyttäjällä, palvelun päänimellä tai hänen ryhmällään on oltava Fabric-tietokannan lukuoikeudet. Lisätietoja siitä, miten voit myöntää Microsoft Entra -käyttäjätietojen käyttöoikeuden Fabric-työtilaan tai tiettyyn tietokantaan, on artikkelissa Fabric-käyttöoikeuksien valvontatoiminnot.
Jos haluat löytää SQL-tietokantasi yhteysmerkkijonon Fabricissa, lue ohjeartikkeli Sql-tietokantaan yhdistäminen Microsoft Fabricissa.
Muistiinpano
Jos haluat mahdollistaa palvelun päänimien yhteyden muodostamisen Fabric- ja SQL-tietokantoihin, sinun täytyy ottaa käyttöön myös Palvelun päänimet voivat käyttää Fabric APIs Fabric -vuokraaja-asetusta. Lisätietoja vuokraaja-asetusten käyttöönotosta on artikkelissa Fabric-vuokraajan asetukset.
SQL-tietokantaan yhdistäminen Microsoft Entra -todennuksen avulla
Voit muodostaa yhteyden tietokantaan Microsoft Entra -todennuksella käyttämällä
- SQL-työkalut, jotka tukevat Microsoft Entra -todennusta, mukaan lukien SQL Server Management Studio ja mssql-laajennus Visual Studio Codella.
- Sovellukset, jotka käyttävät Microsoft Entra -todennusta tukevia SQL-asiakasohjaimia, kuten SqlClient, JDBC, ODBC ja OLE DB.
Sovellusten ja työkalujen on päivitettävä ohjaimet versioihin, jotka tukevat Microsoft Entra -todentamista, ja lisättävä todentamistilan avainsana SQL-yhteysmerkkijonoon, kuten ActiveDirectoryInteractive
, ActiveDirectoryServicePrincipal
tai ActiveDirectoryPassword
.
Tietokannan käyttäjien luominen Microsoft Entra -käyttäjätiteeteille
Jos aiot määrittää SQL-käytön hallinnan Transact-SQL:n avulla, sinun on ensin luotava tietokannan käyttäjiä, jotka vastaavat Microsoft Entra -käyttäjätietojasi – käyttäjiä, palvelun päänimiä tai heidän ryhmiään – CREATE USER -funktion (Transact-SQL) avulla.
Tietokannan käyttäjien luomista ei tarvita, jos käytät Fabric-käyttöoikeuksien ohjausobjekteja (työtilan rooleja tai kohteen käyttöoikeuksia). Sinun ei tarvitse luoda käyttäjiä, kun hallitset SQL-tietokantatason rooleja Fabric-portaalista . Portaali luo käyttäjiä automaattisesti tarvittaessa.
Tietokannan käyttäjien luominen, kun muodostat yhteyden Microsoft Entra -käyttäjänä
Kun olet muodostanut yhteyden tietokantaan Microsoft Entra -käyttäjänä, käytä CREATE USER
FROM EXTERNAL PROVIDER - lausetta luodaksesi käyttäjiä Microsoft Entra -päänimille. FROM EXTERNAL PROVIDER
vahvistaa määritetyn päänimen Microsoft Entralla, hakee päätunnisteen (käyttäjän tai ryhmän objektitunnuksen, sovellustunnuksen tai asiakastunnuksen) ja tallentaa tunnisteen käyttäjän suojaustunnukseksi (SID) SQL-metatietoihin. Sinulla on oltava Microsoft Entran Hakemiston lukijat -roolin jäsen, kun käytät - FROM EXTERNAL PROVIDER
lausetta. Seuraavissa T-SQL-mallikomentosarjoissa luodaan FROM EXTERNAL PROVIDER
käyttäjä, joka perustuu Microsoft Entra -käyttäjään, Microsoft Entra -palvelun päänimeen tai Microsoft Entra -ryhmään.
-- 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;
Tietokannan käyttäjien luominen, kun muodostat yhteyden Microsoft Entra -palvelun päänimenä
Kun sovellus on yhdistetty tietokantaan palvelun päänimellä, sovelluksen on lisättävä CREATE USER
SID - ja TYPE-lausekkeisiin, jotta käyttäjät voidaan luoda Microsoft Entra - päänimille. Määritettyä päänimeä ei ole vahvistettu Microsoft Entrassa. Sovelluksen (sovelluskehittäjän) vastuulla on antaa kelvollinen nimi sekä kelvollinen SID-tunnus ja käyttäjän objektityyppi.
Jos määritetty päänimi on Microsoft Entran käyttäjä tai ryhmä, SID-tunnuksen on oltava tämän käyttäjän tai ryhmän objektitunnus Microsoft Entrassa. Jos määritetty päänimi on Microsoft Entrassa palvelun päänimi, SID-tunnuksen on oltava Microsoft Entrassa olevan palvelun päänimen sovellustunnus (asiakastunnus). Microsoft Entrasta saadut objektitunnukset ja sovellustunnukset on muunnettava binary(16)-tunnuksiksi.
Argumentin TYPE
arvon on oltava seuraava:
E
– jos määritetty Microsoft Entra -päänimi on käyttäjä tai palvelun päänimi.X
– jos määritetty Microsoft Entra -päänimi on ryhmä.
Seuraava T-SQL-esimerkkikomentosarja luo Microsoft Entra -käyttäjälle tietokannan käyttäjän, jonka nimi bob@contoso.com
on , ja asettaa uuden käyttäjän SID-tunnuksen Microsoft Entra -käyttäjän objektitunnukseen. Käyttäjän objektitunnuksen yksilöivä tunnus muunnetaan ja sitten ketjutetaan lausekkeeksi CREATE USER
. Korvaa <unique identifier sid>
käyttäjän objektitunnuksella Microsoft Entrassa.
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);
Seuraava esimerkki luo Microsoft Entra -palvelun päänimelle tietokannan käyttäjän nimeltä HRApp
, ja asettaa uuden käyttäjän SID-tunnuksen Microsoft Entran palvelun päänimen asiakastunnukseen.
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);
Seuraava esimerkki luo Microsoft Entra -ryhmän tietokannan käyttäjän nimeltä HR
, ja asettaa uuden käyttäjän SID-tunnuksen ryhmän objektitunnukseen.
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);
Rajoitukset
- Microsoft Entra ID on ainoa tunnistetietopalvelun, jota SQL-tietokanta Fabricssa tukee. Erityisesti SQL-todentamista ei tueta.
- Kirjautumista (palvelimen päänimiä) ei tueta.
Liittyvä sisältö
- LUO KÄYTTÄJÄ (Transact-SQL)
- ALTER USER (Transact-SQL)
- DROP USER (Transact-SQL)
- Tietokannan käyttäjän luominen
- Microsoft Entra -kirjautumiset ja käyttäjät, joilla on epäyhtenäiset näyttönimet (esikatselu)
- Valtuutus SQL-tietokannassa Microsoft Fabricissa
- SQL-tietokantaan yhdistäminen Microsoft Fabricissa