博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
identity server4 证书
阅读量:5232 次
发布时间:2019-06-14

本文共 1487 字,大约阅读时间需要 4 分钟。

 我们需要对token进行签名, 这意味着identity server需要一对public和private key. 幸运的是, 我们可以告诉identity server在程序的运行时候对这项工作进行设定: AddDeveloperSigningCredential(), 它默认会存到硬盘上的, 所以每次重启服务不会破坏开发时的数据同步. 这个方法只适合用于identity server4在单个机器运行, 如果是production farm你得使用AddSigningCredential()这个方法.

 

使用正经的证书:

证书可以通过几种渠道获得, 可以购买, 可以使用IIS生成, 也可以使用Openssl这样的工具生成证书. 我就使用openssl吧.

去openssl的windows官网: https://slproweb.com/products/Win32OpenSSL.html

下载 1.1.0版: https://slproweb.com/download/Win64OpenSSL-1_1_0f.exe

安装后, 打开命令行.

openssl req -newkey rsa:2014 -nodes -keyout socialnetwork.key -x509 -days 365 -out socialnetwork.cer

具体的信息就不管了. 这个证书的有效期是365天, 命令参数里面设定的.

这是生成的文件:

0?wx_fmt=png

一个证书和一个key, 然后我们需要给他们俩封装成一个文件, 以便identity server可以使用它们去正确的签名tokens. 这就需要使用另一个命令:

openssl pkcs12 -export -in socialnetwork.cer -inkey socialnetwork.key -out socialnetwork.pfx

0?wx_fmt=png

这里发生了错误...那就使用管理员打开命令行:

0?wx_fmt=png

输入密码和确认密码后, 没问题了.

0?wx_fmt=png

pfx就是我们需要的文件.

然后修改一个Startup的ConfigureServices:

 

 public void ConfigureServices(IServiceCollection services){            services.AddIdentityServer()                           // .AddDeveloperSigningCredential()                           .AddSigningCredential(new X509Certificate2(@"D:\Projects\test\socialnetwork.pfx", "password"))                .AddTestUsers(InMemoryConfiguration.Users().ToList())                .AddInMemoryClients(InMemoryConfiguration.Clients())                .AddInMemoryApiResources(InMemoryConfiguration.ApiResources());} http://www.cnblogs.com/cgzl/p/7780559.html

转载于:https://www.cnblogs.com/leon-ytparty/p/9604385.html

你可能感兴趣的文章
WSDL 详解
查看>>
[转]ASP数组全集,多维数组和一维数组
查看>>
C# winform DataGridView 常见属性
查看>>
逻辑运算和while循环.
查看>>
Nhiberate (一)
查看>>
c#后台计算2个日期之间的天数差
查看>>
安卓开发中遇到的小问题
查看>>
ARTS打卡第3周
查看>>
linux后台运行和关闭SSH运行,查看后台任务
查看>>
cookies相关概念
查看>>
CAN总线波形中ACK位电平为什么会偏高?
查看>>
MyBatis课程2
查看>>
桥接模式-Bridge(Java实现)
查看>>
svn客户端清空账号信息的两种方法
查看>>
springboot添加servlet的两种方法
查看>>
java的Array和List相互转换
查看>>
layui父页面执行子页面方法
查看>>
如何破解域管理员密码
查看>>
Windows Server 2008 R2忘记管理员密码后的解决方法
查看>>
IE11兼容IE8的设置
查看>>