40 lines
1.0 KiB
Protocol Buffer
40 lines
1.0 KiB
Protocol Buffer
// proto/auth.proto
|
|
syntax = "proto3";
|
|
package KompAC.auth;
|
|
|
|
import "common.proto";
|
|
|
|
service AuthService {
|
|
rpc Register(RegisterRequest) returns (AuthResponse);
|
|
rpc Login(LoginRequest) returns (LoginResponse);
|
|
}
|
|
|
|
message RegisterRequest {
|
|
string username = 1;
|
|
string email = 2;
|
|
string password = 3;
|
|
string password_confirmation = 4;
|
|
string role = 5;
|
|
}
|
|
|
|
message AuthResponse {
|
|
string id = 1; // UUID in string format
|
|
string username = 2; // Registered username
|
|
string email = 3; // Registered email (if provided)
|
|
string role = 4; // Default role: 'accountant'
|
|
}
|
|
|
|
message LoginRequest {
|
|
string identifier = 1; // Can be username or email
|
|
string password = 2;
|
|
}
|
|
|
|
message LoginResponse {
|
|
string access_token = 1; // JWT token
|
|
string token_type = 2; // Usually "Bearer"
|
|
int32 expires_in = 3; // Expiration in seconds (86400 for 24 hours)
|
|
string user_id = 4; // User's UUID in string format
|
|
string role = 5; // User's role
|
|
string username = 6;
|
|
}
|