Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
Azure Synapse Analytics
Elemzési platformrendszer (PDW)
SQL Analytics-végpont a Microsoft Fabricben
Raktár a Microsoft Fabricben
SQL-adatbázis a Microsoft Fabricben
Cél
A 18.2.1-es verziótól kezdve az SQL Serverhez készült Microsoft OLE DB Driver lehetővé teszi, hogy az OLE DB-alkalmazások összevont identitással csatlakozzanak az Azure SQL Database-hez, az Azure SQL Managed Instance-hez, az Azure Synapse Analyticshez és a Microsoft Fabrichez.
A Microsoft Entra hitelesítési módszerei a következők:
- Felhasználónév és jelszó
- Hozzáférési jogkivonat
- Integrált hitelesítés
A 18.3.0-s verzió az alábbi Microsoft Entra hitelesítési módszerek támogatását nyújtja:
Interaktív hitelesítés
Felügyelt identitás hitelesítése (csak felügyelt identitással konfigurált Azure-beli virtuális gépről)
A 18.5.0-s verzió a következő hitelesítési módszer támogatását nyújtja:
- Microsoft Entra szolgáltatói név hitelesítése
Megjegyzés:
A következő hitelesítési módok DataTypeCompatibility használata (vagy annak megfelelő tulajdonsága) 80 nem támogatott:
- Microsoft Entra-hitelesítés felhasználónévvel és jelszóval
- Microsoft Entra-hitelesítés hozzáférési jogkivonat használatával
- Microsoft Entra integrált hitelesítés
- Microsoft Entra interaktív hitelesítés
- Microsoft Entra által felügyelt identitások hitelesítése
- Microsoft Entra szolgáltatási főazonosító hitelesítése
A Microsoft Entra-hitelesítés használatához konfigurálnia kell az Azure SQL-adatforrást. További információért lásd: A Microsoft Entra-hitelesítés konfigurálása és kezelése az Azure SQL.
Kapcsolati karaktersorozat kulcsszavak és tulajdonságok
A Microsoft Entra-hitelesítés támogatásához a következő kapcsolati sztring-kulcsszavakat vezettük be:
| Kapcsolati string kulcsszó | Kapcsolati tulajdonság | Description |
|---|---|---|
| Hozzáférési jogkivonat | SSPROP_AUTH_ACCESS_TOKEN |
Egy hozzáférési tokent ad meg a Microsoft Entra ID hitelesítéséhez. |
| Authentication | SSPROP_AUTH_MODE |
A használni kívánt hitelesítési módszert adja meg. |
Az új kulcsszavakról/tulajdonságokról az alábbi oldalakon talál további információt:
- Kapcsolati sztringszavak használata az SQL Serverhez készült OLE DB-illesztővel
- Inicializálási és engedélyezési tulajdonságok
Titkosítás és tanúsítvány érvényesítése
További információkért lásd a titkosítást és a tanúsítványérvényesítést .
Grafikus felhasználói felület hozzáadásai
Az illesztő grafikus felhasználói felülete tovább lett fejlesztve, hogy lehetővé tegye a Microsoft Entra-hitelesítést. További információkért lásd:
Példa kapcsolati sztringekre
Ez a szakasz példákat mutat be az új és meglévő kapcsolati sztring kulcsszavakra, amelyeket a IDataInitialize::GetDataSource és DBPROP_INIT_PROVIDERSTRING tulajdonsággal kell használni.
SQL-hitelesítés
- A
IDataInitialize::GetDataSourcehasználata:- Új:
Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=SqlPassword; Felhasználóazonosító=[felhasználónév]; Password=[password]; Titkosítás használata Data=Kötelező
- Elavult:
Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Felhasználóazonosító=[felhasználónév]; Password=[password]; Titkosítás használata Data=Kötelező
- Új:
- A
DBPROP_INIT_PROVIDERSTRINGhasználatával:- Új:
Server=[kiszolgáló]; Database=[adatbázis]; Authentication=SqlPassword; UID=[felhasználónév]; PWD=[jelszó]; Encrypt=Kötelező
- Elnézett:
Server=[kiszolgáló]; Database=[adatbázis]; UID=[felhasználónév]; PWD=[jelszó]; Encrypt=Kötelező
- Új:
Integrált Windows-hitelesítés biztonsági támogatási szolgáltatói felülettel (SSPI)
-
IDataInitialize::GetDataSourcehasználatával:- Új:
Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=ActiveDirectoryIntegrated; Titkosítás használata adat=Kötelező
- Elavult:
Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Integrated Security=SSPI; Titkosítás használata Data=Kötelező
- Új:
- Az
DBPROP_INIT_PROVIDERSTRINGhasználatával:- Új:
Server=[kiszolgáló]; Database=[adatbázis]; Hitelesítés=ActiveDirectoryIntegrated; Encrypt=Kötelező
- Elavult:
Server=[kiszolgáló]; Database=[adatbázis]; Trusted_Connection=igen; Encrypt=Kötelező
- Új:
Microsoft Entra felhasználónév és jelszó-hitelesítés
-
IDataInitialize::GetDataSourcehasználatával:Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=ActiveDirectoryPassword; Felhasználóazonosító=[felhasználónév]; Jelszó=[jelszó]; Adattitkosítás használata=Kötelező
-
DBPROP_INIT_PROVIDERSTRINGhasználatával:Server=[kiszolgáló]; Database=[adatbázis]; Authentication=ActiveDirectoryPassword; UID=[felhasználónév]; PWD=[jelszó]; Encrypt=Kötelező
Microsoft Entra integrált hitelesítés
-
IDataInitialize::GetDataSourcehasználatával:Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=ActiveDirectoryIntegrated; Titkosítás használata adat=Kötelező
-
DBPROP_INIT_PROVIDERSTRINGhasználatával:Server=[kiszolgáló]; Database=[adatbázis]; Hitelesítés=ActiveDirectoryIntegrated; Encrypt=Kötelező
Microsoft Entra-hitelesítés hozzáférési jogkivonat használatával
-
IDataInitialize::GetDataSourcehasználatával:Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Access Token=[hozzáférési jogkivonat]; Titkosítás használata Data=Kötelező
-
DBPROP_INIT_PROVIDERSTRINGhasználatával:A hozzáférési token
DBPROP_INIT_PROVIDERSTRINGhasználatával történő megadása nem támogatott
Microsoft Entra interaktív hitelesítés
-
IDataInitialize::GetDataSourcehasználatával:Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=ActiveDirectoryInteractive; Felhasználóazonosító=[felhasználónév]; Titkosítás használata Data=Kötelező
-
DBPROP_INIT_PROVIDERSTRINGhasználatával:Server=[kiszolgáló]; Database=[adatbázis]; Authentication=ActiveDirectoryInteractive; UID=[felhasználónév]; Encrypt=Kötelező
Microsoft Entra által felügyelt identitáshitelesítés
-
IDataInitialize::GetDataSourcehasználatával:- Felhasználó által hozzárendelt felügyelt identitás:
Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=ActiveDirectoryMSI; User ID=[Object ID]; Titkosítás használata az adatokhoz=Kötelező
- Rendszer által hozzárendelt felügyelt identitás:
Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Initial Catalog=[database]; Authentication=ActiveDirectoryMSI; Titkosítás használata Data=Kötelező
- Felhasználó által hozzárendelt felügyelt identitás:
-
DBPROP_INIT_PROVIDERSTRINGhasználatával:- Felhasználó által hozzárendelt felügyelt identitás:
Server=[kiszolgáló]; Database=[adatbázis]; Authentication=ActiveDirectoryMSI; UID=[Objektumazonosító]; Encrypt=Kötelező
- Rendszer által hozzárendelt felügyelt identitás:
Server=[kiszolgáló]; Database=[adatbázis]; Authentication=ActiveDirectoryMSI; Encrypt=Kötelező
- Felhasználó által hozzárendelt felügyelt identitás:
Microsoft Entra szolgáltatási főazonosító hitelesítése
-
IDataInitialize::GetDataSourcehasználatával:** Provider=MSOLEDBSQL19; Adatforrás=[kiszolgáló]; Kezdeti Katalógus=[adatbázis]; Hitelesítés=ActiveDirectoryServicePrincipal; Felhasználói azonosító=[Alkalmazás (ügyfél) azonosítója]; Jelszó=[Alkalmazás (ügyfél) titkos kódja]; Titkosítás használata az adatokhoz=Kötelező
-
DBPROP_INIT_PROVIDERSTRINGhasználatával:Server=[kiszolgáló]; Database=[adatbázis]; Authentication=ActiveDirectoryServicePrincipal; UID=[Alkalmazás (ügyfél) azonosítója]; PWD=[Alkalmazás (ügyfél) titkos kódja]; Encrypt=Kötelező
Kódrészletek
Az alábbi minták a Microsoft Entra-azonosítóhoz való csatlakozáshoz szükséges kódot mutatják be kapcsolati kulcsszavakkal.
Hozzáférési jogkivonat
#include <string>
#include <iostream>
#include <msdasc.h>
int main()
{
wchar_t azureServer[] = L"server";
wchar_t azureDatabase[] = L"mydatabase";
wchar_t accessToken[] = L"eyJ0eXAiOi...";
IDBInitialize *pIDBInitialize = nullptr;
IDataInitialize* pIDataInitialize = nullptr;
HRESULT hr = S_OK;
CoInitialize(nullptr);
// Construct the connection string.
std::wstring connString = L"Provider=MSOLEDBSQL19;Data Source=" + std::wstring(azureServer) + L";Initial Catalog=" +
std::wstring(azureDatabase) + L";Access Token=" + accessToken + L";Use Encryption for Data=Mandatory;";
hr = CoCreateInstance(CLSID_MSDAINITIALIZE, nullptr, CLSCTX_INPROC_SERVER,
IID_IDataInitialize, reinterpret_cast<LPVOID*>(&pIDataInitialize));
if (FAILED(hr))
{
std::cout << "Failed to create an IDataInitialize instance." << std::endl;
goto Cleanup;
}
hr = pIDataInitialize->GetDataSource(nullptr, CLSCTX_INPROC_SERVER, connString.c_str(),
IID_IDBInitialize, reinterpret_cast<IUnknown**>(&pIDBInitialize));
if (FAILED(hr))
{
std::cout << "Failed to get data source object." << std::endl;
goto Cleanup;
}
hr = pIDBInitialize->Initialize();
if (FAILED(hr))
{
std::cout << "Failed to establish connection." << std::endl;
goto Cleanup;
}
Cleanup:
if (pIDBInitialize)
{
pIDBInitialize->Uninitialize();
pIDBInitialize->Release();
}
if (pIDataInitialize)
{
pIDataInitialize->Release();
}
CoUninitialize();
}
Integrált Active Directory
#include <string>
#include <iostream>
#include <msdasc.h>
int main()
{
wchar_t azureServer[] = L"server";
wchar_t azureDatabase[] = L"mydatabase";
IDBInitialize *pIDBInitialize = nullptr;
IDataInitialize* pIDataInitialize = nullptr;
HRESULT hr = S_OK;
CoInitialize(nullptr);
// Construct the connection string.
std::wstring connString = L"Provider=MSOLEDBSQL19;Data Source=" + std::wstring(azureServer) + L";Initial Catalog=" +
std::wstring(azureDatabase) + L";Authentication=ActiveDirectoryIntegrated;Use Encryption for Data=Mandatory;";
hr = CoCreateInstance(CLSID_MSDAINITIALIZE, nullptr, CLSCTX_INPROC_SERVER,
IID_IDataInitialize, reinterpret_cast<LPVOID*>(&pIDataInitialize));
if (FAILED(hr))
{
std::cout << "Failed to create an IDataInitialize instance." << std::endl;
goto Cleanup;
}
hr = pIDataInitialize->GetDataSource(nullptr, CLSCTX_INPROC_SERVER, connString.c_str(),
IID_IDBInitialize, reinterpret_cast<IUnknown**>(&pIDBInitialize));
if (FAILED(hr))
{
std::cout << "Failed to get data source object." << std::endl;
goto Cleanup;
}
hr = pIDBInitialize->Initialize();
if (FAILED(hr))
{
std::cout << "Failed to establish connection." << std::endl;
goto Cleanup;
}
Cleanup:
if (pIDBInitialize)
{
pIDBInitialize->Uninitialize();
pIDBInitialize->Release();
}
if (pIDataInitialize)
{
pIDataInitialize->Release();
}
CoUninitialize();
}
Kapcsolódó tartalom
Ismerje meg az SQL Serverhez való Microsoft Entra-hitelesítést .
Az illesztőprogram-kapcsolatokat az OLE DB-illesztőprogram által támogatott kapcsolati karakterlánc kulcsszavak használatával konfigurálja.