Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Obsługa klienta SQL Server Native Client 11.0 (SNAC) jako sterownika dla aplikacji baz danych zakończyła się 12 lipca 2022 r. Wszystkie aplikacje korzystające z kontroli SNAC 11.0 muszą zostać zaktualizowane, aby korzystały z nowszych wersji sterowników (zobacz Pobieranie sterownika ODBC dla programu SQL Server i Pobieranie sterownika MICROSOFT OLE DB dla programu SQL Server). W tym artykule opisano problem występujący podczas uaktualniania aplikacji SNAC 11.0 do używania sterownika Microsoft OLE DB Driver 19 dla programu SQL Server lub sterownika Microsoft ODBC 18.x dla programu SQL Server.
- Uaktualniono do sterownika MICROSOFT OLE DB 19 dla programu SQL Server
- Uaktualniono do sterownika Microsoft ODBC 18.x dla programu SQL Server
Jeśli niedawno uaktualniono aplikację SQL Server Native Client 11.0 (Provider=SQLNCLI11) do używania sterownika Microsoft OLE DB 19 dla programu SQL Server (Provider=MSOLEDBSQL19), mogą pojawić się komunikaty o błędach podobne do następujących komunikatów:
[Sterownik Microsoft OLE DB 19 dla programu SQL Server]: Klient nie może nawiązać połączenia
[Sterownik Microsoft OLE DB 19 dla programu SQL Server]: Dostawca SSL: Łańcuch certyfikatów został wystawiony przez urząd, który nie jest zaufany.
Przyczyna błędu zaufania łańcucha certyfikatów w aplikacjach SNAC
Te błędy występują, jeśli oba następujące warunki są spełnione:
Ustawienie Wymuszanie szyfrowania dla wystąpienia programu SQL Server ma wartość Nie.
Parametry połączenia klienta nie określa jawnie wartości właściwości szyfrowania lub opcja Szyfrowanie nie została jawnie ustawiona ani zaktualizowana w nazwie DSN.
Błąd występuje z powodu zmiany domyślnego zachowania sterowników klienta. Starsze wersje sterowników klienta zostały zaprojektowane tak, aby zakładać, że szyfrowanie danych jest domyślnie wyłączone . Nowe sterowniki zakładają, że to ustawienie ma być domyślnie włączone . Ponieważ szyfrowanie danych jest ustawione na WŁĄCZONE, sterownik próbuje zweryfikować certyfikat serwera i zakończy się niepowodzeniem.
Rozwiązania dotyczące błędu zaufania łańcucha certyfikatów w aplikacjach SNAC
Rozwiązanie 1. Użyj sterownika Microsoft OLE DB dla programu SQL Server 18.x. Sterownik można pobrać ze strony Informacje o wersji sterownika Microsoft OLE DB dla programu SQL Server.
Rozwiązanie 2: Jeśli właściwość aplikacji parametry połączenia już określa wartość Tak lub Obowiązkowe dla ustawienia Szyfrowanie/Używanie szyfrowania danych, zmień wartość na Nie lub Opcjonalnie. Na przykład Użyj szyfrowania dla danych=Opcjonalne. Jeśli parametry połączenia nie określi żadnej wartości dla szyfrowania/użycia szyfrowania danych, dodaj opcję Użyj szyfrowania dla danych =Opcjonalne do parametry połączenia. Aby uzyskać więcej informacji, zobacz Szyfrowanie i walidacja certyfikatu.
Rozwiązanie 3. Dodaj
;TrustServerCertificate=truedo parametry połączenia. Wymusi to na kliencie ufanie certyfikatowi bez weryfikacji.-
Uwaga 16.
Obecnie MSOLEDBSQL19 zapobiega tworzeniu serwerów połączonych bez szyfrowania i zaufanego certyfikatu (certyfikat z podpisem własnym jest niewystarczający). Jeśli wymagane są serwery połączone, użyj istniejącej obsługiwanej wersji programu MSOLEDBSQL.