single-shot auth using headers

This commit is contained in:
Devaev Maxim
2019-04-27 05:16:00 +03:00
parent 3476f52da9
commit 493d160a6e
7 changed files with 46 additions and 25 deletions

View File

@@ -28,7 +28,7 @@ from .. import get_plugin_class
# =====
class BaseAuthService(BasePlugin):
async def login(self, user: str, passwd: str) -> bool:
async def authorize(self, user: str, passwd: str) -> bool:
raise NotImplementedError # pragma: nocover
async def cleanup(self) -> None:

View File

@@ -44,6 +44,6 @@ class Plugin(BaseAuthService):
"file": Option("/etc/kvmd/htpasswd", type=valid_abs_path_exists, unpack_as="path"),
}
async def login(self, user: str, passwd: str) -> bool:
async def authorize(self, user: str, passwd: str) -> bool:
htpasswd = passlib.apache.HtpasswdFile(self.__path)
return htpasswd.check_password(user, passwd)

View File

@@ -69,7 +69,7 @@ class Plugin(BaseAuthService):
"timeout": Option(5.0, type=valid_float_f01),
}
async def login(self, user: str, passwd: str) -> bool:
async def authorize(self, user: str, passwd: str) -> bool:
session = self.__ensure_session()
try:
async with session.request(