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.
Každý zprostředkovatel dat ADO.NET má objekt Connection, který dědí z DbConnection, a také vlastnost specifickou pro zprostředkovatele ConnectionString. Konkrétní syntaxe připojovacího řetězce pro každého zprostředkovatele je zdokumentována v její ConnectionString vlastnosti. Následující tabulka uvádí Microsoft.Data.SqlClient a tři zprostředkovatele zahrnuté v .NET Frameworku
| Poskytovatel dat | Popis |
|---|---|
| Microsoft.Data.SqlClient | Poskytuje přístup k datům pro Microsoft SQL Server prostřednictvím balíčku NuGet Microsoft.Data.SqlClient. Další informace o syntaxi připojovacího řetězce naleznete v oddílu ConnectionString. |
| System.Data.OleDb | Poskytuje přístup k datům pro vystavené zdroje dat pomocí OLE DB. Další informace o syntaxi připojovacího řetězce naleznete v oddílu ConnectionString. |
| System.Data.Odbc | Poskytuje přístup k datům pro zdroje dat vystavené pomocí rozhraní ODBC. Další informace o syntaxi připojovacího řetězce naleznete v oddílu ConnectionString. |
| System.Data.OracleClient | Poskytuje přístup k datům pro Oracle verze 8.1.7 nebo novější. Další informace o syntaxi připojovacího řetězce naleznete v oddílu ConnectionString. |
Tvůrci připojovacích řetězců
Použijte Tvůrce řetězce připojení pro svého poskytovatele dat.
- SqlConnectionStringBuilder
- OleDbConnectionStringBuilder
- OdbcConnectionStringBuilder
- OracleConnectionStringBuilder
Tvůrci připojovacích řetězců umožňují vytvářet syntakticky platné připojovací řetězce za běhu, takže v kódu nemusíte ručně zřetězit hodnoty připojovacího řetězce. Další informace naleznete v tématu Tvůrci řetězců připojení.
Ověřování systému Windows
Ověřování systému Windows (někdy označované jako integrované zabezpečení) se dá použít k připojení ke zdrojům dat, které ho podporují. Syntaxe používaná v připojovacím řetězci se liší podle zprostředkovatele. Následující tabulka ukazuje syntaxi ověřování Windows, která se používá s těmito zprostředkovateli dat.
| Poskytovatel | Syntaxe |
|---|---|
SqlClient |
Integrated Security=true;-- or --Integrated Security=SSPI; |
OleDb |
Integrated Security=SSPI; |
Odbc |
Trusted_Connection=yes; |
OracleClient |
Integrated Security=yes; |
Poznámka:
Integrated Security=true vyvolá výjimku při použití se zprostředkovatelem OleDb .
Důležité
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Pokud se připojujete k Azure SQL, Spravované identity pro prostředky Azure jsou doporučenou metodou ověřování.
Připojovací řetězce SqlClient
Syntaxe pro připojovací řetězec SqlConnection je zdokumentovaná ve vlastnosti SqlConnection.ConnectionString. Vlastnost ConnectionString můžete použít k získání nebo nastavení připojovacího řetězce pro databázi SQL Serveru. Většina klíčových slov v připojovacím řetězci se také mapuje na vlastnosti v SqlConnectionStringBuilder.
Důležité
Výchozí nastavení pro Persist Security Info klíčové slovo je false. Nastavením na true nebo yes umožňuje získat informace citlivé na zabezpečení, včetně ID uživatele a hesla, z připojení po jeho otevření. Ponechte Persist Security Info nastavenou na false, aby se zajistilo, že nedůvěryhodný zdroj nemá přístup k citlivým informacím o připojovacím řetězci.
Ověřování systému Windows pomocí SqlClient
Každá z následujících forem syntaxe používá ověřování Windows pro připojení k AdventureWorks databázi na zadaném serveru.
"Persist Security Info=False;Integrated Security=true;Initial Catalog=AdventureWorks;Server=<server>;Encrypt=true"
"Persist Security Info=False;Integrated Security=SSPI;database=AdventureWorks;server=<server>;Encrypt=true"
"Persist Security Info=False;Trusted_Connection=True;database=AdventureWorks;server=<server>;Encrypt=true"
Důležité
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Pokud se připojujete k Azure SQL, Spravované identity pro prostředky Azure jsou doporučenou metodou ověřování.
Ověřování SQL Serveru pomocí SqlClient
Ověřování systému Windows je upřednostňované pro připojení k SQL Serveru (místně). Pokud je však vyžadováno ověřování SQL Serveru, zadejte uživatelské jméno a heslo pomocí následující syntaxe. V tomto příkladu se hvězdičky používají k reprezentaci platného uživatelského jména a hesla.
"Persist Security Info=False;User ID=*****;Password=*****;Initial Catalog=AdventureWorks;Server=MySqlServer"
Když se připojíte ke službě Azure SQL Database nebo k Azure SQL Data Warehouse a zadáte přihlašovací údaje ve formátu user@servername, ujistěte se, že servername hodnota v přihlášení odpovídá hodnotě zadané pro Server=.
Poznámka:
Ověřování systému Windows má přednost před přihlášeními k SQL Serveru. Pokud zadáte Integrated Security=true, i uživatelské jméno a heslo budou ignorována a použije se ověřování systému Windows.
Důležité
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Pokud se připojujete k Azure SQL, Spravované identity pro prostředky Azure jsou doporučenou metodou ověřování.
Připojení k pojmenované instanci SQL Serveru
Pokud se chcete připojit k pojmenované instanci SQL Serveru, použijte syntaxi názvu serveru\instance .
"Data Source=<server>\\<instance>;Encrypt=true;"
Při vytváření připojovacího řetězce můžete také nastavit DataSource vlastnost názvu instance SqlConnectionStringBuilder. Vlastnost DataSource objektu SqlConnection je určena jen pro čtení.
Změny verzí systému typů
Klíčové Type System Version slovo v sadě SqlConnection.ConnectionString určuje reprezentaci typů SQL Serveru na straně klienta. Další informace o klíčovém slově Type System Version naleznete v tématu SqlConnection.ConnectionString.
Připojení a připojení k uživatelským instancím SQL Serveru Express
Instance uživatelů jsou funkcí SQL Serveru Express. Umožní uživateli, který běží na nejméně privilegovaném místním účtu Windows, připojit a spustit databázi SQL Serveru bez vyžadování oprávnění správce. Instance uživatele se spustí s přihlašovacími údaji windows uživatele, ne jako služba.
Další informace o práci s uživatelskými instancemi naleznete v části SQL Server Express Uživatelské Instance.
Použití TrustServerCertificate
Pomocí příkazu Encrypt=trueTrustServerCertificate=true šifruje připojení, ale obchází ověření certifikátu serveru. Ponechte TrustServerCertificate=false pro produkční připojení a nakonfigurujte ověřitelný certifikát serveru.
"TrustServerCertificate=true;"
Caution
Pokud vynecháte ověření certifikátu, klient nemůže ověřit identitu serveru. S Encrypt=Strict Microsoft.Data.SqlClient vždy ověřuje certifikát serveru a ignoruje TrustServerCertificate.
Povolení šifrování
Microsoft.Data.SqlClient má ve výchozím nastavení Encrypt=Mandatory, ekvivalentní k Encrypt=true a TrustServerCertificate=false. Klient vyžaduje šifrování a ověřuje certifikát serveru. Pokud certifikát není důvěryhodný nebo neodpovídá názvu serveru, připojení se nezdaří.
Pro vzdálená připojení zadejte Encrypt=true a nakonfigurujte certifikát serveru, kterému klient důvěřuje. Pokud migrujete z System.Data.SqlClient, nepředpokládejte, že výchozí nastavení šifrování platí pro Microsoft.Data.SqlClient. Další informace naleznete v tématu Šifrování a ověření certifikátu v Microsoft.Data.SqlClient.
OleDb připojovací řetězec
ConnectionString Vlastnost OleDbConnection umožňuje získat nebo nastavit připojovací řetězec pro zdroj dat OLE DB, například Microsoft Access. Můžete také vytvořit OleDb připojovací řetězec za běhu pomocí třídy OleDbConnectionStringBuilder.
Syntaxe řetězce připojení OleDb
Je nutné zadat název zprostředkovatele pro OleDbConnection připojovací řetězec. Následující připojovací řetězec se připojí k databázi Microsoft Accessu pomocí zprostředkovatele Jet. Všimněte si, že User ID klíčová slova a Password klíčová slova jsou nepovinná, pokud je databáze nezabezpečená (výchozí).
Provider=Microsoft.Jet.OLEDB.4.0; Data Source=d:\Northwind.mdb;User ID=Admin;Password=;
Pokud je databáze Jet zabezpečená pomocí zabezpečení na úrovni uživatele, musíte zadat umístění informačního souboru pracovní skupiny (.mdw). Informační soubor pracovní skupiny slouží k ověření přihlašovacích údajů uvedených v připojovacím řetězci.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Northwind.mdb;Jet OLEDB:System Database=d:\NorthwindSystem.mdw;User ID=*****;Password=*****;
Důležité
V souboru UDL (Universal Data Link) je možné zadat informace o OleDbConnection připojení; nicméně, měli byste se tomu vyhnout. Soubory UDL nejsou šifrované a zveřejňují připojovací řetězec informace ve formátu prostého textu. Vzhledem k tomu, že soubor UDL je externím souborovým prostředkem pro vaši aplikaci, nelze ho zabezpečit pomocí rozhraní .NET Framework. Soubory UDL nejsou podporovány pro SqlClient.
Důležité
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Pokud se připojujete k Azure SQL, Spravované identity pro prostředky Azure jsou doporučenou metodou ověřování.
Připojení k Accessu nebo Jetu pomocí DataDirectory
DataDirectory není exkluzivní pro SqlClient. Lze jej také použít se zprostředkovateli dat .NET System.Data.OleDb a System.Data.Odbc. Následující ukázkový OleDbConnection řetězec ukazuje syntaxi potřebnou pro připojení k Northwind.mdb umístěné ve složce app_data aplikace. Systémová databáze (System.mdw) je také uložena v daném umístění.
"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=|DataDirectory|\Northwind.mdb;
Jet OLEDB:System Database=|DataDirectory|\System.mdw;"
Důležité
Určení umístění systémové databáze v připojovací řetězec není vyžadováno, pokud je databáze Access/Jet nezabezpečená. Zabezpečení je ve výchozím nastavení vypnuté, protože všichni uživatelé se připojují jako předdefinovaný uživatel s prázdným heslem správce. I když je správně implementováno zabezpečení na úrovni uživatele, databáze Jet zůstává zranitelná vůči útokům. Proto se ukládání citlivých informací do databáze Access/Jet nedoporučuje kvůli vnitřní slabině jeho schématu zabezpečení založeného na souborech.
Připojení k aplikaci Excel
Zprostředkovatel Microsoft Jet slouží k připojení k sešitu aplikace Excel. V následujícím připojovacím řetězci klíčové slovo Extended Properties nastaví vlastnosti specifické pro Microsoft Excel. "HDR=Yes;" značí, že první řádek obsahuje názvy sloupců, ne data, a "IMEX=1;" předává instrukci ovladači, aby vždy četl smíšené datové sloupce jako text.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""
Všimněte si, že dvojitá uvozovka požadovaná pro Extended Properties musí být také uzavřena do dvojitých uvozovek.
Syntaxe řetězce připojení pro zprostředkovatele tvarů dat
Při použití poskytovatele Data Shape od společnosti Microsoft používejte klíčová slova Provider i Zprostředkovatel dat. Následující příklad používá poskytovatele Shape pro připojení k místní instanci SQL Serveru.
"Provider=MSDataShape;Data Provider=SQLOLEDB;Data Source=(local);Initial Catalog=pubs;Integrated Security=SSPI;"
Důležité
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Pokud se připojujete k Azure SQL, Spravované identity pro prostředky Azure jsou doporučenou metodou ověřování.
Řetězce připojení ODBC
ConnectionString Vlastnost OdbcConnection umožňuje získat nebo nastavit připojovací řetězec pro zdroj dat OLE DB. Připojovací řetězce ODBC jsou také podporovány OdbcConnectionStringBuilder.
Následující připojovací řetězec používá ovladač Microsoft Text.
Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=d:\bin
Připojovací řetězec Oracle
ConnectionString Vlastnost OracleConnection umožňuje získat nebo nastavit připojovací řetězec pro zdroj dat OLE DB. Oracle připojovací řetězce jsou také podporovány OracleConnectionStringBuilder.
Data Source=Oracle9i;User ID=*****;Password=*****;
Další informace o syntaxi připojovacího řetězce ODBC viz ConnectionString.
Důležité
Microsoft doporučuje používat nejbezpečnější dostupný tok ověřování. Pokud se připojujete k Azure SQL, Spravované identity pro prostředky Azure jsou doporučenou metodou ověřování.