Это пример реализации проверки наличия корневых сертификатов Минцифры.
Вы можете использовать этот пример для реализации на своем сайте, например, если у вас реализован аквайринг через Сбер и есть вероятность, что браузер клиента не сможет отобразить страницу платежного гейта.
- Проверяет возможность подключения к сайту, использующему сертификат, выданный Минцифры.
- Умеет реагировать на наличие и отсутствие корневых сертификатов Минцифры.
- Умеет сохранять куку (на две недели), чтобы не показывать сообщение на каждой странице.
- Может выполняться на любом сайте, пользователь при этом не видит страницы с ошибкой сертификата.
- Включите в клиентский код своего сайта фрагмент, приведённый ниже.
- Реализуйте отображение предупреждения тем способом, который принят у вас на сайте.
- Устанавливайте в коде куку "skipSslCheck", если не хотите допекать пользователя сообщением на каждой странице.
- Профит.
const e = new XMLHttpRequest
e.open("GET", "https://www.sberbank.ru/", !0),
e.addEventListener("load", (() => {
// действие если всё ОК
}
)),
e.onerror = function () {
if (!document.cookie.match(/^(.*;)?\s*skipSslCheck\s*=\s*[^;]+(.*)?$/)) {
// действие, если корневых нет.
}
},
e.send()