diff options
author | Max Illfelder <illfelder@users.noreply.github.com> | 2016-09-12 14:54:00 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-12 14:54:00 -0700 |
commit | 60cbf6e3922c666f9237d7b310ec7872b24bf236 (patch) | |
tree | e9e2b41af8b04033af4eac93c1ea9aab342caf35 | |
parent | 04289b3dc3fd0b29d7c72ba7f6d4794de33b7231 (diff) | |
download | google-compute-image-packages-60cbf6e3922c666f9237d7b310ec7872b24bf236.tar.gz |
Accounts daemon only modifies groups on user add. (#339)
-rw-r--r-- | google_compute_engine/accounts/accounts_utils.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/google_compute_engine/accounts/accounts_utils.py b/google_compute_engine/accounts/accounts_utils.py index 1b18eb1..4096086 100644 --- a/google_compute_engine/accounts/accounts_utils.py +++ b/google_compute_engine/accounts/accounts_utils.py @@ -278,10 +278,12 @@ class AccountsUtils(object): if not bool(USER_REGEX.match(user)): self.logger.warning('Invalid user account name %s.', user) return False - if not self._GetUser(user) and not self._AddUser(user): - return False - if not self._UpdateUserGroups(user, self.groups): - return False + if not self._GetUser(user): + # User does not exist. Attempt to create the user and add them to the + # appropriate user groups. + if not (self._AddUser(user) and + self._UpdateUserGroups(user, self.groups)): + return False # Don't try to manage account SSH keys with a shell set to disable # logins. This helps avoid problems caused by operator and root sharing |