我正在尝试通过WLS控制台自动执行以下步骤:
一个。在Weblogic控制台的主页中,单击左侧的Deployments链接,找到“gateway-management-service”
湾展开,“网关管理服务”,然后单击“GatewayManagementService”(这是一个Web服务模块)
℃。单击“安全”选项卡,然后单击“角色”选项卡。
d。单击“Web服务模块范围内角色”部分中的“新建”。
即在新窗口中,将名称设置为“特殊WS角色强制”,然后单击“确定”。
F。单击“特殊WS角色执行”链接。
克。在新页面中,单击“添加条件”并在新页面中选择“用户”,然后单击“下一步”。
小时。在新页面中,在“用户参数名称”中输入“CSR.gatewaywsuser”,然后单击“添加”
我。单击Finish。
Ĵ。保存。
我的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
我的问题:执行上述脚本后,当我转到控制台时 - &gt;部署 - &gt;网关管理服务 - &gt; GatewayManagementService - &gt;安全选项卡 - &gt;角色子选项卡,我没有看到角色。如果尝试再次运行脚本,则会因weblogic.management.utils.AlreadyExistsException而失败:[安全:090320]无法创建角色
我做错了什么?
我在运行test.py之后尝试弹出托管服务器和管理服务器以查看是否有帮助,但没有成功。
答案 0 :(得分:1)
你可能实际上正确地做了一切。我们遇到了同样的问题(从wlst脚本设置时,控制台中没有显示角色)。我认为这是一个Weblogic错误。
尽管如此,您仍然有一种方法可以验证角色是否已正确设置。
在Weblogic控制台中,转到:
Security Realms -> myrealm -> Migration -> Export
并导出到您选择的目录。然后,您可以打开XACMLAuthorizer.dat和XACMLRoleMapper.dat,看看您的角色是否存在。您需要使用xml编辑器或浏览器打开它,因为它很难阅读。