28 lines
1.2 KiB
Go
28 lines
1.2 KiB
Go
package auth
|
|
|
|
import (
|
|
"context"
|
|
)
|
|
|
|
type Manager interface {
|
|
RegisterUser(ctx context.Context, request RegisterUserRequest) (*RegisterUserResponse, error)
|
|
LoginUser(ctx context.Context, request LoginUserRequest) (*LoginUserResponse, error)
|
|
LogoutUser(ctx context.Context, request LogoutUserRequest) error
|
|
GetNewAccessToken(ctx context.Context, request GetNewAccessTokenRequest) (*GetNewAccessTokenResponse, error)
|
|
GetUserEmailVerificationToken(ctx context.Context, uid string) (*GetUserTokenResponse, error)
|
|
CheckTokenIsValid(ctx context.Context, token string) (bool, error)
|
|
GetPermissionsByUsersId(ctx context.Context, id string) (*GetPermissionsByUsersIdResponse, error)
|
|
CheckPermissions(ctx context.Context, required CheckPermissionsRequest) (bool, error)
|
|
GetUserInfo(ctx context.Context, id string) (*UserInfo, error)
|
|
VerifyEmail(ctx context.Context, userID string, token string) error
|
|
GetEmailVerificationStatus(ctx context.Context, userID string) (*GetEmailVerificationResponse, error)
|
|
ResetPassword(ctx context.Context, request ResetPasswordRequest) error
|
|
}
|
|
|
|
type Config struct {
|
|
AuthServerAddr string
|
|
Realm string
|
|
ClientId string
|
|
ClientSecret string
|
|
}
|