【问题标题】:Creating Certificate from base64 encoded string failing in Azure Function在 Azure 函数中从 base64 编码的字符串创建证书失败
【发布时间】:2022-01-24 20:11:48
【问题描述】:

我正在尝试从 base64 编码的字符串创建 X509Certificate2。我已将此代码添加到示例 Azure 函数中。 代码在本地有效,我可以从 bas364 编码字符串创建证书对象,但是在发布到 Azure 时出现异常
Internal.Cryptography.CryptoThrowHelper+WindowsCryptographicException at Internal.Cryptography.Pal.CertificatePal.FilterPFXStore 关注https://github.com/dotnet/runtime/issues/30658 我将应用服务计划保留为“(P1v2:1)”,未共享。

【问题讨论】:

    标签: azure azure-functions x509certificate x509certificate2 azure-app-service-plans


    【解决方案1】:

    Use WEBSITE_LOAD_CERTIFICATES 应用程序设置在您的 azure 函数中指定的证书可访问 Windows 证书存储中的 Windows 托管应用程序,在 Current_User\Your_user

    在您的代码中,通过证书指纹访问证书。赞certificateThumbprint = "<your certificate thumbprint>";

    注意:应用服务将证书路径注入 Windows 容器。比如变量WEBSITE_PRIVATE_CERTS_PATHWEBSITE_INTERMEDIATE_CERTS_PATHWEBSITE_PUBLIC_CERTS_PATHWEBSITE_ROOT_CERTS_PATH。确保您必须使用环境变量引用证书路径,而不是对证书路径进行硬编码。

    如果仍然存在,您可以在应用中添加 WEBSITE_LOAD_USER_PROFILE=1 应用设置。该错误表示特定用户无法访问该证书。它会解决你的问题。

    更多信息请参考here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-17
      • 1970-01-01
      • 2018-07-10
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多