2012-07-02 13 views
6

¿Podemos leer la sección del certificado con el archivo ServiceConfiguration.cscfg usando C#? Hay un método dentro de la clase RoleEnvironment para leer ConfigurationSettings, pero no la sección de certificado.Lea la sección del certificado del archivo de configuración del servicio azure usando C#

<?xml version="1.0" encoding="utf-8"?> 
<ServiceConfiguration serviceName="WindowsAzureProject7" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="1" osVersion="*"> 
    <Role name="MvcWebRole1" > 
    <Instances count="1" /> 
     <Certificates> 
     <Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption" thumbprint="625FBBB3B7A25C4B9D1C49D1CB1E3AE196C1A083" thumbprintAlgorithm="sha1" /> 
    </Certificates> 
    </Role> 
</ServiceConfiguration> 

Respuesta

6

Sí, no hay ninguna API para leer los detalles del certificado Por lo que yo sé, sin embargo lo que puede hacer es crear una opción de configuración y añadir su certificado de detalles específicos y la leyó directamente de la misma API. Aquí está el truco, he utilizado en el pasado:

<ServiceConfiguration serviceName="RW" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration"> 
<Role name="RR"> 
    <Instances count="1" /> 
    <ConfigurationSettings> 
    <Setting name="AppFolder" value="RailsApp" /> 
    <Setting name="CertificateThumb" value="*************" /> 
    </ConfigurationSettings> 
    <Certificates> 
    <Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption" thumbprint="*****************************" thumbprintAlgorithm="sha1" /> 
    </Certificates> 
</Role> 
</ServiceConfiguration> 

Ahora, en mi código específico de papel, puedo llamar RoleEnvironment.GetConfigurationSettingValue para obtener el certificado del pulgar de la siguiente manera:

string certThumb = RoleEnvironment.GetConfigurationSettingValue("CertificateThumb"); 
+0

+1 Pero también necesidad de declarar la configuración en la definición del servicio. –

Cuestiones relacionadas