2014-02-18 306 views
0

我正在使用WSO2 Identity Server版本4.6.0。PDP訪問權限限制

我試着去了解如何WSO2 IS可以爲了一個PEP發送請求到PDP沒有在WSO2給人以身份驗證的用戶太多的權級部署是正確的做法。

事實上,我已經低於該線程許可「管理」的幫助下發現必須設置給用戶,以便它可以調用PDP:

Permissions to set in order enable acess to XACML PDP

我有試圖刪除父權限「管理」的某些子權限,但每次對PDP的調用都返回「拒絕訪問」。

我的問題:

的許可「管理」給太多的訪問用戶只需撥打PDP。

我的問題:

有一種方法來避免這個問題?

回答

1

是的,我也同意你的看法。但是要更改此權限,可能需要修改WSO2IS的jar文件。因爲它已經在jar文件的service.xml文件中定義了,它暴露了這個EntitlementService。請檢查here。但是我們可以通過修改這個值來配置新的權限,比如說... /permission/admin/manage/add/service即將配置。

如何修改jar文件。

  1. 找到授權jar文件並將其打開。

文件輥wso2is-4.5.0 /存儲庫/組件/插件/ org.wso2.carbon.identity.entitlement_4.2.0.jar

  1. 找到service.xml文件在META-INF裏面並打開它。

  2. 然後修改EntitlementService配置下的值。

  3. 重新啓動服務器。

像這樣,您可以修改任何預定義值的權限。您還可以通過從註冊表瀏覽器添加新資源來向上述權限樹添加新權限。如果您使用註冊表瀏覽器瀏覽到/_system/governance/permission/admin/manage,則可以使用name屬性定義新集合。然後它會顯示在權限樹中。 我想這會幫助你。

+0

非常感謝您的回答。我的另一個想法是通過自定義的tomcat閥門使用模擬(使用專門的技術用戶)。此閥門將管理由授權服務返回的http認證標頭和關聯的會話cookie,以便將認證隱藏到調用者。 – righettod

+1

是的..這將工作..你可以使用會話cookie進行後續通信。請從這裏找到用於調用授權服務的java代碼..我想這對您會有幫助https://svn.wso2.org/repos/wso2/people/asela/xacml/pep/4.2.X/ – Asela

+0

謝謝非常適合你的幫助:) – righettod