Mah*_*pta 8 authentication access-token identityserver4
我使用身份服务器 4 作为身份提供者。
获取成功登录的令牌后,我们将此令牌传递给资源服务器。
我的问题是资源服务器端的身份服务器提供者如何验证提交的令牌?
当我使用 fiddler 观察流量时,我没有看到任何将令牌提交给提供商进行检查的请求。
这意味着资源服务器端的 Identity Server 提供者本身正在验证令牌?
那么为什么我们需要在没有检查权限的情况下提供权限呢?
资源端的身份服务器提供者如何确保它是由有效的令牌提供者发出的?
资源服务器不会通过线路将令牌发送到身份提供者来验证令牌。这会给您的资源服务器带来相当大的开销。
相反,资源服务器会下拉(并可能缓存)位于 的身份提供者发现文档{identityserverUrl}./well-known/openid-configuration。本文档包含允许资源服务器在其自己的上下文中验证令牌的材料。这当然是假设令牌是一个 access_token ( issuer, jwks_uri)
如果您的资源服务器正在使用 JwtBearerAuthentication 中间件或 IdentityServer4.AccessTokenValidation 中间件之类的东西,这些东西将为您完成。
JWT tokens是独立的,并且不需要往返来验证它们在每次使用时仍然有效...只要它们没有过期,只要它们没有被篡改(仅涉及签名),它们就是有效的检查。
您可以设置您的客户端来请求reference tokens(并设置您的 API 来接受它们),并且这些令牌每次使用时都会涉及一个往返。然后您就可以撤销令牌,而 JWT 则无法做到这一点。
| 归档时间: |
|
| 查看次数: |
4761 次 |
| 最近记录: |