我们有一个场景,我想用 Wilma PEP 代理保护服务 X。服务 X 在 Keyrock 中注册。Wilma PEP 代理包含在 Keyrock 中为服务 X 生成的 PEP 凭据。应用程序 Y 可以使用为该特定服务生成的正确 OAuth2 凭据(来自服务 X 的 client_id 和 client_secret)访问服务 X。没关系。但是有一个问题:应用程序 Z 也可以使用不同的 OAuth2 凭据(不是服务 X 凭据)访问服务 X!
如果这是可能的,为什么我们在 Keyrock 中生成具有特定 OAuth2 凭据的应用程序,如果它们不控制任何东西?!它没有任何意义!
这是一个很大的安全问题,因为一个入侵者可以在 Keyrock 中注册一些应用程序,并且使用为这个特定应用程序生成的令牌(使用它自己的 OAuth2 凭据),这个入侵者可以访问在这个 Keyrock 实例中注册的所有应用程序!