0

我最近在我的应用程序中使用 CF-UAA 的 OAuth2,当请求到达我的客户端时,我重定向到 CF-UAA 以生成访问令牌,我可以在其中请求不同的范围。我想知道我们如何限制客户可以要求的范围?CF-UAA 的作用域是可扩展的还是固定的?

提前致谢

4

1 回答 1

2

当请求到达我的客户端时,我重定向到 CF-UAA 以生成访问令牌,我可以在其中请求不同的范围。我想知道我们如何限制客户可以要求的范围?

当您创建 UAA 客户端时,您将告诉它该特定客户端应该能够使用的范围。如果您给客户端范围“foo”和“bar”,这就是客户端可以请求的全部内容。它无法请求“baz”,因为它不在 UAA 的允许范围列表中。

由管理员或创建 UAA 客户端的任何人来设置适当的范围列表。如果您不信任该个人,那么首先不应允许他们创建客户端。通常,受信任的个人将是创建客户的人。

CF-UAA 的作用域是可扩展的还是固定的?

范围只是字符串。这些字符串的含义由资源服务器应用。与 UAA 本身等已建立的服务交互或与 CF 交互有固定的范围集。如果您正在创建一个受 Oauth2(资源服务器)保护的应用程序,那么您有责任规定哪些范围可用以及它们授予哪些权限。

例如,云控制器(资源服务器)识别“cloud_controller.admin”、“cloud_controller.read”和“cloud_controller.write”。如果您将这些范围中的一个或多个分配给客户端,它可以获取它们并使用它们在云控制器上执行各种操作。如果您尝试使用范围“cloud_controller.god”,则不会发生任何事情,因为 Cloud Controller 无法识别该范围并将权限分配给该范围。

希望有帮助!

于 2018-12-11T20:27:48.010 回答