- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为了为现有应用程序和后端服务开发开放 ID 连接模型,我很困惑选择离线还是在线 JSON token 验证 ID token 和访问 token 。
我的开放 ID 提供者:KeyCloak
我的问题是关于 token 验证的想法,所以我不讨论实现细节。
根据 OIDC(开放 ID 连接),
ID token will be issued to the service that is requesting resource once authenticated
最佳答案
在线验证的唯一优势是用户权限可能同时被撤销。通过离线验证,您可以证明 token 是由您的 Keycloak 发行的,并且没有人篡改它。每个请求的在线验证都太多了。
例如,在前端单击可能会导致许多 api 调用,并且在同一秒内向 Keycloak 创建 12 个 rest 请求没有任何好处。建议是保持 token 生命周期更短。
你可以在短时间内实现 token 缓存和在线验证 token ,但如果你能在 Keycloak 中降低 token 生命周期,那有什么意义。
因此,总而言之,请在超时持续时间(例如 5 分钟 - 应根据用例进行配置)内离线验证 token ,并在该期限之后发出新 token 。
关于oauth-2.0 - 在 Open ID 连接中解释离线 token 验证与在线 token 验证?优势、局限性和权衡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59713430/
我想做如下的事情: class Foo(object): def __init__(self): self.member = 10 pass def facto
我是一名优秀的程序员,十分优秀!