mirror of
https://github.com/argoproj/argo-cd.git
synced 2026-04-05 00:08:49 +02:00
* Support OAuth2 login flow from CLI (resolves #172) * Refactor SessionManager to handle local and OAuth2 logins. * argo login will request permanent credentials after OAuth2 flow * Implement proper OIDC app state nonce. Add explicit `--sso` flag to `argo login`
48 lines
1.1 KiB
Protocol Buffer
48 lines
1.1 KiB
Protocol Buffer
syntax = "proto3";
|
|
option go_package = "github.com/argoproj/argo-cd/server/session";
|
|
|
|
// Session Service
|
|
//
|
|
// Session Service API performs CRUD actions against session resources
|
|
package session;
|
|
|
|
import "gogoproto/gogo.proto";
|
|
import "google/api/annotations.proto";
|
|
import "k8s.io/api/core/v1/generated.proto";
|
|
import "github.com/argoproj/argo-cd/pkg/apis/application/v1alpha1/generated.proto";
|
|
|
|
|
|
// SessionCreateRequest is for logging in.
|
|
message SessionCreateRequest {
|
|
string username = 1;
|
|
string password = 2;
|
|
string token = 3;
|
|
}
|
|
|
|
// SessionDeleteRequest is for logging out.
|
|
message SessionDeleteRequest {}
|
|
|
|
// SessionResponse wraps the created token or returns an empty string if deleted.
|
|
message SessionResponse {
|
|
string token = 1;
|
|
}
|
|
|
|
// SessionService
|
|
service SessionService {
|
|
|
|
// Create a new JWT for authentication.
|
|
rpc Create(SessionCreateRequest) returns (SessionResponse) {
|
|
option (google.api.http) = {
|
|
post: "/api/v1/session"
|
|
body: "*"
|
|
};
|
|
}
|
|
|
|
// Create a new JWT for authentication.
|
|
rpc Delete(SessionDeleteRequest) returns (SessionResponse) {
|
|
option (google.api.http) = {
|
|
delete: "/api/v1/session"
|
|
};
|
|
}
|
|
}
|