У меня есть существующий сервер DataSnap (служба Windows), который отлично работает в HTTP, и теперь я хочу добавить HTTPS в качестве дополнительного протокола. Я получил и установил SSL-сертификат и сгенерировал файл сертификата (.crt) и файл закрытого ключа (.key). В качестве теста при использовании мастера сервера Delphi XE2 DataSnap и тикании «HTTPS» для получения страницы сертификата я могу ссылаться на 2 файла и нажать кнопку «Тест», которая будет успешной. Я добавил дополнительный компонент TDSHTTPService и связал его с компонентом TDSCertFiles. В моем стартовом событии службы я устанавливаю путь к двум файлам сертификатов перед запуском DSServer в свойствах DSCertFiles.CertFile и DSCertFiles.KeyFile. При попытке начать обслуживание я получаю сообщение об ошибке:Сервер данных DataSnap Delphi XE2 «Не удалось загрузить сертификат»
Could not load certificate. error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib
Есть ли что-то, что мне не хватает?
ли проверить код, что услуга действительно может «видеть» файлы сертификатов (это может быть путь или проблема разрешения)? – mjn
Привет, см. Мой комментарий к ответу Реми - компонент, похоже, ищет сертификаты в пути, установленном только во время разработки (может быть, ошибка?). –
Вы можете проверить, является ли это ошибкой - если ошибка исчезнет, как только вы поместите файлы в определенное время, определенное временем разработки. В противном случае что-то не так с средой обслуживания. – mjn