syntax = "proto3";

package envoy.config.grpc_credential.v3;

import "udpa/annotations/status.proto";
import "udpa/annotations/versioning.proto";
import "validate/validate.proto";

option java_package = "io.envoyproxy.envoy.config.grpc_credential.v3";
option java_outer_classname = "AwsIamProto";
option java_multiple_files = true;
option go_package = "github.com/envoyproxy/go-control-plane/envoy/config/grpc_credential/v3;grpc_credentialv3";
option (udpa.annotations.file_status).package_version_status = ACTIVE;

// [#protodoc-title: Grpc Credentials AWS IAM]
// Configuration for AWS IAM Grpc Credentials Plugin
// [#extension: envoy.grpc_credentials.aws_iam]

message AwsIamConfig {
  option (udpa.annotations.versioning).previous_message_type =
      "envoy.config.grpc_credential.v2alpha.AwsIamConfig";

  // The `service namespace
  // <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces>`_
  // of the Grpc endpoint.
  //
  // Example: appmesh
  string service_name = 1 [(validate.rules).string = {min_len: 1}];

  // The `region <https://docs.aws.amazon.com/general/latest/gr/rande.html>`_ hosting the Grpc
  // endpoint. If unspecified, the extension will use the value in the ``AWS_REGION`` environment
  // variable.
  //
  // Example: us-west-2
  string region = 2;
}
