228 lines
5.2 KiB
Protocol Buffer
228 lines
5.2 KiB
Protocol Buffer
syntax = "proto3"; //版本声明,使用v3版本
|
||
|
||
package auth;
|
||
option go_package = "gitlab.fusenpack.com/backend/auth;service";
|
||
|
||
// 导入google/api/annotations.proto 注释依赖
|
||
import "google/api/annotations.proto";
|
||
import "service/basic.proto";
|
||
import "google/protobuf/struct.proto";
|
||
import "google/protobuf/any.proto";
|
||
|
||
|
||
//定义服务
|
||
service auth {
|
||
|
||
// 登录接口
|
||
rpc ValidToken(ValidTokenRequest) returns (ValidTokenResponse) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/valid/token"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 登录接口
|
||
rpc Login(UserLoginRequest) returns (UserLoginResponse) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/login"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 注册接口
|
||
rpc Register(UserRegisterRequest) returns (basic.Response) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/register"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// Cookie 接受接口
|
||
rpc AcceptCookie(basic.Request) returns (GuestResponse) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/accept-cookie"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 调试令牌创建接口
|
||
rpc CreateDebugToken(UserDebugRequest) returns (DebugTokenResponse) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/debug/token/create"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// Google 登录接口
|
||
rpc GoogleLogin(GoogleLoginRequest) returns (basic.Response) {
|
||
// 添加 HTTP GET 网关注解
|
||
option (google.api.http) = {
|
||
get: "/api/auth/oauth2/login/google"
|
||
};
|
||
}
|
||
|
||
// 邮箱确认接口
|
||
rpc EmailConfirmation(EmailConfirmationRequest) returns (basic.Response) {
|
||
// 添加 HTTP GET 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/email/confirmation"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 使用邮箱注册接口
|
||
rpc EmailRegister(EmailRegisterRequest) returns (basic.Response) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/oauth2/register"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 发送重置令牌到邮箱接口
|
||
rpc ResetToken(UserResetTokenRequest) returns (basic.Response) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/reset/token"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 重置密码接口
|
||
rpc ResetPassword(UserResetPasswordRequest) returns (basic.Response) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/reset/password"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
// 获取重定向到 HTML 页面接口
|
||
rpc ResetPasswordHtml(UserResetHtmlRequest) returns (basic.Response) {
|
||
// 添加 HTTP GET 网关注解
|
||
option (google.api.http) = {
|
||
get: "/api/auth/reset/password/html"
|
||
};
|
||
}
|
||
|
||
// 调试删除帐号接口
|
||
rpc DebugDelete(AuthDeleteRequest) returns (basic.Response) {
|
||
// 添加 HTTP POST 网关注解
|
||
option (google.api.http) = {
|
||
post: "/api/auth/debug/delete"
|
||
body: "*"
|
||
};
|
||
}
|
||
|
||
}
|
||
|
||
// 验证token的请求
|
||
message ValidTokenRequest {
|
||
optional string user_token = 1;
|
||
optional string debug_token = 2;
|
||
}
|
||
|
||
|
||
// 验证token的请求
|
||
message ValidTokenResponse {
|
||
google.protobuf.Struct user_info = 1;
|
||
google.protobuf.Struct debug_info = 2;
|
||
}
|
||
|
||
|
||
|
||
// 定义调试令牌请求消息
|
||
message UserDebugRequest {
|
||
string password = 1; // 密码,内部使用都是明文
|
||
optional int64 exp = 2; // 过期时间,不发默认一天
|
||
int64 is_cache = 3 ; // 是否缓存
|
||
int64 is_all_template_tag = 4; // 是否开启全部模板
|
||
}
|
||
|
||
// 定义调试删除帐号请求消息
|
||
message AuthDeleteRequest {
|
||
string email = 1;
|
||
}
|
||
|
||
// 定义用户登录请求消息
|
||
message UserLoginRequest {
|
||
string email = 1;
|
||
string password = 2;
|
||
}
|
||
|
||
// 定义用户登录响应消息
|
||
message UserLoginResponse
|
||
{
|
||
string token = 1; // 登录 JWT Token
|
||
}
|
||
|
||
// 定义用户注册请求消息
|
||
message UserRegisterRequest {
|
||
string wid = 1; // WebSocket 的 ID
|
||
string first_name = 2; // 首名
|
||
string last_name = 3; // 名
|
||
string resetaurant = 4; // 餐厅类型
|
||
string email = 5; // email
|
||
string password = 6; // 密码
|
||
}
|
||
|
||
// 定义请求重置令牌消息
|
||
message UserResetTokenRequest {
|
||
string wid = 1;
|
||
string email = 2; // email
|
||
}
|
||
|
||
// 定义返回重置令牌消息
|
||
message ResetTokenResponse
|
||
{
|
||
string reset_token = 1; // 获取重置的令牌
|
||
}
|
||
|
||
// 定义请求重置密码 HTML 页面消息
|
||
message UserResetHtmlRequest {
|
||
string reset_token = 1;
|
||
}
|
||
|
||
// 定义请求重置密码消息
|
||
message UserResetPasswordRequest {
|
||
string reset_token = 1;
|
||
string new_password = 2;
|
||
}
|
||
|
||
// 定义请求 Google 登录消息
|
||
message GoogleLoginRequest {
|
||
string code = 1;
|
||
string scope = 2;
|
||
string authuser = 3;
|
||
string prompt = 4;
|
||
}
|
||
|
||
// 定义请求邮箱确认消息
|
||
message EmailConfirmationRequest {
|
||
string token = 1; // 操作 Token
|
||
string optype = 2; // 操作类型
|
||
}
|
||
|
||
// 定义请求使用邮箱注册消息
|
||
message EmailRegisterRequest {
|
||
string wid = 1;
|
||
string email = 2;
|
||
string register_token = 3;
|
||
}
|
||
|
||
// 定义游客获取 Token 请求消息
|
||
message GuestResponse
|
||
{
|
||
string token = 1; // 登录 JWT Token
|
||
}
|
||
|
||
// 获取debug token返回值
|
||
message DebugTokenResponse
|
||
{
|
||
string debug_token = 1; // debug token JWT Token
|
||
} |