Za pomocą szyfrowanie bez sprawdzania poprawności
SQL Server zawsze szyfruje pakietów sieciowych skojarzonych z zalogowaniem.Jeśli certyfikat nie ma już przygotowana na serwerze, podczas jego uruchamiania, SQL Server generuje podpisany certyfikat, który jest używany do szyfrowania pakietów logowania.
Aplikacje może także zażądać szyfrowanie całego ruchu w sieci przy użyciu słów kluczowych ciąg połączenia lub właściwości połączenia.Słowa kluczowe są „ szyfrowanie „ ODBC i OLE DB, podczas korzystania z ciąg dostawca IDbInitialize::Initializelub "Użyj szyfrowania dla danych" dla obiektów ADO i OLE DB przy użyciu ciąg inicjalizacji z IDataInitialize.Może być również skonfigurowane przez SQL Server Menedżer konfiguracja przy użyciu Wymuszenie szyfrowanie protokół opcji.Domyślnie szyfrowanie całego ruchu sieciowego dla połączenia wymaga, czy certyfikat jest przygotowana na serwerze.
Aby uzyskać informacje na temat słów kluczowych ciąg połączenia Zobacz Przy użyciu słów kluczowych ciąg połączenia z SQL Server Native klient.
Aby włączyć szyfrowanie ma być używany, gdy certyfikat nie ma już przygotowana na serwerze, SQL Server Menedżer konfiguracja mogą być używane do zestaw zarówno Wymuszenie szyfrowania protokół and the Certyfikat serwera zaufania opcje.W takim przypadek szyfrowanie użyje certyfikat podpisany przez siebie serwera bez sprawdzania poprawności, jeśli certyfikat nie mogą zostać sprawdzone ma zostać przygotowana na serwerze.
Aplikacje mogą również używać słowa kluczowego "TrustServerCertificate" lub atrybut skojarzonych z połączeniami, aby zagwarantować, że szyfrowanie odbywa się.Aplikacja zestaw tings nigdy nie obniżyć poziom zabezpieczeń zestaw przez SQL Server Menedżer konfiguracja klient, ale może on wzmocnienia. Na przykład jeśli Wymuszenie szyfrowanie protokół nie jest ustawiony dla klient, aplikacja może zażądać szyfrowanie samego siebie.W celu zagwarantowania szyfrowanie, nawet wtedy, gdy certyfikat serwera nie jest już przygotowana, aplikacja może żądać szyfrowanie i "TrustServerCertificate".Jednak jeśli "TrustServerCertificate" nie jest włączone w konfiguracja klient, obsługiwaną certyfikat jest nadal potrzebny.W poniższej tabela opisano wszystkie przypadki:
Wymuszenie szyfrowanie protokół klient, ustawianie |
Zaufanie klientów certyfikat serwera, ustawienie |
Atrybut połączenie/ciąg połączenia Szyfruj/Użyj szyfrowanie danych |
Atrybut połączenie/ciąg połączenia zaufania certyfikat serwera |
Wynik |
|---|---|---|---|---|
Nie |
NIE DOTYCZY |
Nie (domyślnie) |
Ignorowany |
Szyfrowanie nie występuje. |
Nie |
NIE DOTYCZY |
Tak |
Nie (domyślnie) |
Szyfrowanie występuje tylko wtedy, gdy nie ma do sprawdzenia certyfikat serwera, inaczej próba połączenia nie powiedzie się. |
Nie |
NIE DOTYCZY |
Tak |
Tak |
Szyfrowanie zawsze pojawia się, ale mogą używać certyfikat podpisany przez siebie serwera. |
Tak |
Nie |
Ignorowany |
Ignorowany |
Szyfrowanie występuje tylko wtedy, gdy nie ma do sprawdzenia certyfikat serwera, inaczej próba połączenia nie powiedzie się. |
Tak |
Tak |
Nie (domyślnie) |
Ignorowany |
Szyfrowanie zawsze pojawia się, ale mogą używać certyfikat podpisany przez siebie serwera. |
Tak |
Tak |
Tak |
Nie (domyślnie) |
Szyfrowanie występuje tylko wtedy, gdy nie ma do sprawdzenia certyfikat serwera, inaczej próba połączenia nie powiedzie się. |
Tak |
Tak |
Tak |
Tak |
Szyfrowanie zawsze pojawia się, ale może być używany certyfikat podpisany przez siebie serwera. |
Dostawca OLE DB programu SQL Server Native Client
The SQL Server Native klient OLE DB dostawca supports szyfrowanie without validation through the addition of the SSPROP_INIT_TRUST_SERVER_CERTIFICATE data urządzenie źródłowe initialization właściwość, which is implemented in the DBPROPSET_SQLSERVERDBINIT właściwość zestaw. Ponadto nowy ciąg połączenia słowa kluczowego „ TrustServerCertificate", jak zostały dodane.Akceptuje wartości tak lub nie, nie jest ustawieniem domyślnym.W przypadku korzystania z usług składników, przyjmuje wartości PRAWDA lub FAŁSZ, ustawieniem domyślnym jest wartość false.
Aby uzyskać więcej informacji na temat rozszerzeń do DBPROPSET_SQLSERVERDBINIT zestaw właściwość Zobacz Inicjowanie i właściwości autoryzacja.
Program SQL Server macierzysty sterownik ODBC klient
The SQL Server Native klient ODBC driver supports szyfrowanie without validation through additions to the SQLSetConnectAttr and SQLGetConnectAttr functions.SQL_COPT_SS_TRUST_SERVER_CERTIFICATE został dodany do akceptowania SQL_TRUST_SERVER_CERTIFICATE_YES lub SQL_TRUST_SERVER_CERTIFICATE_NO z SQL_TRUST_SERVER_CERTIFICATE_NO jest wartością domyślną.Ponadto dodano nowe połączenie słowo ciąg kluczowe, "TrustServerCertificate".Przyjmuje wartości tak lub nie; "nie" jest wartością domyślną.