proto/auth/v1/srv.proto
nfel b7fe72b613
v2: new version added for easier deployment and ci/cd
Signed-off-by: nfel <nfilsaraee@gmail.com>
2024-11-18 12:15:04 +03:30

39 lines
1.6 KiB
Protocol Buffer

syntax = "proto3";
package auth.v1;
import "auth/v1/msg.proto";
import "base/v1/msg.proto";
service AuthorizationService {
rpc InternalAuthorizationDeleteCache(base.v1.Empty) returns (base.v1.StatusRes);
rpc InternalInitRoutes(InternalInitRoutesReq) returns (base.v1.StatusRes) {}
rpc InternalGetUserIdentityBasic(GetUserReq) returns (UserIdentityBasic) {}
rpc InternalGetUserIAM(GetUserReq) returns (InternalIAM) {}
rpc CheckIAM(CheckIAMReq) returns (InternalIAM) {}
rpc UserLoginSendOTP(UserSendOtpReq) returns (UserSendOtpRes) {}
rpc UserLoginWithOTP(UserLoginReq) returns (UserAccessTokenRes) {}
rpc UserGetAccessTokenByRefreshToken(UserRefreshTokenReq)
returns (UserAccessTokenRes) {}
rpc UserGetUserPermission(InternalIAM) returns (PermissionList) {}
rpc UserGetIdentity(InternalIAM) returns (Identity) {}
rpc UserUpdateIdentity(UserUpdateIdentityReq) returns (base.v1.StatusRes) {}
rpc UserGetBankInfoList(ReqWithIAMAndParams) returns (BankInfoList) {}
rpc UserUpdateBankInfo(UserUpdateBankInfoReq) returns (base.v1.StatusRes) {}
rpc UserRemoveBankInfo(IdReqWithIAM) returns (base.v1.StatusRes) {}
rpc GetUser(GetUserReq) returns (User) {}
// Two Factor Authentication
// For now it's only SMS-OTP - later will be Email-OTP or other methods can be
// added For HMAC-OTP there won't be a need to call this api
rpc SendTFAReq(TFAReq) returns (base.v1.StatusRes) {}
// For HMAC-OTP an initialization step must be added to exchange keys
rpc InitTFAReq(InternalIAM) returns (TFAExRes) {}
rpc CheckTFACode(CheckTFAReq) returns (base.v1.StatusRes) {}
}