2013-05-09 98 views
1

我想下面的步驟我通過WLS控制檯做自動化:無法看到WebService的角色在WebLogic控制檯

一個。在Weblogic控制檯的主頁中,單擊左側的部署鏈接表單,找到「網關管理服務」

b。展開「網關管理服務」並點擊「GatewayManagementService」(這是一個web服務模塊)

c。點擊安全選項卡,然後點擊角色選項卡。 d)。在「Web服務模塊作用域角色」部分單擊「新建」。

e。在新窗口中,將名稱設置爲「Special WS Role Enforcement」,然後單擊OK。

f。點擊鏈接「Special WS Role Enforcement」。 g。

g。在新頁面中,點擊「添加條件」並在新頁面中選擇「用戶」,然後點擊下一步。 h。

h。在新的頁面中,在「用戶論點名稱」中輸入「CSR.gatewaywsuser」,然後點擊「添加」

i。點擊完成。 j)。

j。保存。

我有test.py爲:

connect('weblogic', 'welcome123', 'localhost:7001'); 
realm=cmo.getSecurityConfiguration().getDefaultRealm(); 
xacmlatz = realm.lookupAuthorizer('XACMLAuthorizer'); 
xacmlrm = realm.lookupRoleMapper('XACMLRoleMapper'); 
resourceId = 'type=<webservices>, application=gateway-management-service, contextPath=gwy_management_service, webService=GatewayOidManagerService' 
xacmlatz.createPolicy(resourceId, "Rol(Special WS Role Enforcement)"); 
xacmlrm.createRole(resourceId, "Special WS Role Enforcement ", "Usr(CSR.obigatewaywsuser)") 

我運行此腳本,如:

$MW_HOME/oracle_common/common/bin/wlst.sh test.py 

我的問題:在執行上面的腳本後,當我去到控制檯 - >部署 - >網關管理服務 - >網關管理服務 - >安全標籤 - >角色子標籤,我看不到角色。如果嘗試再次運行該腳本,它將失敗並出現weblogic.management.utils.AlreadyExistsException:[安全性:090320]未能創建角色

我在做什麼錯?

我試過在運行test.py後彈出託管服務器和管理服務器,看看是否有幫助,但沒有成功。

回答

1

您可能實際上正在做的一切正確。我們遇到同樣的問題(從wlst腳本設置時,角色沒有在控制檯中顯示)。我認爲這是一個Weblogic錯誤。

也就是說,您仍然有一種方法來驗證角色已被正確設置。

在WebLogic控制檯去:

Security Realms -> myrealm -> Migration -> Export 

並出口到您選擇的目錄。然後您可以打開XACMLAuthorizer.dat和XACMLRoleMapper.dat並查看您的角色是否存在。你會想用xml編輯器或瀏覽器打開它,因爲它很難閱讀。