Обратитесь к документации API веб-сервиса VMWare, чтобы создать пользователя ESX | ESXi и назначить ему группу пользователей.
Версия: ESX|ESXi 4.0
Код JAVA выглядит следующим образом:
просмотреть обычную копию в буфер обмена, распечатать?
импортировать java.net.URL;
импортировать com.vmware.vim25.HostAccountSpec;
импортировать com.vmware.vim25.ManagedObjectReference;
импортировать com.vmware.vim25.Permission;
импортировать com.vmware.vim25.ServiceContent;
импортировать com.vmware.vim25.VimPortType;
импортировать com.vmware.vim25.VimServiceLocator;
импортировать com.vmware.security.credstore.*;
/**
* <р>
* Создайте пользователя ESX или ESXi (не vCenter)
* </p>
* @author навсегда
* @дата 31 декабря 2009 г.
*/
общественный класс CreateUser {
/**
* Создать пользователя
* @param hostName IP-адрес хоста. Например: 202.101.1.121
* @param userName Имя пользователя подключения. Например: корень
* @param пароль пароль подключения. Например: 123456
* @throwsException
*/
Private void createUser (String HostName, String userName, String пароль) выдает исключение {
ServerConn conn = новый ServerConn();
conn.prepare(имя хоста, имя пользователя, пароль);
ManagedObjectReference хостLocalAccountManager =
conn.get_sic().getAccountManager();
ManagedObjectReference хостAuthorizationManager =
conn.get_sic().getAuthorizationManager();
Строка new_userName =generateUserName();
Строка new_password =generatePassword();
HostAccountSpec HostAccountSpec = новый HostAccountSpec();
hostAccountSpec.setId(new_userName);
hostAccountSpec.setPassword(new_password);
hostAccountSpec.setDescription("Это новый пользователь, созданный через API");
conn.get_service().createUser(hostLocalAccountManager,
хостаккаунтспец);
System.out.println(новое_имя_пользователя + " " + новый_пароль);
Ссылка на управляемый объект rootFolder =
conn.get_sic().getRootFolder();
//Установим группу разрешений
Разрешение на = новое разрешение();
per.setGroup(ложь);
per.setPrincipal(new_userName);
per.setRoleId(-1);
per.setPropagate(истина);
per.setEntity(rootFolder);
conn.get_service().setEntityPermissions(hostAuthorizationManager,
корневая папка,
новое разрешение [] {per});
// CredentialStore csObj = CredentialStoreFactory.getCredentialStore();
// csObj.addPassword(getServerName(),userName,password.toCharArray());
System.out.println("Новый пользователь успешно создан");
}
public static void main(String [] args) выдает исключение {
CreateUser createUser = новый CreateUser();
createUser.createUser("202.101.1.121", "root", "123456");
}
}
Эта статья взята из блога CSDN. При перепечатке указывайте источник: http://blog.csdn.net/forandever/archive/2009/12/30/5105408.aspx.