mirror of
https://github.com/juanfont/headscale.git
synced 2026-02-26 01:24:53 +01:00
proto: add AuthRegister and AuthApprove RPCs
Add gRPC service definitions for managing auth requests: AuthRegister to register interactive auth sessions and AuthApprove/AuthReject to approve or deny pending requests (used for SSH check mode). Updates #1850
This commit is contained in:
26
proto/headscale/v1/auth.proto
Normal file
26
proto/headscale/v1/auth.proto
Normal file
@@ -0,0 +1,26 @@
|
||||
syntax = "proto3";
|
||||
package headscale.v1;
|
||||
option go_package = "github.com/juanfont/headscale/gen/go/v1";
|
||||
|
||||
import "headscale/v1/node.proto";
|
||||
|
||||
message AuthRegisterRequest {
|
||||
string user = 1;
|
||||
string auth_id = 2;
|
||||
}
|
||||
|
||||
message AuthRegisterResponse {
|
||||
Node node = 1;
|
||||
}
|
||||
|
||||
message AuthApproveRequest {
|
||||
string auth_id = 1;
|
||||
}
|
||||
|
||||
message AuthApproveResponse {}
|
||||
|
||||
message AuthRejectRequest {
|
||||
string auth_id = 1;
|
||||
}
|
||||
|
||||
message AuthRejectResponse {}
|
||||
@@ -8,6 +8,7 @@ import "headscale/v1/user.proto";
|
||||
import "headscale/v1/preauthkey.proto";
|
||||
import "headscale/v1/node.proto";
|
||||
import "headscale/v1/apikey.proto";
|
||||
import "headscale/v1/auth.proto";
|
||||
import "headscale/v1/policy.proto";
|
||||
|
||||
service HeadscaleService {
|
||||
@@ -139,6 +140,29 @@ service HeadscaleService {
|
||||
|
||||
// --- Node end ---
|
||||
|
||||
// --- Auth start ---
|
||||
rpc AuthRegister(AuthRegisterRequest) returns (AuthRegisterResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/v1/auth/register"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
rpc AuthApprove(AuthApproveRequest) returns (AuthApproveResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/v1/auth/approve"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
rpc AuthReject(AuthRejectRequest) returns (AuthRejectResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/v1/auth/reject"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
// --- Auth end ---
|
||||
|
||||
// --- ApiKeys start ---
|
||||
rpc CreateApiKey(CreateApiKeyRequest) returns (CreateApiKeyResponse) {
|
||||
option (google.api.http) = {
|
||||
|
||||
Reference in New Issue
Block a user