Мы разрабатываем веб-сайт Azure, который должен связываться с несколькими серверами, каждый из которых требует отдельного SSL-соединения.X509CertificateCollection проблемы в Azure webjob
У нас есть наши сертификаты, хранящиеся на внешнем сервере, и загружать их во время выполнения вместе с соответствующими настройками SSL-соединения. Когда мы вызываем конструктор X509Certificate2, чтобы добавить его в X509CertificateCollection, webjob останавливается с кодом выхода -1073740940, и его статус становится «PendingRestart». Мы предполагаем, что класс X509Certificate2 несовместим с webjobs, но мы не можем найти никакого намека на то, как решить эту проблему.
Строка кода, который генерирует вопрос
IS-новых X509Certificate2 (sslCertificateBytes, socketSettings_.CertificatePassword))
private X509CertificateCollection GetClientCertificates(byte[] sslCertificateBytes)
{
log_?.OnEvent($"{nameof(SSLStreamFactory)} function {nameof(GetClientCertificates)} started");
X509CertificateCollection result = new X509Certificate2Collection();
log_?.OnEvent($"{nameof(X509CertificateCollection)} {nameof(result)} construction successfull");
try
{
if (sslCertificateBytes != null)
{
log_?.OnEvent($"{nameof(sslCertificateBytes)} enumerable != null");
result.Add(new X509Certificate2(sslCertificateBytes, socketSettings_.CertificatePassword));
log_?.OnEvent($"result.Add successful");
}
else if (!string.IsNullOrEmpty(socketSettings_.CertificatePath))
{
log_?.OnEvent($"{nameof(socketSettings_.CertificatePath)} != null");
result = new X509Certificate2Collection();
log_?.OnEvent($"{nameof(X509CertificateCollection)} {nameof(result)} construction successfull");
var clientCert = StreamFactory.LoadCertificate(socketSettings_.CertificatePath, socketSettings_.CertificatePassword, log_);
log_?.OnEvent($"{nameof(StreamFactory.LoadCertificate)} function ended");
if (clientCert != null)
{
result.Add(clientCert);
log_?.OnEvent($"result.Add successful");
}
}
}
catch (Exception ex)
{
log_?.OnEvent($"{nameof(SSLStreamFactory)} function {nameof(GetClientCertificates)} raised exception: {ex.Message}");
throw;
}
log_?.OnEvent($"{nameof(SSLStreamFactory)} function {nameof(GetClientCertificates)} ended");
return result;
}
Есть ли способ управления SSL сертификаты на Azure Webjobs ? Заранее благодарен