2016-04-30 2 views
1

Я смог заставить это работать локально, используя следующий файл Settings.xml.Как запустить защищенную службу с сохранением состояния в Azure?

<Section Name="ReplicatorSecurityConfig"> 
    <Parameter Name="CredentialType" Value="X509" /> 
    <Parameter Name="FindType" Value="FindByThumbprint" /> 
    <Parameter Name="FindValue" Value="InsertLocalhostThumbprintHere" /> 
    <Parameter Name="StoreLocation" Value="LocalMachine" /> 
    <Parameter Name="StoreName" Value="My" /> 
    <Parameter Name="ProtectionLevel" Value="EncryptAndSign" /> 
    <Parameter Name="AllowedCommonNames" Value="localhost" /> 
</Section> 

Это, однако, не работает в реальном кластере в Azure, который был надежно настроен с использованием сертификата. Вот мой модифицированный Settings.xml, который, как я думал, будет работать, но это не так.

<Section Name="ReplicatorSecurityConfig"> 
    <Parameter Name="CredentialType" Value="X509" /> 
    <Parameter Name="FindType" Value="FindByThumbprint" /> 
    <Parameter Name="FindValue" Value="InsertClusterThumbprintHere" /> 
    <Parameter Name="StoreLocation" Value="LocalMachine" /> 
    <Parameter Name="StoreName" Value="My" /> 
    <Parameter Name="ProtectionLevel" Value="EncryptAndSign" /> 
    <Parameter Name="AllowedCommonNames" Value="testapp1.eastus.cloudapp.azure.com" /> 
</Section> 

Что происходит на реальном кластере в лазури является вторичным застревают в статусе «В Строить» и их роль говорит IdleSecondary вместо нормального ActiveSecondary, что я привык.

Какие настройки следует использовать для AllowedCommonNames? Что именно это делает? Почему он не использует RemoteCommonNames? Я думал, что AllowedCommonNames был deprecated в пользу RemoteCommonNames. Я попытался, даже локально, если я изменяю AllowedCommonNames для RemoteCommonNames, он локально прерывает мою службу.

Любая помощь приветствуется.

ответ

0

Похоже, я решил свою проблему, моя модифицированная конфигурация была в порядке для облака, единственное различие в том, что мне нужно было входить в каждую виртуальную машину под шкалой VM, установленной в кластере, и добавлять открытый ключ сертификата к доверенным так как это был сам сертификат. После этого все стало работать.

+0

Это не похоже на реалистичное решение. Что вы собираетесь делать, когда у вас 100 компьютеров в вашем кластере? Входить в каждый из них один за другим? – Dismissile

+0

Я добавил код при запуске моего сервиса, чтобы проверить сертификат и установить его, если его там не было. –

+0

Вы можете просто использовать развертывание шаблона ARM для автоматической установки сертификатов из keyvault ... – Dismissile

 Смежные вопросы

  • Нет связанных вопросов^_^