mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 01:00:29 +08:00
additional checks for auth token
This commit is contained in:
parent
4457187a86
commit
f355c38fe1
@ -120,13 +120,20 @@ class AuthManager:
|
|||||||
for (token, token_user) in self.__tokens.items():
|
for (token, token_user) in self.__tokens.items():
|
||||||
if user == token_user:
|
if user == token_user:
|
||||||
return token
|
return token
|
||||||
token = secrets.token_hex(32)
|
token = self.__make_new_token()
|
||||||
self.__tokens[token] = user
|
self.__tokens[token] = user
|
||||||
get_logger().info("Logged in user %r", user)
|
get_logger().info("Logged in user %r", user)
|
||||||
return token
|
return token
|
||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def __make_new_token(self) -> str:
|
||||||
|
for _ in range(10):
|
||||||
|
token = secrets.token_hex(32)
|
||||||
|
if token not in self.__tokens:
|
||||||
|
return token
|
||||||
|
raise AssertionError("Can't generate new unique token")
|
||||||
|
|
||||||
def logout(self, token: str) -> None:
|
def logout(self, token: str) -> None:
|
||||||
assert self.__enabled
|
assert self.__enabled
|
||||||
user = self.__tokens.pop(token, "")
|
user = self.__tokens.pop(token, "")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user