2023-03-28 22:48:58 +00:00
|
|
|
// Copyright (c) HashiCorp, Inc.
|
2023-08-11 13:12:13 +00:00
|
|
|
// SPDX-License-Identifier: BUSL-1.1
|
2023-03-28 22:48:58 +00:00
|
|
|
|
2020-06-05 19:56:19 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
|
2022-07-13 16:03:27 +00:00
|
|
|
package hashicorp.consul.internal.autoconf;
|
2020-06-05 19:56:19 +00:00
|
|
|
|
2023-02-17 21:14:46 +00:00
|
|
|
import "private/pbconfig/config.proto";
|
|
|
|
import "private/pbconnect/connect.proto";
|
2020-06-05 19:56:19 +00:00
|
|
|
|
2021-12-01 19:32:34 +00:00
|
|
|
// AutoConfigRequest is the data structure to be sent along with the
|
2020-07-07 19:39:04 +00:00
|
|
|
// AutoConfig.InitialConfiguration RPC
|
2020-06-05 19:56:19 +00:00
|
|
|
message AutoConfigRequest {
|
2022-05-23 14:37:52 +00:00
|
|
|
// Datacenter is the local datacenter name. This wont actually be set by clients
|
|
|
|
// but rather will be set by the servers to allow for forwarding to
|
|
|
|
// the leader. If it ever happens to be set and differs from the local datacenters
|
|
|
|
// name then an error should be returned.
|
|
|
|
string Datacenter = 1;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// Node is the node name that the requester would like to assume
|
|
|
|
// the identity of.
|
|
|
|
string Node = 2;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// Segment is the network segment that the requester would like to join
|
|
|
|
string Segment = 4;
|
2020-06-05 19:56:19 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// Partition is the partition that the requester would like to join
|
|
|
|
string Partition = 8;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// JWT is a signed JSON Web Token used to authorize the request
|
|
|
|
string JWT = 5;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// ConsulToken is a Consul ACL token that the agent requesting the
|
|
|
|
// configuration already has.
|
|
|
|
string ConsulToken = 6;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// CSR is a certificate signing request to be used when generating the
|
|
|
|
// agents TLS certificate
|
|
|
|
string CSR = 7;
|
2020-06-05 19:56:19 +00:00
|
|
|
}
|
|
|
|
|
2020-07-07 19:39:04 +00:00
|
|
|
// AutoConfigResponse is the data structure sent in response to a AutoConfig.InitialConfiguration request
|
2020-06-05 19:56:19 +00:00
|
|
|
message AutoConfigResponse {
|
2022-05-23 14:37:52 +00:00
|
|
|
// Config is the partial Consul configuration to inject into the agents own configuration
|
|
|
|
config.Config Config = 1;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// CARoots is the current list of Connect CA Roots
|
|
|
|
connect.CARoots CARoots = 2;
|
|
|
|
// Certificate is the TLS certificate issued for the agent
|
|
|
|
connect.IssuedCert Certificate = 3;
|
2021-12-01 19:32:34 +00:00
|
|
|
|
2022-05-23 14:37:52 +00:00
|
|
|
// ExtraCACertificates holds non-Connect certificates that may be necessary
|
|
|
|
// to verify TLS connections with the Consul servers
|
|
|
|
repeated string ExtraCACertificates = 4;
|
2021-12-01 19:32:34 +00:00
|
|
|
}
|