Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Minden .NET-keretrendszer adatszolgáltató rendelkezik egy Connection objektummal, amely örököl a DbConnection adattípustól, valamint egy szolgáltatóspecifikus ConnectionString tulajdonsággal. Az egyes szolgáltatók adott kapcsolati sztring szintaxisa ConnectionString a tulajdonságában van dokumentálva. Az alábbi táblázat a .NET-keretrendszer részét képező négy adatszolgáltatót sorolja fel.
| .NET-adatszolgáltató | Leírás |
|---|---|
| System.Data.SqlClient | Adathozzáférést biztosít a Microsoft SQL Serverhez. Az kapcsolati sztring szintaxissal kapcsolatos további információkért lásd: ConnectionString. |
| System.Data.OleDb | Adathozzáférést biztosít az OLE DB használatával közzétett adatforrásokhoz. Az kapcsolati sztring szintaxissal kapcsolatos további információkért lásd: ConnectionString. |
| System.Data.Odbc | Adathozzáférést biztosít az ODBC használatával közzétett adatforrásokhoz. Az kapcsolati sztring szintaxissal kapcsolatos további információkért lásd: ConnectionString. |
| System.Data.OracleClient | Adathozzáférést biztosít az Oracle 8.1.7-es vagy újabb verziójához. Az kapcsolati sztring szintaxissal kapcsolatos további információkért lásd: ConnectionString. |
Kapcsolati karakterlánc-összeállítók
ADO.NET 2.0 az alábbi kapcsolati sztring-szerkesztőket vezette be az .NET-keretrendszer adatszolgáltatók számára.
- SqlConnectionStringBuilder
- OleDbConnectionStringBuilder
- OdbcConnectionStringBuilder
- OracleConnectionStringBuilder
A kapcsolati sztringszerkesztők lehetővé teszik a szintaktikailag érvényes kapcsolati sztringek futásidőben történő összeállítását, így nem kell manuálisan összefűznie a kapcsolati sztring értékeit a kódban. További információ: Kapcsolati karakterlánc építők.
Windows-hitelesítés
A Windows-hitelesítés (más néven integrált biztonság) használható az azt támogató adatforrásokhoz való csatlakozáshoz. A kapcsolati sztring alkalmazott szintaxis szolgáltatónként eltérő. Az alábbi táblázat az .NET-keretrendszer adatszolgáltatókhoz használt Windows-hitelesítés szintaxisát mutatja be.
| Szolgáltató | Szintaxis |
|---|---|
SqlClient |
Integrated Security=true;-- or --Integrated Security=SSPI; |
OleDb |
Integrated Security=SSPI; |
Odbc |
Trusted_Connection=yes; |
OracleClient |
Integrated Security=yes; |
Megjegyzés
Integrated Security=true kivételt jelez, ha a OleDb szolgáltatónál használják.
Fontos
A Microsoft azt javasolja, hogy a legbiztonságosabb hitelesítési folyamatot használja. Ha az Azure SQL-hez csatlakozik, az Azure-erőforrásokhoz használt felügyelt identitások az ajánlott hitelesítési módszer.
SqlClient-kapcsolati karakterláncok
A SqlConnection kapcsolati sztring szintaxisa a SqlConnection.ConnectionString tulajdonságban van dokumentálva. A ConnectionString tulajdonság használatával lekérhet vagy beállíthat kapcsolati sztring egy SQL Server-adatbázishoz. Ha az SQL Server egy korábbi verziójához kell csatlakoznia, az OleDb(System.Data.OleDb) .NET-keretrendszer adatszolgáltatóját kell használnia. A legtöbb kapcsolati sztringek kulcsszavai is hozzárendelhetők a tulajdonságokhoz a SqlConnectionStringBuilder.
Fontos
A Persist Security Info kulcsszó alapértelmezett beállítása false.
true vagy yes beállítása lehetővé teszi, hogy a kapcsolat megnyitása után biztonsági szempontból érzékeny információkat, például a felhasználói azonosítót és a jelszót szerezzenek be a kapcsolatból. Hagyja Persist Security Infofalse beállításokkal, hogy a nem megbízható forrás ne férhessen hozzá bizalmas kapcsolati karakterlánc információkhoz.
Windows-hitelesítés az SqlClient használatával
Az alábbi szintaxisformák mindegyike Windows-hitelesítéssel csatlakozik az AdventureWorks adatbázishoz egy helyi kiszolgálón.
"Persist Security Info=False;Integrated Security=true;
Initial Catalog=AdventureWorks;Server=MSSQL1"
"Persist Security Info=False;Integrated Security=SSPI;
database=AdventureWorks;server=(local)"
"Persist Security Info=False;Trusted_Connection=True;
database=AdventureWorks;server=(local)"
Fontos
A Microsoft azt javasolja, hogy a legbiztonságosabb hitelesítési folyamatot használja. Ha az Azure SQL-hez csatlakozik, az Azure-erőforrásokhoz használt felügyelt identitások az ajánlott hitelesítési módszer.
SQL Server-hitelesítés az SqlClient használatával
A Windows-hitelesítés ajánlott az SQL Serverhez való csatlakozáshoz helyben. Ha azonban SQL Server-hitelesítésre van szükség, használja az alábbi szintaxist a felhasználónév és a jelszó megadásához. Ebben a példában csillagokkal jelöljük az érvényes felhasználónevet és jelszót.
"Persist Security Info=False;User ID=*****;Password=*****;Initial Catalog=AdventureWorks;Server=MySqlServer"
Amikor az Azure SQL Database-hez vagy az Azure SQL Data Warehouse-hoz csatlakozik, és megadja a bejelentkezési formátumot user@servername, győződjön meg arról, hogy a servername bejelentkezési érték megegyezik a megadott Server=értékkel.
Megjegyzés
A Windows-hitelesítés elsőbbséget élvez az SQL Server-bejelentkezésekkel szemben. Ha mind a felhasználónevet, mind Integrated Security=true a jelszót megadja, a rendszer figyelmen kívül hagyja a felhasználónevet és a jelszót, és Windows-hitelesítést használ.
Fontos
A Microsoft azt javasolja, hogy a legbiztonságosabb hitelesítési folyamatot használja. Ha az Azure SQL-hez csatlakozik, az Azure-erőforrásokhoz használt felügyelt identitások az ajánlott hitelesítési módszer.
Csatlakozás az SQL Server nevesített példányához
Az SQL Server nevesített példányához való csatlakozáshoz használja a kiszolgálónév\példánynév szintaxisát.
"Data Source=MySqlServer\\MSSQL1;"
A kapcsolati sztring létrehozásakor a SqlConnectionStringBuilder tulajdonságot is beállíthatja a DataSource példány nevére. Egy DataSource objektum SqlConnection tulajdonsága csak olvasható.
Rendszerverzió változásainak beírása
A Type System Version kulcsszó az SqlConnection.ConnectionString SQL Server-típusok ügyféloldali megjelenítését határozza meg. További információkért a Type System Version kulcsszóról lásd SqlConnection.ConnectionString.
Csatlakozás és csatolás SQL Server Express-felhasználói példányokhoz
A felhasználói példányok az SQL Server Express egyik funkciója. Lehetővé teszik, hogy a legkevésbé kiemelt helyi Windows-fiókon futó felhasználók rendszergazdai jogosultságok nélkül csatoljanak és futtassanak egy SQL Server-adatbázist. A felhasználói példány nem szolgáltatásként fut, hanem a felhasználó Windows-hitelesítő adataival.
A felhasználói példányok használatával kapcsolatos további információkért lásd: SQL Server Express User Instances.
A TrustServerCertificate használata
A TrustServerCertificate kulcsszó csak akkor érvényes, ha érvényes tanúsítvánnyal rendelkező SQL Server-példányhoz csatlakozik. Ha TrustServerCertificate be van állítva true, az átviteli réteg SSL használatával titkosítja a csatornát, és megkerüli a tanúsítványláncot a megbízhatóság ellenőrzéséhez.
"TrustServerCertificate=true;"
Megjegyzés
Ha TrustServerCertificate be van állítva true, és a titkosítás be van kapcsolva, akkor a kiszolgálón megadott titkosítási szint akkor is használható lesz, ha a kapcsolati sztringben Encrypt be van állítva false. A kapcsolat egyébként sikertelen lesz.
Titkosítás engedélyezése
A titkosítás engedélyezéséhez, amikor a kiszolgálón nincs telepítve tanúsítvány, az Force Protocol Encryption és a Trust Server Certificate opciókat kell beállítani az SQL Server Konfigurációkezelőben. Ebben az esetben a titkosítás egy önaláírt kiszolgálótanúsítványt fog használni ellenőrzés nélkül, ha nem lett kiépítve ellenőrizhető tanúsítvány a kiszolgálón.
Az alkalmazásbeállítások nem csökkenthetik az SQL Serverben konfigurált biztonsági szintet, de szükség esetén megerősíthetik azt. Az alkalmazás titkosítást kérhet úgy, hogy a TrustServerCertificate és Encrypt kulcsszavakat true állítja be, garantálva, hogy a titkosítás akkor is végbemegy, ha nincs kiépítve kiszolgálótanúsítvány, és az ügyfélhez nincs konfigurálva a Protokollkényszerített titkosítás. Ha TrustServerCertificate azonban nincs engedélyezve az ügyfélkonfigurációban, akkor is szükség van egy kiépített kiszolgálótanúsítványra.
Az alábbi táblázat az összes esetet ismerteti.
| Protokolltitkosítás kényszerítésének ügyfél beállítása | Megbízhatósági kiszolgáló tanúsítványának ügyfélbeállítása | Titkosítsa vagy használjon titkosítást az adatkapcsolati karakterláncra vagy attribútumra. | Megbízhatósági kiszolgáló tanúsítványának kapcsolati sztring/attribútuma | Eredmény |
|---|---|---|---|---|
| Nem | N/A | Nem (alapértelmezett) | Figyelmen kívül hagyva | Nem történik titkosítás. |
| Nem | N/A | Igen | Nem (alapértelmezett) | A titkosítás csak akkor történik meg, ha van ellenőrizhető kiszolgálói tanúsítvány, ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| Nem | N/A | Igen | Igen | A titkosítás mindig megtörténik, de használhat önaláírt kiszolgálói tanúsítványt. |
| Igen | Nem | Figyelmen kívül hagyva | Figyelmen kívül hagyva | A titkosítás csak akkor történik, ha ellenőrizhető kiszolgálótanúsítvány van; ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| Igen | Igen | Nem (alapértelmezett) | Figyelmen kívül hagyva | A titkosítás mindig megtörténik, de használhat önaláírt kiszolgálói tanúsítványt. |
| Igen | Igen | Igen | Nem (alapértelmezett) | A titkosítás csak akkor történik, ha ellenőrizhető kiszolgálótanúsítvány van; ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| Igen | Igen | Igen | Igen | A titkosítás mindig megtörténik, de használhat önaláírt kiszolgálói tanúsítványt. |
További információért lásd: Titkosítás használata érvényesítés nélkül.
OleDb kapcsolati karakterláncok
A OleDbConnectionConnectionString tulajdonsága lehetővé teszi, hogy egy OLE DB-adatforráshoz, például a Microsoft Accesshez, egy kapcsolati karakterláncot lekérjen vagy beállítson. Futtatókörnyezetben is létrehozhat kapcsolati sztringet OleDb az OleDbConnectionStringBuilder osztály használatával.
OleDb kapcsolati sztring szintaxis
A OleDbConnection kapcsolati sztringhez meg kell adnia egy szolgáltató nevét. Az alábbi kapcsolati sztring egy Microsoft Access-adatbázishoz csatlakozik a Jet-szolgáltató használatával. Vegye figyelembe, hogy a User ID és a Password kulcsszavak nem kötelezőek, ha az adatbázis nem biztonságos (ez az alapértelmezett beállítás).
Provider=Microsoft.Jet.OLEDB.4.0; Data Source=d:\Northwind.mdb;User ID=Admin;Password=;
Ha a Jet-adatbázist felhasználói szintű biztonság védi, meg kell adnia a munkacsoport információs fájljának (.mdw) helyét. A munkacsoport információs fájlja a kapcsolat sztringben megadott hitelesítő adatok ellenőrzésére szolgál.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Northwind.mdb;Jet OLEDB:System Database=d:\NorthwindSystem.mdw;User ID=*****;Password=*****;
Fontos
Egy univerzális adatkapcsolati (UDL-) fájlban meg lehet adni kapcsolati információkat egy OleDbConnection, azonban ezt érdemes kerülni. Az UDL-fájlok nincsenek titkosítva, és kapcsolati sztring információkat világos szövegben teszik elérhetővé. Mivel az UDL-fájl az alkalmazás külső fájlalapú erőforrása, nem védhető .NET-keretrendszer használatával. Az SQLClient nem támogatja az UDL-fájlokat.
Fontos
A Microsoft azt javasolja, hogy a legbiztonságosabb hitelesítési folyamatot használja. Ha az Azure SQL-hez csatlakozik, az Azure-erőforrásokhoz használt felügyelt identitások az ajánlott hitelesítési módszer.
Csatlakozás az Accesshez/Jethez a DataDirectory használatával
DataDirectory nem kizárólagos a SqlClient. A .NET-adatszolgáltatókkal System.Data.OleDbSystem.Data.Odbc is használható. Az alábbi példasztring OleDbConnection az alkalmazás app_data mappájában található Northwind.mdb való csatlakozáshoz szükséges szintaxist mutatja be. A rendszeradatbázis (System.mdw) is ezen a helyen van tárolva.
"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=|DataDirectory|\Northwind.mdb;
Jet OLEDB:System Database=|DataDirectory|\System.mdw;"
Fontos
Nem szükséges megadni a rendszeradatbázis helyét a kapcsolati sztring, ha az Access/Jet adatbázis nem biztonságos. A biztonság alapértelmezés szerint ki van kapcsolva, és minden felhasználó egy üres jelszóval csatlakozik a beépített rendszergazdai felhasználóhoz. A Jet-adatbázisok akkor is sebezhetőek maradnak a támadással szemben, ha helyesen implementálják a felhasználói szintű biztonságot. Ezért az Access-/Jet-adatbázisok bizalmas adatainak tárolása nem ajánlott a fájlalapú biztonsági séma eredendő gyengesége miatt.
Csatlakozás az Excelhez
A Microsoft Jet-szolgáltató egy Excel-munkafüzethez való csatlakozásra szolgál. A következő kapcsolati sztringben a Extended Properties kulcsszó kifejezetten az Excelre jellemző tulajdonságokat állítja be. A "HDR=Igen;" azt jelzi, hogy az első sor oszlopneveket tartalmaz, nem adatokat, és az "IMEX=1;" azt jelzi, hogy az illesztő mindig szövegként olvassa fel az "összefűzött" adatoszlopokat.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""
Vegye figyelembe, hogy a Extended Properties-hez szükséges idézőjel karaktert is idézőjelek közé kell foglalni.
Adatstruktúra-szolgáltató kapcsolati karaktersor szintaxis
A Microsoft Data Shape szolgáltató használatakor használja mind a Provider, mind a Data Provider kulcsszót. Az alábbi példa az Alakzatszolgáltatót használja az SQL Server helyi példányához való csatlakozáshoz.
"Provider=MSDataShape;Data Provider=SQLOLEDB;Data Source=(local);Initial Catalog=pubs;Integrated Security=SSPI;"
Fontos
A Microsoft azt javasolja, hogy a legbiztonságosabb hitelesítési folyamatot használja. Ha az Azure SQL-hez csatlakozik, az Azure-erőforrásokhoz használt felügyelt identitások az ajánlott hitelesítési módszer.
ODBC kapcsolati karakterláncok
A ConnectionString tulajdonsága a OdbcConnection lehetővé teszi egy kapcsolati lánc lekérését vagy beállítását egy OLE DB-adatforráshoz. Az ODBC kapcsolati sztringeket is támogatja a OdbcConnectionStringBuilder.
Az alábbi kapcsolati karakterlánc a Microsoft Szövegillesztőt használja.
Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=d:\bin
Oracle-kapcsolati karakterláncok
A ConnectionString tulajdonság OracleConnection lehetővé teszi, hogy megkapjon vagy beállítson egy kapcsolati sztringet egy OLE DB-adatforráshoz. Az Oracle-kapcsolati karakterláncokat is támogatja a OracleConnectionStringBuilder.
Data Source=Oracle9i;User ID=*****;Password=*****;
További információ az ODBC kapcsolati sztring szintaxisáról: ConnectionString.
Fontos
A Microsoft azt javasolja, hogy a legbiztonságosabb hitelesítési folyamatot használja. Ha az Azure SQL-hez csatlakozik, az Azure-erőforrásokhoz használt felügyelt identitások az ajánlott hitelesítési módszer.