如何限制用户对某个资源的访问?
How limit user's access to a certain resource?
假设我有一个网络应用程序。现在把它当作一个黑盒子。我想使用后端系统来限制用户在应用程序上可以 view/do 的内容。
即示例用户只能执行三个功能,高级用户可以执行10个功能并查看更多图片。
最好的方法是什么?
我正在尝试使用 WSO2 Identity Server,但它不提供此功能。所以我想也许我可以将它与 WSO2 API 管理器集成并制作一个 API 来限制用户对特定资源的访问。但我真的找不到是否有可能做到这一点。有人知道吗?
请参考:https://docs.wso2.com/display/IS530/Access+Control+Concepts
1) WSO2IS 可以充当粗粒度访问管理器。您的应用程序将充当细粒度访问管理器。
这意味着角色可以在WSO2IS中定义、管理和分配给用户。从那里分配给一个用户的角色可以作为 clains 提供,带有 WSO2IS 生成的身份令牌并发送到应用程序。
另一方面,该应用程序将管理角色到权限的链接。
然后,根据用户在身份令牌中呈现的角色以及基于应用程序中角色的权限网格,应用程序根据每个请求完成访问控制。
2) 应用程序的访问控制是您必须实现的业务逻辑(或者如果它是 COTS,至少要进行配置)。可以将此逻辑外包给 WSO2IS 作为属性策略(使用工作流)。
请看:https://docs.wso2.com/display/IS530/XACML+Architecture
杰夫
假设我有一个网络应用程序。现在把它当作一个黑盒子。我想使用后端系统来限制用户在应用程序上可以 view/do 的内容。
即示例用户只能执行三个功能,高级用户可以执行10个功能并查看更多图片。 最好的方法是什么?
我正在尝试使用 WSO2 Identity Server,但它不提供此功能。所以我想也许我可以将它与 WSO2 API 管理器集成并制作一个 API 来限制用户对特定资源的访问。但我真的找不到是否有可能做到这一点。有人知道吗?
请参考:https://docs.wso2.com/display/IS530/Access+Control+Concepts
1) WSO2IS 可以充当粗粒度访问管理器。您的应用程序将充当细粒度访问管理器。
这意味着角色可以在WSO2IS中定义、管理和分配给用户。从那里分配给一个用户的角色可以作为 clains 提供,带有 WSO2IS 生成的身份令牌并发送到应用程序。
另一方面,该应用程序将管理角色到权限的链接。
然后,根据用户在身份令牌中呈现的角色以及基于应用程序中角色的权限网格,应用程序根据每个请求完成访问控制。
2) 应用程序的访问控制是您必须实现的业务逻辑(或者如果它是 COTS,至少要进行配置)。可以将此逻辑外包给 WSO2IS 作为属性策略(使用工作流)。
请看:https://docs.wso2.com/display/IS530/XACML+Architecture
杰夫