0

我们有一个场景,我想用 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 实例中注册的所有应用程序!

4

1 回答 1

1

正如您在PEP 代理文档中看到的那样,级别 1 仅检查身份验证。因此,每个拥有有效令牌(即在 Keyrock 中经过身份验证)的用户都将被重定向到服务器应用程序。如果您还想检查授权,则必须配置具有基本或高级安全授权级别的 AuthZForce 服务器。

另一方面,在令牌验证响应中,您将获得一个字段 application_id,该字段指示您创建令牌的范围。

于 2017-03-30T08:58:19.883 回答