温馨提示:本文翻译自stackoverflow.com,查看原文请点击:其他 - Adding new roles to WSO2 API-M with login & subscribe permissions does not allow user to login to su
roles wso2 wso2-am wso2carbon scopes

其他 - 向具有登录和订阅权限的WSO2 API-M添加新角色不允许用户登录到su

发布于 2020-04-18 10:37:27

我正在使用WSO2 API-M v3.0.0,并且创建了一个具有登录和订阅权限(与“内部/订户”角色相同的权限)的新角色。但是,由于具有拒绝访问权限,处于该新角色的用户无法登录到订阅者门户。我看到的唯一解决方法是将这些用户添加到新角色和内部/订户角色中。

创建任何新角色时,是否还需要进行其他更改?没有使用多租户环境。

查看更多

提问者
Sanjeev Rayaprolu
被浏览
69
Bee 2020-02-04 23:00

从APIM 3.0开始,基于权限的访问控制模型已替换为基于角色+基于权限的模型。因此,默认情况下,您的用户需要具有Internal/subscriber访问开发人员门户角色。

这就是它的工作方式。要访问开发人员门户,用户应该能够获得具有apim:api_subscribe范围的访问令牌为此,用户需要具有该Internal/subscriber角色。此映射是/_system/config/apimgt/applicationdata/tenant-conf.json在注册表中的文件中配置的。因此,您必须将新角色添加到此文件中。

从APIM 3.1开始,将有一个UI来配置它,这将使它比我们现在拥有的更加容易。

来自docs [1]。

在WSO2 API Manager 3.0.0中,开发人员门户和Publisher Web应用程序UI由API-M REST API填充,访问UI中不同组件的所有身份验证和授权仅取决于/ _system / config中定义的作用域角色映射。 /apimgt/applicationdata/tenant-conf.json,可以通过管理控制台从“资源”>“浏览”进行访问。

默认情况下,作用域-角色映射包含内部/创建者,内部/发布者,内部/订阅者作为默认角色。如果使用API​​创建者,API发布者,管理员和API订户权限定义了自定义角色,则必须在tenant-conf.json中的相关范围内配置这些角色。

[1] https://apim.docs.wso2.com/zh_CN/latest/Administer/ProductAdministration/ManagingUsersAndRoles/managing-user-roles/