/// <summary>
        /// Creates a new user
        /// </summary>
        /// <param name="options">The options to use when creating the user</param>
        public void CreateVMUser(NewVMUserParameters options)
        {
            if (options == null)
            {
                throw new ArgumentNullException("options");
            }

            IUser  user   = null;
            string vmName = null;

            if (options.VM != null)
            {
                user   = options.VM.omObject.CreateUser();
                vmName = options.VM.Name;
            }
            else
            {
                using (IPoolManager poolManager = options.Context.BatchOMClient.OpenPoolManager())
                {
                    user = poolManager.CreateUser(options.PoolName, options.VMName);
                }
                vmName = options.VMName;
            }

            user.Name       = options.VMUserName;
            user.Password   = options.Password;
            user.ExpiryTime = options.ExpiryTime;
            user.IsAdmin    = options.IsAdmin;

            WriteVerbose(string.Format(Resources.NBU_CreatingUser, user.Name, vmName));

            user.Commit(UserCommitSemantics.AddUser, options.AdditionalBehaviors);
        }
Пример #2
0
        public Task CreateVMUserAsync(string poolName, string vmName, string userName, string password, DateTime expiryTime, bool admin)
        {
            using (IPoolManager poolManager = this.Client.OpenPoolManager())
            {
                IUser user = poolManager.CreateUser(poolName, vmName);
                user.Name       = userName;
                user.Password   = password;
                user.ExpiryTime = expiryTime;
                user.IsAdmin    = admin;

                return(user.CommitAsync());
            }
        }