Keycloak keydape-OpenID连接

Keycloak keydape-OpenID连接,keycloak,openid-connect,Keycloak,Openid Connect,我是OpenID Connect和KeyClope的新手 我有两个问题: 在这种情况下,对于我的应用程序的每个API调用,我的应用程序都必须使用openid连接提供程序(OP)-keydape进行验证吗?这可能会给OP带来大量负载。或者,我的应用程序是否必须依赖于用户首次尝试连接到我的应用程序时获得的令牌的到期时间 如果我的应用程序(RP)依赖于令牌到期,那么OP上的用户撤销将如何工作?我的应用程序是否仅在令牌到期后才知道撤销,或者OP是否在用户被撤销时通知注册的应用程序?否,您的应用程序可以使

我是OpenID Connect和KeyClope的新手

我有两个问题: 在这种情况下,对于我的应用程序的每个API调用,我的应用程序都必须使用openid连接提供程序(OP)-keydape进行验证吗?这可能会给OP带来大量负载。或者,我的应用程序是否必须依赖于用户首次尝试连接到我的应用程序时获得的令牌的到期时间


如果我的应用程序(RP)依赖于令牌到期,那么OP上的用户撤销将如何工作?我的应用程序是否仅在令牌到期后才知道撤销,或者OP是否在用户被撤销时通知注册的应用程序?

否,您的应用程序可以使用KeyClope通过其API公开的颁发领域的公钥脱机验证令牌

您可以在文档中找到:


在这种情况下,您必须依赖令牌到期。通常,当到期时间很短时,这应该不是什么大问题。当您的应用程序在本地验证令牌时,我目前不知道有任何解决方案可以得到有关撤销的通知。如果短的令牌过期时间不足以缓解此问题,则必须为每个请求调用令牌内省端点。

针对OP的验证取决于您的确切需求和使用的令牌类型。若您想要与访问令牌相关的最终用户信息,那个么必须调用用户信息端点。仅当访问令牌有效时才能执行此操作。内省端点只能用于验证访问令牌

但是,如果您使用的是JWT访问令牌,则可以依赖JWT验证,而无需调用任何其他API。当然,您需要令牌签名证书数据。这可以是一次性请求,因为证书滚动不经常发生

关于用户撤销,除了使用标准API(令牌内省、userinfo端点)之外,没有标准的方法来检测这一点。即使JWT验证也不允许您验证这种情况。但是,较短的令牌生存时间(例如:-30分钟)和使用刷新令牌可以让您检测到这种情况。如果相关用户被撤销,刷新令牌请求必须失败