X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_nbi%2Fauth.py;h=a99cea7e556067acf9562af6f4a884005af487c0;hb=544a2ae8b0b950b55f29c3f0a223ffe4874285e5;hp=6c9ee925abaa3b6721604adbcd24a2f253de45de;hpb=b6480fc3be0d05e4e64f35a12dccdabf249ed94e;p=osm%2FNBI.git diff --git a/osm_nbi/auth.py b/osm_nbi/auth.py index 6c9ee92..a99cea7 100644 --- a/osm_nbi/auth.py +++ b/osm_nbi/auth.py @@ -502,7 +502,7 @@ class Authenticator: query_string_operations, item_id, ) - self.logger.info("RBAC_auth: {}", format(RBAC_auth)) + self.logger.info("RBAC_auth: {}".format(RBAC_auth)) token_info["allow_show_user_project_role"] = RBAC_auth return token_info @@ -768,3 +768,27 @@ class Authenticator: else: self.tokens_cache.clear() self.msg.write("admin", "revoke_token", {"_id": token} if token else None) + + def check_password_expiry(self, outdata): + """ + This method will check for password expiry of the user + :param outdata: user token information + """ + user_content = None + detail = {} + present_time = time() + user = outdata["username"] + if self.config["authentication"].get("pwd_expiry_check"): + user_content = self.db.get_list("users", {"username": user})[0] + if not user_content.get("username") == "admin": + user_content["_admin"]["modified_time"] = present_time + if user_content.get("_admin").get("expire_time"): + expire_time = user_content["_admin"]["expire_time"] + else: + expire_time = present_time + uid = user_content["_id"] + self.db.set_one("users", {"_id": uid}, user_content) + if not present_time < expire_time: + return True + else: + pass