228 lines
5.2 KiB
Protocol Buffer
228 lines
5.2 KiB
Protocol Buffer
|
syntax = "proto3"; //版本声明,使用v3版本
|
|||
|
|
|||
|
package auth;
|
|||
|
option go_package = "gitee.com/fusenpack/fusen-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
|
|||
|
}
|