2016-08-30 1 views
0

WLST를 사용하여 weblogic 12에서 일부 역할 할당을 조정해야합니다. 이 경우 그룹의 모든 구성원에게 역할을 할당하려고합니다. 여기 WLST로 Weblogic 역할을 관리 할 때 그룹 이름의 공백을 처리하는 방법은 무엇입니까?

내가 공간을 탈출의 몇 가지 일반적인 방법을 시도

connect('XXXXXXXXXX', 'XXXXXXXXXXXXX', 't3://XXXXXXXX:XXXXXX') 

cd ('SecurityConfiguration/weblogic/Realms/DecalogRealm/RoleMappers/DefaultRoleMapper') 

print 'Setting condition for role "%s"...' % 'ComplianceSourceReader' , 
cmo.setRoleExpression(None,'ComplianceSourceReader',"Grp('ASSET MANAGER')") 
print 'Done' 

print "post edit report :" 
print "==================" 
print 'Role condition for "ComplianceSourceReader" role = %s' % (cmo.getRoleExpression(None,'ComplianceSourceReader')) 
print 
print "Done." 

(... 나는, 나 알고있다 알고있다) 제공 마법처럼 작동하는 파이썬 스크립트, 그룹 이름에 공백이 포함되지 않는다고 말했다입니다 char (은)는 정책 표현의 그룹 명으로, 아직까지는 성공하고 있지 않습니다. 나는 항상 같은 오류가 발생합니다.

Caused by: weblogic.entitlement.data.EnCreateException: Missing ',' delimiter. for 'Grp("ASSET MANAGER")' at position:11 
     at weblogic.entitlement.engine.EEngine.setRoleEntitlements(EEngine.java:1150) 
     at weblogic.security.providers.authorization.DefaultRoleMapperImpl.setRoleExpression(DefaultRoleMapperImpl.java:328) 
     ... 53 more 

이 문제를 해결할 수있는 방법이 있습니까? 아니면이 그룹 이름을 변경해야합니까?

답변

0

weblogic.entitlement.parser.Parser 클래스를 사용하여 확인할 수 있습니다. WLST 셸 :

wls:/offline> from weblogic.entitlement.parser import Parser 
wls:/offline> groups = ['ASSET MANAGER'] 
wls:/offline> print Parser.groups2Expr(groups) 
{Grp(ASSET#KMANAGER)} 
관련 문제