1
在我的WSO2 api商店實例中,我想對其進行一些修改,以便只允許對Admin進行一些操作,而不允許對普通Publiser/Subscriber進行一些操作。例如,如果我想讓其他用戶重新編輯我發佈的API,並且只有管理員角色應該有權修改任何API。爲此,我如何獲得用戶角色?我如何在WSO2 api商店/發行商中獲得特定用戶角色
我試圖從碳模塊獲得角色
/modules/carbon/scripts/user/user.js
User.prototype.getRoles = function() {
return this.um.manager.getRoleListOfUser(this.username);
};
User.prototype.hasRoles = function (roles) {
var i, j, role,
rs = this.getRoles(),
length1 = roles.length,
length2 = rs.length;
L1:
for (i = 0; i < length1; i++) {
//Array.indexOf() fails due to Java String vs JS String difference
role = roles[i];
for (j = 0; j < length2; j++) {
if (role == rs[j]) {
continue L1;
}
}
return false;
}
return true;
};
但沒有成功調用此方法。任何人都有一個想法如何獲得登錄用戶的角色,或者如何檢查登錄用戶是否是管理員?
感謝您的回覆。使用驗證角色進行檢查,但它對所有角色返回{response:true}。 例如,我有一個管理員用戶,他具有管理員角色。當我使用API驗證角色時,它將返回true。我有另一個用戶說'測試',並與角色'內部/每個人',當我驗證這個用戶的'管理員'角色,我得到相同的迴應真正的,即使這個用戶不是管理員 它不驗證當前用戶角色。 – mddiljith
您的確切答覆是什麼,請在此處添加。你有沒有使用credintial先登錄? –
對於管理員用戶 的http://本地主機:9763 /發行商/網站/塊/項目加/ AJAX/add.jag行動= validateRoles&角色=管理 響應 { 「錯誤」:假的, 「反應」 :true} 對於不是管理員響應的另一個用戶是一樣的。 – mddiljith