0

我需要使用 Jython 脚本将管理用户添加到 WebSphere 控制台。我试图打开“记录命令辅助命令”首选项,但它没有记录添加用户。它确实记录了其他内容。

我们设置了很多服务器,并尝试编写整个设置过程的脚本。

干杯,康拉德

4

1 回答 1

4

我还没有完成管理用户,但是,我已经完成了 JAAS 用户。按照脚本,它可能会为您提供足够的提示来说明如何执行此操作。

def dbAuthenticationAlias():
   print 'Create JAAS - J2C Authentication Alias'

   #--------------------------------------------------------------
   # Check if JAAS - J2C Authentication Alias exists
   #--------------------------------------------------------------

   global dbuseralias

   # generate user alias
   dbuseralias = nodeName + '/' + dbuser

   # get context 
   sec = AdminConfig.getid('/Cell:%s/Security:/' % cellName)

   #Get all J2C Authentication Aliases (they are separated by \n
   j2c = AdminConfig.list('JAASAuthData',sec)

   found = 0
   if len(j2c) > 0 :
      for j2cUserId in j2c.splitlines():
         if AdminConfig.showAttribute(j2cUserId,"alias") == dbuseralias:
            found = 1

   #--------------------------------------------------------------
   # Create a JAAS - J2C Authentication Alias
   #--------------------------------------------------------------
   if found == 0 :
      print 'user not found, creating'

      # create structure for J2C Authentication Alias
      jaasAttrs = [['alias', dbuseralias],['userId', dbuser],['password',dbpassword]]  

      #create J2C Authentication Alias
      AdminConfig.create('JAASAuthData', sec, jaasAttrs)

      print 'user %s created' % dbuseralias

      #saving
      adminConfigSave()
   else:
      print 'user found'

到目前为止,我遇到了问题,找到了在哪里进行特定设置。因此,我在 wsadmin 工具中使用了以下命令来检索当前配置。

sec = AdminConfig.getid('/Cell:%s/Security:/' % cellName)
#shows all attributes for the config element given by an ID 
print AdminConfig.show(sec) 
#shows all attributes and expands the attributes where necessary 
print AdminConfig.showall(sec) 

除了检索安全设置,您还可以检索服务器设置并随后在配置树中更深入地移动。

srv = AdminConfig.getid('/Node:%s/Server:%s/' % (node,server)) 
#get the process definition from server config 
prcDef = AdminConfig.list('ProcessDef',srv) 
#get JVM config from process definition 
jvm= AdminConfig.list('JavaVirtualMachine',prcDef) 
于 2010-02-11T18:50:57.153 回答