阅读蔚蓝ServiceConfiguration文件的证书部分使用C#蔚蓝、证书、部分、文件

2023-09-04 08:59:16 作者:网污

我们能读到withi ServiceConfiguration.cscfg文件证书部分使用C#?有方法RoleEnvironment类里面读ConfigurationSettings,但不能证明部分。

 < XML版本=1.0编码=UTF-8&GT?;
&所述; ServiceConfiguration服务名=WindowsAzureProject7的xmlns =htt​​p://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfigurationosFamily =1OSVERSION =*>
  <角色名称=MvcWebRole1>
    &所述;实例计数=1/>
       <认证>
      <证书名称=Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption指纹=625FBBB3B7A25C4B9D1C49D1CB1E3AE196C1A083thumbprintAlgorithm =SHA1/>
    < /证书>
  < /角色>
< / ServiceConfiguration>
 

解决方案

是的,有没有API来读取证书的详细信息,据我知道,但是你可以做的就是创建一个配置设置,并添加您的证书的具体细节,直接从相同的API读取它。这里有个技巧,我用过去的:

 < ServiceConfiguration服务名=RW的xmlns =htt​​p://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration>
 <角色名称=RR>
  &所述;实例计数=1/>
   < ConfigurationSettings>
    <设定名=AppFolder值=RailsApp/>
    <设定名=CertificateThumb值=*************/>
   < / ConfigurationSettings>
   <认证>
    <证书名称=Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption指纹=**​​*****thumbprintAlgorithm =SHA1/>
   < /证书>
 < /角色>
< / ServiceConfiguration>
 

现在,在我的角色特定的code,我可以叫RoleEnvironment.GetConfigurationSettingValue拿到证书拇指如下:

 字符串certThumb = RoleEnvironment.GetConfigurationSettingValue(CertificateThumb);
 
风险警示 假CE证书,你中招了吗

Can we read certificate section withi ServiceConfiguration.cscfg file using c#? There is method inside RoleEnvironment class to read ConfigurationSettings, but not certificate section.

<?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>

解决方案

Yes, there is no API to read certificate details as far as i know, however what you can do is create a configuration setting and add your certificate specific details and read it directly from the same API. Here is the trick, I used in past:

<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>

Now, in my role specific code, I can call RoleEnvironment.GetConfigurationSettingValue to get the certificate thumb as below:

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