OAuth 2.0 多对多委托客户端凭证流场景
OAuth 2.0 Many to Many Delegated Client Credential Flow Scenario
场景:
- 控制器进程使用客户端凭据授权获取 short-lived JWT 访问令牌和刷新令牌句柄。
- 控制器生成一个或多个独立的工作节点,并将访问和刷新令牌传递给节点。
- child 节点可能会继续执行较长的 运行ning 任务,其中访问令牌可能会过期并且需要进行刷新。
- 在后台线程中,在到期之前,代理刷新其令牌,重新生成访问令牌。对短期访问令牌和刷新生命周期的需求是重新生成时间 JWT 声明(声明是 time-transitive,例如 uris)。
- child 可以 return 回应 parent。 parent 和 children 都需要维护一个独立的会话验证生命周期而不会使另一个无效。
假设:
假设每个进程都是一个具有独立状态的原子工作单元。访问令牌由控制器验证一次,并与其刷新令牌一起向下传递到 N+1 或 N*N 工作节点。
任何给定的 N 进程都可以使用传递给它的刷新令牌主动重新生成其访问令牌,以延长其生命周期并防止过期。
该进程可能 运行 在通过 HTTPS 和 SSL 的受信任(私有)或不受信任(public)环境中。
有一台授权服务器和一台api资源服务器。
问题:
代理将如何验证访问令牌和刷新令牌的生命周期,以确保任何 child 或 parent 进程可以在其生命周期内刷新其会话,而不会暴露任何安全攻击向量或使池中的另一个代理无效?
相互 TLS 客户端证书身份验证可能是一个不错的选择。它涉及双方通过验证所提供的数字证书来相互验证,从而使双方都确信对方的身份。在技术术语中,它指的是客户端应用程序向服务器验证自己,而服务器也通过验证受信任的证书颁发机构 (CA) 颁发的 public 密钥 certificate/digital 证书向客户端验证自己。
场景:
- 控制器进程使用客户端凭据授权获取 short-lived JWT 访问令牌和刷新令牌句柄。
- 控制器生成一个或多个独立的工作节点,并将访问和刷新令牌传递给节点。
- child 节点可能会继续执行较长的 运行ning 任务,其中访问令牌可能会过期并且需要进行刷新。
- 在后台线程中,在到期之前,代理刷新其令牌,重新生成访问令牌。对短期访问令牌和刷新生命周期的需求是重新生成时间 JWT 声明(声明是 time-transitive,例如 uris)。
- child 可以 return 回应 parent。 parent 和 children 都需要维护一个独立的会话验证生命周期而不会使另一个无效。
假设: 假设每个进程都是一个具有独立状态的原子工作单元。访问令牌由控制器验证一次,并与其刷新令牌一起向下传递到 N+1 或 N*N 工作节点。
任何给定的 N 进程都可以使用传递给它的刷新令牌主动重新生成其访问令牌,以延长其生命周期并防止过期。
该进程可能 运行 在通过 HTTPS 和 SSL 的受信任(私有)或不受信任(public)环境中。
有一台授权服务器和一台api资源服务器。
问题: 代理将如何验证访问令牌和刷新令牌的生命周期,以确保任何 child 或 parent 进程可以在其生命周期内刷新其会话,而不会暴露任何安全攻击向量或使池中的另一个代理无效?
相互 TLS 客户端证书身份验证可能是一个不错的选择。它涉及双方通过验证所提供的数字证书来相互验证,从而使双方都确信对方的身份。在技术术语中,它指的是客户端应用程序向服务器验证自己,而服务器也通过验证受信任的证书颁发机构 (CA) 颁发的 public 密钥 certificate/digital 证书向客户端验证自己。