X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_nbi%2Fauthconn_internal.py;h=8b94a4c093c78086dbf858938c67b88967720e0c;hb=0c9b0108fde07156eeeea19c280a4f0c2f3dc17f;hp=0f414b13f620a730845c7531acef0a24df7a8dd3;hpb=6d83f8f3c7ac8c18982b3a994a539acbb033fab5;p=osm%2FNBI.git diff --git a/osm_nbi/authconn_internal.py b/osm_nbi/authconn_internal.py index 0f414b1..8b94a4c 100644 --- a/osm_nbi/authconn_internal.py +++ b/osm_nbi/authconn_internal.py @@ -550,6 +550,7 @@ class AuthconnInternal(Authconn): unlock = user_info.get("unlock") renew = user_info.get("renew") permission_id = user_info.get("system_admin_id") + now = time() user_data = self.db.get_one( self.users_collection, {BaseTopic.id_field("users", uid): uid} @@ -591,7 +592,10 @@ class AuthconnInternal(Authconn): if role_assigned.get("permissions")["admin"]: if role_assigned.get("permissions")["default"]: user_data["_admin"]["retry_count"] = 0 - user_data["_admin"]["user_status"] = "active" + if now > user_data["_admin"]["account_expire_time"]: + user_data["_admin"]["user_status"] = "expired" + else: + user_data["_admin"]["user_status"] = "active" unlock_state = True break if not unlock_state: @@ -634,7 +638,13 @@ class AuthconnInternal(Authconn): ) user_data["_admin"]["modified"] = present user_data["_admin"]["account_expire_time"] = account_expire - user_data["_admin"]["user_status"] = "active" + if ( + user_data["_admin"]["retry_count"] + >= self.config["max_pwd_attempt"] + ): + user_data["_admin"]["user_status"] = "locked" + else: + user_data["_admin"]["user_status"] = "active" renew_state = True break if not renew_state: