草庐IT

certificate-authority

全部标签

c# - BouncyCaSTLe PrivateKey 到 X509Certificate2 PrivateKey

我使用BouncyCaSTLe创建证书varkeypairgen=newRsaKeyPairGenerator();keypairgen.Init(newKeyGenerationParameters(newSecureRandom(newCryptoApiRandomGenerator()),1024));varkeypair=keypairgen.GenerateKeyPair();vargen=newX509V3CertificateGenerator();varCN=newX509Name("CN="+certName);varSN=BigInteger.ProbablePri

c# - ASP.NET Web API 和 OpenID Connect : how to get Access Token from Authorization Code

我尝试让OpenIDConnect运行...我的WebAPI的用户设法获得了OpenIDConnect提供商的授权代码。我应该如何将此代码传递给我的ASP.NETWebAPI?我必须如何配置OWIN中间件才能使用授权码获取访问token?更新:SPA使用AJAX与我的Web服务(ASP.NETWebAPI)进行通信。在我的网络服务中使用OWIN中间件。我将OpenIDConnect设置为身份验证机制。当第一次调用Web服务时,它成功地将用户重定向到OpenIDConnect提供程序的登录页面。结果,用户可以登录并获得授权码。据我所知,此代码现在可以(通过我的网络服务)用于访问token

c# - 使用 X509Certificate2 (JwtSecurityTokenHandler) 保护 JWT

我设法使JwtSecurityTokenHandler与X509Certificate2一起工作。我能够使用X509Certificate2对象对token进行签名。我还能够通过X509Certificate2.RawData属性使用证书的原始数据来验证token。代码如下:classProgram{staticvoidMain(string[]args){X509Storestore=newX509Store("My");store.Open(OpenFlags.ReadOnly);X509Certificate2signingCert=store.Certificates[0];s

c# - Request.Url.GetLeftPart(UriPartial.Authority) 在 https 站点上返回 http

我们使用Request.Url.GetLeftPart(UriPartial.Authority)获取站点的域部分。这满足了我们对http的要求。我们最近将站点更改为https(大约3天前),但这仍然返回http://..url全部改为https显示在浏览器地址栏中。知道为什么会这样吗? 最佳答案 以下示例工作正常并返回带有“https”的字符串:varuri=newUri("https://www.google.com/?q=102njgn24gk24ng2k");varauthority=uri.GetLeftPart(UriP

c# - 登录失败。用户 'NT AUTHORITY\SYSTEM' 登录失败

我创建了一个Windows服务,我的服务依赖于SQLServer服务。首先,SQL启动,然后在启动PC或重新启动PC时启动我的服务。这工作正常,但问题是Windows服务无法读取数据库文件,抛出异常“无法打开用户默认数据库。登录失败。用户‘NTAUTHORITY\SYSTEM’登录失败”,当我尝试读取数据库。如果我启动计算机并登录,则它无法读取数据库,但如果我启动计算机并等待几秒钟,然后登录到窗口服务,它会读取数据库。 最佳答案 我打赌你的连接字符串中有这个:IntegratedSecurity=SSPI或类似的东西。现在运行该服务

c# - 当 SMTP 服务器具有有效证书时获取 "The remote certificate is invalid according to the validation procedure"

这似乎是一个常见错误,但虽然我找到了解决方法(见下文),但我无法确定我首先遇到它的原因。我正在将SMTP功能写入我们的应用程序,并且我正在尝试将SSL功能添加到我们已有的工作SMTP中。我正在使用我们公司的MSExchange服务器进行测试,特别是在该服务器上启用的网络邮件选项。通过不验证我的连接并匿名发送,我可以通过我的代码在内部发送电子邮件,但是由于我们公司的政策,这些电子邮件不会转发到外部电子邮件地址。除此之外,我正在为我们的客户编程,他们并不都允许开放中继和/或匿名连接。我相信Exchange服务器正在使用显式SSL/TLS。我已经尝试在端口25上通过telnet连接到服务器的

c# - ASP.NET MVC : Problem setting the Authorize attribute Role from a variable, 需要常量

我在设置变量的授权属性角色值时遇到问题。错误消息说它需要一个const变量。当我创建一个const类型变量时,它工作正常,但我试图从Web.Config文件或任何其他允许最终用户设置它的文件加载值。我正在使用集成的Windows身份验证,因为这是一个仅限Intranet的应用程序。有没有办法从Controller检查用户角色?我将在if语句中使用它而不是属性来进行身份验证。[Authorize(Roles=Config.GMPUser)]publicActionResultIndex(){returnView();} 最佳答案 我有

c# - 如何从客户端请求中获取 X509Certificate

我有一个使用证书保护的网络服务。现在,我想通过查看证书指纹来识别客户端。这意味着我在某处的服务上有一个指纹列表,这些指纹链接到某个用户。实际上,我的第一个问题(有点题外话)是:这是一个好方法还是我还应该引入一些用户名密码构造?第二个问题是:我怎样才能获得客户端用来连接到网络服务的证书,以便我可以在服务端读取指纹。我确实阅读了很多相关内容(例如这篇文章:HowdoIgettheX509Certificatesentfromtheclientinwebservice?)但找不到答案。我没有HTTPContext,所以这不是一个选项。在上面提到的帖子中谈到了Context.Request.C

c# - 如何以编程方式创建有效的自签名 X509Certificate2,而不是从 .NET Core 中的文件加载

我目前做的是使用OpenSSL生成PFX文件。这会导致不必要的依赖,尤其是对于Windows用户。所以我找到了一些关于如何使用BouncyCaSTLe创建自己的证书的示例,但是这个库与.NETCore不兼容(或者我找不到兼容的包)。那么,是否可以仅使用.NET核心创建您自己的自签名X509证书以避免依赖OpenSSL(或任何其他证书生成外部工具)?编辑:有人(编辑?)建议这个SO问题Howtocreateaself-signedcertificateusingC#?提供了一个答案。可悲的是,这与.NETCore无关。接受的答案以ThisimplementationusestheCX50

c# - 加载 X509Certificate 导致异常 CryptographicException "Cannot find the original signer"

我正在尝试实例化一个X509Certificate对象,但我一直遇到相同的CryptographicException,并显示错误消息:"Cannotfindtheoriginalsigner".我尝试了几种加载证书的方法://somedifferentthingsthatIhavetriedvarcert=X509Certificate.CreateFromCertFile(certFileName);varcert2=newX509Certificate(byteArray);varcert3=newX509Certificate(byteArray,secretString);v