wso2 - WSO2 身份服务器 - 根据用户角色限制服务提供商的入站身份验证
问题描述
我在 wso2 IS 中创建了一个租户“A”,并在其中添加了我的 ldap 用户存储。在租户“A”中,我配置了一个使用 oauth2 作为入站身份验证的“测试”服务提供商。到目前为止,我已成功使用 oauth2 服务提供者配置对商店中的所有用户进行身份验证。
但是,如果用户没有特定角色,我找不到任何配置来限制用户对服务提供商“A”进行身份验证。
大约五年前有人问过这个问题,但当时不支持,我想知道如何在 WSO2 Identity Server 5.7.4 中完成此操作
解决方案
选项1:
您可以使用自适应脚本并根据角色限制身份验证。请参阅此文档以了解如何为服务提供者配置基于角色的自适应脚本A
https://docs.wso2.com/display/IS570/Configuring+Role-Based+Adaptive+Authentication
选项2:
使用 XACML 脚本来控制基于角色的身份验证。请参阅此文档以了解 XAML。https://docs.wso2.com/display/IS570/Working+with+XACML。
您可以参考此文档以了解如何编写 XACML 策略https://docs.wso2.com/display/IS570/Writing+XACML3+Policies+in+WSO2+Identity+Server。在管理控制台中,您可以找到一个示例 XACML 脚本authn_role_based_policy_template
。根据您的服务提供者名称和角色修改该脚本。然后发布它。您也可以使用此文档。https://docs.wso2.com/display/IS570/Configuring+Access+Control+Policy+for+a+Service+Provider
推荐阅读
- vue.js - 删除未使用的 Vuetify CSS
- python - 检查字典中值的增量并将其保存到 json
- javascript - 上传服务器时如何修改js代码进行base64图片转换?
- terraform - 输出 terraform 创建的基础设施信息
- css - CSS 自动调整网格高度
- python - 从另一个笔记本运行 Jupyter Notebook?
- javascript - 是否有 ESLint 规则来确保对象属性的安全访问?
- signalr - 如何从 Postman WebSocket 调用 SignalR Core 集线器方法
- typescript - 是否可以在不显式为其键设置类型的情况下强制执行对象值的类型?
- python - 熊猫如何将 groupby 与 loc 一起使用