Skip to content

Commit 3fc4ef4

Browse files
DaanHooglandDaan Hoogland
andauthored
replace Random with SecureRandom (apache#5966)
Co-authored-by: Daan Hoogland <dahn@onecht.net>
1 parent 85ced44 commit 3fc4ef4

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

server/src/main/java/com/cloud/projects/ProjectManagerImpl.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717
package com.cloud.projects;
1818

1919
import java.io.UnsupportedEncodingException;
20+
import java.security.SecureRandom;
2021
import java.util.List;
2122
import java.util.Map;
2223
import java.util.Optional;
23-
import java.util.Random;
2424
import java.util.TimeZone;
2525
import java.util.UUID;
2626
import java.util.concurrent.Executors;
@@ -106,6 +106,8 @@
106106
public class ProjectManagerImpl extends ManagerBase implements ProjectManager, Configurable {
107107
public static final Logger s_logger = Logger.getLogger(ProjectManagerImpl.class);
108108

109+
private static final SecureRandom secureRandom = new SecureRandom();
110+
109111
@Inject
110112
private DomainDao _domainDao;
111113
@Inject
@@ -1349,10 +1351,9 @@ private boolean suspendProject(ProjectVO project) throws ConcurrentOperationExce
13491351

13501352
public static String generateToken(int length) {
13511353
String charset = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
1352-
Random rand = new Random(System.currentTimeMillis());
13531354
StringBuffer sb = new StringBuffer();
13541355
for (int i = 0; i < length; i++) {
1355-
int pos = rand.nextInt(charset.length());
1356+
int pos = secureRandom.nextInt(charset.length());
13561357
sb.append(charset.charAt(pos));
13571358
}
13581359
return sb.toString();

0 commit comments

Comments
 (0)