摘要: IdentityServer依赖于几个加密机制来完成它的工作。 33.1 令牌签名和验证 IdentityServer需要非对称密钥对来签署和验证JWT。此密钥对可以是证书/私钥组合或原始RSA密钥。无论如何,它必须支持带有SHA256的RSA。 加载签名密钥和相应的验证部分是通过实现 和`IVal 阅读全文
posted @ 2019-04-27 21:27 ThinkJay 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 日志记录是更低级别的“printf”样式 事件代表有关IdentityServer中某些操作的更高级别信息。事件是结构化数据,包括事件ID,成功/失败信息,类别和详细信息。这使得查询和分析它们变得容易,并提取可用于进一步处理的有用信息。 活动适用于 "ELK" , "Seq" 或 "Splunk" 阅读全文
posted @ 2019-04-27 21:25 ThinkJay 阅读(940) 评论(0) 推荐(0) 编辑
摘要: IdentityServer使用ASP.NET Core提供的标准日志记录工具。Microsoft "文档" 有一个很好的介绍和内置日志记录提供程序的描述。 我们大致遵循Microsoft使用日志级别的指导原则: 仅供开发人员解决问题的信息。这些消息可能包含敏感的应用程序数据(如令牌),不应在生产环 阅读全文
posted @ 2019-04-27 21:24 ThinkJay 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 您的身份服务器只是一个标准的ASP.NET Core应用程序,包括IdentityServer中间件。首先阅读有关发布和部署的官方Microsoft "文档" (尤其是有关负载平衡器和代理的 "部分" )。 30.1 典型架构 通常,您将设计IdentityServer部署以实现高可用性: Iden 阅读全文
posted @ 2019-04-27 21:22 ThinkJay 阅读(500) 评论(0) 推荐(1) 编辑
摘要: IdentityServer 默认以 "JWT" (JSON Web令牌)格式发出访问令牌。 今天的每个相关平台都支持验证JWT令牌, "这里" 可以找到一个很好的JWT库列表。热门库例如: ASP.NET Core的 "JWT bearer authentication handler" Kata 阅读全文
posted @ 2019-04-27 21:20 ThinkJay 阅读(546) 评论(0) 推荐(1) 编辑
摘要: 在授权请求期间,如果IdentityServer需要用户同意,则浏览器将被重定向到同意页面。 同意用于允许最终用户授予客户端对资源(身份或API)的访问权限。这通常仅对第三方客户端是必需的,并且可以在客户端设置上按客户端启用/禁用。 28.1 确认页 为了让用户同意,托管应用程序必须提供同意页面。该 阅读全文
posted @ 2019-04-27 21:19 ThinkJay 阅读(463) 评论(0) 推荐(0) 编辑
摘要: 通用架构是所谓的联合网关。在此方法中,IdentityServer充当一个或多个外部身份提供商的网关。 该架构具有以下优点: 您的应用程序只需要了解一个令牌服务(网关),并且屏蔽了有关连接到外部提供程序的所有详细信息。这也意味着您可以添加或更改这些外部提供程序,而无需更新您的应用程序。 您控制网关( 阅读全文
posted @ 2019-04-27 17:03 ThinkJay 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 联合注销是指用户使用外部身份提供程序登录IdentityServer,然后用户通过IdentityServer未知的工作流程注销该外部身份提供程序的情况。当用户注销时,对IdentityServer进行通知将非常有用,这样它就可以将用户从IdentityServer和使用IdentityServer 阅读全文
posted @ 2019-04-27 16:14 ThinkJay 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 当用户 "注销" IdentityServer并且他们使用 "外部身份提供程序" 登录时,可能会将其重定向到注销外部提供程序。并非所有外部提供商都支持注销,因为它取决于它们支持的协议和功能。 要检测是否必须将用户重定向到外部身份提供程序以进行注销通常是通过使用 在IdentityServer中发布到 阅读全文
posted @ 2019-04-27 16:09 ThinkJay 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 注销IdentityServer就像删除身份验证cookie一样简单,但是为了完成联合注销,我们必须考虑将用户从客户端应用程序(甚至可能是上游身份提供者)中签名。 24.1 删除认证 要删除身份验证cookie,只需使用 扩展方法 即可。您需要传递使用的方案( 除非您已更改,否则提供此方案): 或者 阅读全文
posted @ 2019-04-26 23:23 ThinkJay 阅读(1036) 评论(0) 推荐(0) 编辑