簡體   English   中英

在WSO2 API管理器的發布者門戶或API發布者中獲取用戶角色

[英]Get user roles in Publisher portal or API Publisher of WSO2 API Manager

我已經完成了WSO2 API Manager 2.5.0的安裝。

我正在通過創建新的子主題並編輯.jag文件來自定義Publisher門戶。 一切正常,直到這里。

我想根據用戶角色顯示元素。 我的第一個問題是:我可以使用jag文件獲取發布者門戶中登錄用戶的角色嗎?

我找不到路,所以我想了一個解決方法:向WSO2 API Manager-Publisher的RESTful API發送請求。 問題是我找不到(在文檔上)返回用戶角色的方法。

我的第二個問題是:有某種方法可以返回用戶的角色?

我知道使用Publisher APIS的解決方案,但是不推薦使用它們,並且無論如何我都對其進行了測試,即使用戶未分配角色,它也始終返回true。

如果需要,請詢問我更多信息。 提前致謝。

一種可能的解決方案是調用從APIUtil類公開的java方法。 從該util類中查找的方法將是具有以下簽名的getListOfRoles方法。

public static String[] getListOfRoles(String username) throws APIManagementException;

或者,您可以使用下面的方法,該方法不引發任何錯誤,而是在出現錯誤情況時返回一個空數組。

public static String[] getListOfRolesQuietly(String username);

因此,要在您的Jaggery文件中使用此方法,可以使用以下方法使用此方法

var roleList = Packages.org.wso2.carbon.apimgt.impl.utils.APIUtil.getListOfRoles(userName);

上面的代碼應該在Jaggery文件中返回一個由角色組成的字符串數組,您可以使用該數組繼續進行下一步。 如果檢查在Store或Publisher應用程序中找到的其他Jaggery文件,則上述方法是將Java類導入到Jaggery文件中並使用它的方式。

APIUtil類在以下位置可用: https : //github.com/wso2/carbon-apimgt/blob/1.2.5/components/apimgt/org.wso2.carbon.apimgt.impl/src/main/java/org/ WSO2 /碳/ apimgt / IMPL / utils的/ APIUtil.java#L2420

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM