28 lines
866 B
Python
28 lines
866 B
Python
"""认证服务接口。"""
|
|
|
|
from abc import ABC, abstractmethod
|
|
|
|
from fastapi_modules.fastapi_leaudit.domian.vo.auth.loginTokenVo import LoginTokenVO
|
|
|
|
|
|
class IAuthService(ABC):
|
|
"""认证服务接口。"""
|
|
|
|
@abstractmethod
|
|
async def PasswordLogin(self, Sub: str, Password: str) -> LoginTokenVO:
|
|
"""账密登录。"""
|
|
...
|
|
|
|
@abstractmethod
|
|
async def OAuthLogin(self, Sub: str, Username: str | None, Nickname: str | None,
|
|
Email: str | None, PhoneNumber: str | None,
|
|
OuId: str | None, OuName: str | None,
|
|
IsLeader: bool | None, Area: str | None, ExpiresIn: int) -> LoginTokenVO:
|
|
"""OAuth 登录。"""
|
|
...
|
|
|
|
@abstractmethod
|
|
async def GetCurrentUser(self, UserId: int) -> dict:
|
|
"""获取当前登录用户信息。"""
|
|
...
|