Не могу создавать новые расписания с сайтов Azure
-
21-12-2019 - |
Вопрос
Я следовал за руководством здесь для настроек планировщика Azure: http:// FabricController.net/blog/posts/a-complete-overview-to-get-started-with-the-windows-azure-scheduler/
Я хочу запустить свое приложение на сайте Azure, но он блокирует меня от создания моего X509Certificate.
Я нашел эту статью: http://blog.tylerdoerksen.com/2013/08/23/pfx-certificate-files-and-windows-azure-websites/ . Что указывает на проблему:
Ну оказывается, что при загрузке сертификатов система будет использовать локальный каталог для хранения ключа (??) Расположение по умолчанию для ключа находится под локальным профилем пользователя, а также с веб-сайтами Windows Azure, нет локального каталога профиля пользователя. "
Так что после его совета и добавления следующего флага: «X509KeyStorageFlags.machinekeyyset» я могу уйти с:
Cryptographicexception: система не может найти указанный файл
Но я сейчас получаю:
Cryptographicexception: доступ запрещен.
Нет, нет способа использовать SDK из AzureWebsite?! Он поражает большую привлекательность планировщика Azure, если я вынужден использовать Webrole вместо сайта Azure.
В этой теме: http://social.msdn.microsoft.com/forums/windowsazure/en-us/cfe06e73-53e1-4030-b82d- 53200be37647 / Нагрузка - в частном порядке - P12-Cert-from-Azureblob-and-to-it-trusted Похоже, что они успешно создают X509Certificate на веб-сайте Azure, поэтому то, что отличается, что мои броски «Доступ запрещен», когда я пытаюсь?
Решение
Проблема была с использованием строки ManagementCertificate в файле публикации ... Я создал самообновленную сертификат на моем локальном компьютере, используя консоль VisualStudio и экспортировал как «.er», так и «.pfx».
Загрузил самого подписания .Cer в мой Azure / Settings / Managements В комплекте .pfx с моим решением и опубликован на Azure Web-сайты
Затем использовал следующий код для создания сертификата:
var certificate = new X509Certificate2(
HttpContext.Current.Server.MapPath("~/<filename>.pfx"), "<password>", X509KeyStorageFlags.MachineKeySet);
.