Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Database
Spravovaná instance Azure SQL
Azure Synapse Analytics
Analytics Platform System (PDW)
Koncový bod analýzy SQL v Microsoft Fabric
Sklad v Microsoft Fabric
Databáze SQL v Microsoft Fabric
Účel
Od verze 18.2.1 umožňuje ovladač Microsoft OLE DB pro SQL Server připojit aplikace OLE DB k Azure SQL Database, Azure SQL Managed Instance, Azure Synapse Analytics a Microsoft Fabric pomocí federované identity.
Mezi metody ověřování Microsoft Entra patří:
- Uživatelské jméno a heslo
- Token přístupu
- Integrované ověřování
Verze 18.3.0 přidává podporu pro následující metody ověřování Microsoft Entra:
Interaktivní ověřování
Ověřování spravované identity (pouze z virtuálního počítače Azure nakonfigurovaného pomocí spravované identity)
Verze 18.5.0 přidává podporu pro následující metodu ověřování:
- Ověřování instančního objektu Microsoft Entra
Poznámka:
Použití následujících režimů autentizace s nastavením DataTypeCompatibility (nebo jeho odpovídající vlastností) na 80 není podporováno:
- Ověřování Microsoft Entra pomocí uživatelského jména a hesla
- Ověřování Microsoft Entra pomocí přístupového tokenu
- Integrované ověřování Microsoft Entra
- Interaktivní ověřování Microsoft Entra
- Ověřování spravovaných identit Microsoft Entra
- Ověřování objektu služby Microsoft Entra
Pokud chcete použít ověřování Microsoft Entra, musíte nakonfigurovat zdroj dat Azure SQL. Další informace najdete v tématu Konfigurace a správa ověřování Microsoft Entra pro Azure SQL.
Klíčová slova a vlastnosti připojovacího řetězce
Pro podporu ověřování Microsoft Entra jsme zavedli následující klíčová slova připojovacího řetězce:
| Klíčové slovo připojovacího stringu | Vlastnost připojení | Description |
|---|---|---|
| Token přístupu | SSPROP_AUTH_ACCESS_TOKEN |
Určuje přístupový token pro ověření v Microsoft Entra ID. |
| Autentizace | SSPROP_AUTH_MODE |
Určuje metodu ověřování, která se má použít. |
Další informace o nových klíčových slovech a vlastnostech najdete na následujících stránkách:
- Použití klíčových slov připojovacího řetězce s ovladačem OLE DB pro SQL Server
- Inicializace a vlastnosti autorizace
Ověřování šifrování a certifikátu
Další informace najdete v tématu Šifrování a ověření certifikátu .
Doplňky grafického uživatelského rozhraní
Grafické uživatelské rozhraní ovladače bylo vylepšeno tak, aby umožňovalo ověřování Microsoft Entra. Další informace najdete tady:
Příklady připojovacích řetězců
Tato část ukazuje příklady nových a existujících klíčových slov připojovacího řetězce, která se mají použít s IDataInitialize::GetDataSource a DBPROP_INIT_PROVIDERSTRING vlastností.
Ověřování SQL
- Pomocí
IDataInitialize::GetDataSource:- Nový:
Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=SqlPassword; ID uživatele=[uživatelské_jméno]; Password=[password]; Použití šifrování pro data = povinné
- Zastaralý
Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; ID uživatele=[uživatelské_jméno]; Password=[password]; Použití šifrování pro data = povinné
- Nový:
- Pomocí
DBPROP_INIT_PROVIDERSTRING:- Nový:
Server=[server]; Database=[database]; Authentication=SqlPassword; UID=[uživatelské jméno]; PWD=[heslo]; Encrypt=Mandatory
- Zastaralý
Server=[server]; Database=[database]; UID=[uživatelské jméno]; PWD=[heslo]; Encrypt=Mandatory
- Nový:
Integrované ověřování systému Windows pomocí rozhraní SSPI (Security Support Provider Interface)
- Pomocí
IDataInitialize::GetDataSource:- Nový:
Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryIntegrated; Použití šifrování pro data = povinné
- Označený jako zastaralý
Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Integrated Security=SSPI; Použití šifrování pro data = povinné
- Nový:
- Pomocí
DBPROP_INIT_PROVIDERSTRING:- Nový:
Server=[server]; Database=[database]; Authentication=ActiveDirectoryIntegrated; Encrypt=Mandatory
- Zastaralý
Server=[server];Database=[database];Trusted_Connection=ano;Encrypt=Povinné
- Nový:
Ověřování uživatelským jménem a heslem Microsoft Entra
- Pomocí
IDataInitialize::GetDataSource:Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryPassword; ID uživatele=[uživatelské_jméno]; Password=[password]; Použití šifrování pro data = povinné
- Pomocí
DBPROP_INIT_PROVIDERSTRING:Server=[server]; Database=[database]; Authentication=ActiveDirectoryPassword; UID=[uživatelské jméno]; PWD=[heslo]; Encrypt=Mandatory
Integrované ověřování Microsoft Entra
- Pomocí
IDataInitialize::GetDataSource:Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryIntegrated; Použití šifrování pro data = povinné
- Pomocí
DBPROP_INIT_PROVIDERSTRING:Server=[server]; Database=[database]; Authentication=ActiveDirectoryIntegrated; Encrypt=Mandatory
Ověřování Microsoft Entra pomocí přístupového tokenu
- Pomocí
IDataInitialize::GetDataSource:Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Přístupový token=[přístupový token]; Použití šifrování pro data = povinné
- Pomocí
DBPROP_INIT_PROVIDERSTRING:Poskytnutí přístupového tokenu prostřednictvím
DBPROP_INIT_PROVIDERSTRINGnení podporováno.
Interaktivní ověřování Microsoft Entra
- Pomocí
IDataInitialize::GetDataSource:Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryInteractive; ID uživatele=[uživatelské_jméno]; Použití šifrování pro data = povinné
- Pomocí
DBPROP_INIT_PROVIDERSTRING:Server=[server]; Database=[database]; Authentication=ActiveDirectoryInteractive; UID=[uživatelské jméno]; Encrypt=Mandatory
Ověřování identit spravovaných službou Microsoft Entra
- Pomocí
IDataInitialize::GetDataSource:- Spravovaná identita přiřazená uživatelem:
Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryMSI; ID uživatele=[ID objektu]; Použití šifrování pro data = povinné
- Spravovaná identita přiřazená systémem:
Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryMSI; Použití šifrování pro data = povinné
- Spravovaná identita přiřazená uživatelem:
- Pomocí
DBPROP_INIT_PROVIDERSTRING:- Spravovaná identita přiřazená uživatelem:
Server=[server]; Database=[database]; Authentication=ActiveDirectoryMSI; UID=[ID objektu]; Encrypt=Povinné
- Spravovaná identita přiřazená systémem:
Server=[server]; Database=[database]; Authentication=ActiveDirectoryMSI; Encrypt=Mandatory
- Spravovaná identita přiřazená uživatelem:
Ověřování objektu služby Microsoft Entra
- Pomocí
IDataInitialize::GetDataSource:Provider=MSOLEDBSQL19; Zdroj dat=[server]; Initial Catalog=[database]; Authentication=ActiveDirectoryServicePrincipal; ID uživatele=[ID aplikace (klienta)]; Password=[Tajný kód aplikace (klienta)]; Použití šifrování pro data = povinné
- Pomocí
DBPROP_INIT_PROVIDERSTRING:Server=[server]; Database=[database]; Authentication=ActiveDirectoryServicePrincipal; UID=[ID aplikace (klienta)]; PWD=[Tajný kód aplikace (klienta)]; Encrypt=Mandatory
Ukázky kódu
Následující ukázky ukazují kód potřebný pro připojení k ID Microsoft Entra s klíčovými slovy připojení.
Token přístupu
#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();
}
Integrovaná služba 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();
}
Související obsah
Autorizuje přístup k webovým aplikacím Microsoft Entra pomocí toku udělení kódu OAuth 2.0.
Přečtěte si o ověřování Microsoft Entra na SQL Serveru.
Nakonfigurujte připojení ovladačů pomocí klíčových slov připojovacího řetězce , která ovladač OLE DB podporuje.