Я пытаюсь понять, как различные настройки влияют на поведение моего сервера-клиента. На сервере я установил самозаверяющий CA с выданным сертификатом Exchange, который также был настроен для использования моей службой SQL.
Сначала я хотел бы видеть, что это соединение перестало работать, когда корневой клиент не был установлен на клиенте. Но что бы я ни делал, это все равно работает.
Чтобы лучше понять почему, я пытаюсь перечислить все варианты и какой эффект они должны произвести. Но я не уверен, что правильно понял ...
Может кто-нибудь помочь мне исправить и заполнить недостающие фрагменты здесь?
При включении параметра « Принудительное шифрование » на SQL Server:
- На практике это то же самое, что установка
Encrypt=True;TrustServerCertificate=True;
в моей строке подключения. Клиент не может сказать, следует ли использовать шифрование или нет, а также следует ли доверять серверу или нет. - Эта опция может использоваться для шифрования отдельных экземпляров службы.
- Поддерживает самозаверяющие биржевые сертификаты без CA.
При включении параметра « Принудительное шифрование протокола » на сервере SQL:
- Все клиентские подключения ко всем службам на сервере зашифрованы.
- Требуется сертификат обмена, выданный доверенным центром сертификации, доступный как на клиенте, так и на сервере.
При использовании параметра « Принудительное шифрование протокола » на клиенте:
- Этот единственный клиент принудительно использует SSL и требует сертификат обмена, выданный доверенным центром сертификации, доступным на этом компьютере. Без этого это соединение не удастся.
При включении параметра « Принудительное шифрование протокола » на сервере и клиенте:
- Это не рекомендуется. Но почему? Что происходит и что не получится?
При включении « Принудительное шифрование » и « Принудительное шифрование протокола » на сервере:
- Что это даст? Имеет ли значение, какое принудительное шифрование установлено, когда включено принудительное шифрование протокола?
источник