encrypt user password with SHA512 instead of MD5 60/256760/3
authorbiao716.wang <biao716.wang@samsung.com>
Mon, 12 Apr 2021 11:11:25 +0000 (20:11 +0900)
committerbiao716.wang <biao716.wang@samsung.com>
Tue, 13 Apr 2021 07:55:35 +0000 (16:55 +0900)
and for root account, need to add it to certain groups if there exist userconfig.groups
Change-Id: I76eb7f32bc4cfab8f12d3c64f3dcc250cfa44cbf
Signed-off-by: biao716.wang <biao716.wang@samsung.com>
mic/kickstart/__init__.py

index e19e003..46bcca2 100755 (executable)
@@ -312,7 +312,7 @@ class UserConfig(KickstartConfig):
         p1 = subprocess.Popen(["/bin/echo", "%s:%s" %(user, password)],
                               stdout = subprocess.PIPE,
                               preexec_fn = self.chroot)
-        p2 = subprocess.Popen(["/usr/sbin/chpasswd", "-m"],
+        p2 = subprocess.Popen(["/usr/sbin/chpasswd", "-c","SHA512"],
                               stdin = p1.stdout,
                               stdout = subprocess.PIPE,
                               preexec_fn = self.chroot)
@@ -353,6 +353,12 @@ class UserConfig(KickstartConfig):
     @apply_wrapper
     def apply(self, user):
         for userconfig in user.userList:
+            #There exist root user already.
+            if userconfig.name == "root":
+                msger.debug("root user, just set root user groups attribution")
+                if userconfig.groups:
+                    self.call(["/usr/sbin/usermod", "-a", "-G", "%s" % string.join(userconfig.groups, ","), "root"])
+                continue
             self.addUser(userconfig)
 
 class ServicesConfig(KickstartConfig):