2013-05-09 55 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编辑器或浏览器打开它,因为它很难阅读。