我需要创建用户ID并为某些用户分配Admin角色,我正在尝试通过Jython脚本执行此操作,因为它将加快进程并节省时间。 所以,我已经创建了下面的Jython脚本来实现它。
脚本
import sys
filename="C:\Users\harish\Desktop\scripts\input.txt"
fileread = open(filename, 'r')
filelines = fileread.readlines()
for row in filelines:
column=row.strip().split(';')
user_name=column[0]
print user_name
pass_word=column[1]
first=column[2]
last=column[3]
AdminTask.createUser(['-uid',user_name, '-password', pass_word, '-confirmPassword', pass_word, '- cn', first, '-sn', last ])
AdminTask.mapUsersToAdminRole(['-roleName','Administrator','-userids',user_name])
AdminConfig.save()
print 'Userid creation completed for', user_name
fileread.close()
脚本运行正常并且不会引发任何错误。但是,用户无法登录WAS管理控制台,他们只能通过单击“用户”页面上的“确定”保存配置后才能执行此操作。和群组“ - > “管理用户角色” - >
有人可以让我知道在使用wsadmin时我在这里失踪了什么,或者还有什么我需要做的才能完成任务吗?
我正在研究WAS 8.5.5.0版本。
感谢您的帮助。
答案 0 :(得分:2)
我认为您需要将此代码添加到脚本的末尾(而不是在for循环中)。这将刷新安全配置。
agmBean = AdminControl.queryNames('type=AuthorizationGroupManager,process=dmgr,*')
AdminControl.invoke(agmBean, 'refreshAll')
这假设您正在使用网络部署process=dmgr
。您可能需要更改过程。