在 Azure 中使用身份服务器签名证书

Using an Identity Server signing certificate in Azure

在IdentityServer示例代码(startup.cs)中,我们可以看到如何使用证书:

var certFile = env.ApplicationBasePath + "\idsrv3test.pfx";

var signingCertificate = new X509Certificate2(certFile, "idsrv3test");

如果我将 STS 作为 Web 应用服务部署到 Azure,我该如何在生产环境中执行此操作?

为了安全起见,我知道我不能将 pfx 文件添加到解决方案中。

将证书上传到门户:

https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-configure-ssl-certificate#step-2-upload-and-bind-the-custom-ssl-certificate

现在您可以通过以下方式获取证书:

        var certStore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
        certStore.Open(OpenFlags.ReadOnly);

        var certCollection = certStore.Certificates.Find(
            X509FindType.FindByThumbprint, certificateThumbprint, false);
        var signingCertificate = certCollection[0];

        certStore.Close();