proto/service/auth.proto
huangsimin@fusen.cn c0cbff775f 最新版本
2023-11-27 17:36:02 +08:00

228 lines
5.2 KiB
Protocol Buffer
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
}