gpt4 book ai didi

asp.net - 附加客户端证书时出现 Forbidden 403 错误

转载 作者:太空宇宙 更新时间:2023-11-03 14:20:19 24 4
gpt4 key购买 nike

我正在消费一些服务并且消费服务提供者已经给了证书。

所以我在 LocalMachine 上安装了证书,并通过以下代码将证书附加到我发布的 Web 请求中,以获取 Web 服务的响应。

X509Certificate cert = null;
string ResponseXml = string.Empty;

// Represents an X.509 store, which is a physical store
// where certificates are persisted and managed
X509Store certStore = new X509Store(StoreName.My, StoreLocation.LocalMachine);

certStore.Open(OpenFlags.ReadOnly);
X509Certificate2Collection results =
certStore.Certificates.Find(X509FindType.FindBySubjectDistinguishedName,
Constants.CertificateName, false);
certStore.Close();

if (results != null && results.Count > 0)
cert = results[0];
else
{
ErrorMessage = "Certificate not found";
return ErrorMessage;
}
webClient.TransportSettings.ClientCertificates.Add(cert);

当我使用 ASP.net Cassini(ASP.NET 开发服务器)运行代码时,这非常有效。

但是当我在 IIS 7.0 中托管此代码时,它会返回 forbidden 403 错误作为响应。

请提出建议。

最佳答案

你也许应该试试这个:

winhttpcertcfg -g -c LOCAL_MACHINE\MY -s (MyCertificate) -a ASPNET

事实证明,安装证书的用户是自动授予对私钥的访问权限,我想在你的情况下就是你,所以它在开发环境中工作。当 Web 前端出现时,您不再是用户,ASPNET 才是。

关于asp.net - 附加客户端证书时出现 Forbidden 403 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7993380/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com