You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by da...@apache.org on 2014/06/25 21:23:01 UTC

git commit: updated refs/heads/4.4 to c70cadf

Repository: cloudstack
Updated Branches:
  refs/heads/4.4 86aff86b7 -> c70cadff0


Allow for length of password on VMs to be set via global settings

(cherry picked from commit 96412e3e58fd1ced9d269e4552aaa6410bedf556)

Conflicts:
	setup/db/db/schema-430to440.sql


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/c70cadff
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/c70cadff
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/c70cadff

Branch: refs/heads/4.4
Commit: c70cadff0e3d70f625e7160a3aee600a3198cc67
Parents: 86aff86
Author: Ian Duffy <ia...@paddypower.com>
Authored: Wed Jun 25 19:51:31 2014 +0100
Committer: Daan Hoogland <da...@onecht.net>
Committed: Wed Jun 25 21:22:06 2014 +0200

----------------------------------------------------------------------
 server/src/com/cloud/server/ManagementServerImpl.java |  3 ++-
 server/src/com/cloud/vm/UserVmManagerImpl.java        | 13 ++++++-------
 setup/db/db/schema-430to440.sql                       |  2 ++
 3 files changed, 10 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c70cadff/server/src/com/cloud/server/ManagementServerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java
index f373e8b..1e9a91e 100755
--- a/server/src/com/cloud/server/ManagementServerImpl.java
+++ b/server/src/com/cloud/server/ManagementServerImpl.java
@@ -894,7 +894,8 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe
 
     @Override
     public String generateRandomPassword() {
-        return PasswordGenerator.generateRandomPassword(6);
+        Integer passwordLength = Integer.parseInt(_configDao.getValue("vm.password.length"));
+        return PasswordGenerator.generateRandomPassword(passwordLength);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c70cadff/server/src/com/cloud/vm/UserVmManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java
index 02be03c..74d2375 100755
--- a/server/src/com/cloud/vm/UserVmManagerImpl.java
+++ b/server/src/com/cloud/vm/UserVmManagerImpl.java
@@ -35,6 +35,7 @@ import javax.ejb.Local;
 import javax.inject.Inject;
 import javax.naming.ConfigurationException;
 
+import com.cloud.server.ManagementService;
 import org.apache.commons.codec.binary.Base64;
 import org.apache.log4j.Logger;
 
@@ -457,6 +458,8 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
     VolumeApiService _volumeService;
     @Inject
     DataStoreManager _dataStoreMgr;
+    @Inject
+    ManagementService _mgr;
 
     protected ScheduledExecutorService _executor = null;
     protected int _expungeInterval;
@@ -642,7 +645,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
         String password = null;
         String sshPublicKey = s.getPublicKey();
         if (template != null && template.getEnablePassword()) {
-            password = generateRandomPassword();
+            password = _mgr.generateRandomPassword();
         }
 
         boolean result = resetVMSSHKeyInternal(vmId, sshPublicKey, password);
@@ -3350,10 +3353,6 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
         }
     }
 
-    public String generateRandomPassword() {
-        return PasswordGenerator.generateRandomPassword(6);
-    }
-
     @Override
     public Pair<UserVmVO, Map<VirtualMachineProfile.Param, Object>> startVirtualMachine(long vmId, Long hostId, Map<VirtualMachineProfile.Param, Object> additionalParams, String deploymentPlannerToUse)
             throws ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException {
@@ -3428,7 +3427,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
 
             String password = "saved_password";
             if (template.getEnablePassword()) {
-                password = generateRandomPassword();
+                password = _mgr.generateRandomPassword();
             }
 
             if (!validPassword(password)) {
@@ -4702,7 +4701,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
         }
 
         if (template.getEnablePassword()) {
-            String password = generateRandomPassword();
+            String password = _mgr.generateRandomPassword();
             boolean result = resetVMPasswordInternal(vmId, password);
             if (result) {
                 vm.setPassword(password);

http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c70cadff/setup/db/db/schema-430to440.sql
----------------------------------------------------------------------
diff --git a/setup/db/db/schema-430to440.sql b/setup/db/db/schema-430to440.sql
index 150d072..0fd8c55 100644
--- a/setup/db/db/schema-430to440.sql
+++ b/setup/db/db/schema-430to440.sql
@@ -2438,3 +2438,5 @@ CREATE TABLE `cloud`.`load_balancer_healthcheck_policy_details` (
   PRIMARY KEY (`id`),
   CONSTRAINT `fk_lb_healthcheck_policy_details__lb_healthcheck_policy_id` FOREIGN KEY `fk_lb_healthcheck_policy_details__lb_healthcheck_policy_id`(`lb_policy_id`) REFERENCES `load_balancer_healthcheck_policies`(`id`) ON DELETE CASCADE
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+INSERT INTO `cloud`.`configuration`(category, instance, component, name, value, description, default_value) VALUES ('Secure', 'DEFAULT', 'management-server', 'vm.password.length', '6', 'Specifies the length of a randomly generated password', '6') ON DUPLICATE KEY UPDATE category='Secure';