Browse Source

[Fix] Support more generic tenant code when create tenant (#9634)

Mr.An 3 years ago
parent
commit
29a0ea32c6

+ 1 - 1
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/utils/RegexUtils.java

@@ -26,7 +26,7 @@ import java.util.regex.Pattern;
  */
 public class RegexUtils {
 
-    private static final String LINUX_USERNAME_PATTERN = "[a-z_][a-z\\d_]{0,30}";
+    private static final String LINUX_USERNAME_PATTERN = "^[a-zA-Z0-9_].{0,30}";
 
     private RegexUtils() {
     }

+ 8 - 2
dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/utils/RegexUtilsTest.java

@@ -28,10 +28,10 @@ public class RegexUtilsTest {
     @Test
     public void testIsValidLinuxUserName() {
         String name1 = "10000";
-        Assert.assertFalse(RegexUtils.isValidLinuxUserName(name1));
+        Assert.assertTrue(RegexUtils.isValidLinuxUserName(name1));
 
         String name2 = "00hayden";
-        Assert.assertFalse(RegexUtils.isValidLinuxUserName(name2));
+        Assert.assertTrue(RegexUtils.isValidLinuxUserName(name2));
 
         String name3 = "hayde123456789123456789123456789";
         Assert.assertFalse(RegexUtils.isValidLinuxUserName(name3));
@@ -44,6 +44,12 @@ public class RegexUtilsTest {
 
         String name6 = "hayden";
         Assert.assertTrue(RegexUtils.isValidLinuxUserName(name6));
+
+        String name7 = "00hayden_0";
+        Assert.assertTrue(RegexUtils.isValidLinuxUserName(name2));
+
+        String name8 = "00hayden.8";
+        Assert.assertTrue(RegexUtils.isValidLinuxUserName(name2));
     }
 
     @Test