// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.30.0
// 	protoc        v5.29.3
// source: envoy/extensions/common/aws/v3/credential_provider.proto

package awsv3

import (
	_ "github.com/cncf/xds/go/udpa/annotations"
	v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
	_ "github.com/envoyproxy/protoc-gen-validate/validate"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	durationpb "google.golang.org/protobuf/types/known/durationpb"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// Configuration for AWS credential provider. This is optional and the credentials are normally
// retrieved from the environment or AWS configuration files by following the default credential
// provider chain. However, this configuration can be used to override the default behavior.
// [#next-free-field: 11]
type AwsCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The option to use `AssumeRoleWithWebIdentity <https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html>`_.
	AssumeRoleWithWebIdentityProvider *AssumeRoleWithWebIdentityCredentialProvider `protobuf:"bytes,1,opt,name=assume_role_with_web_identity_provider,json=assumeRoleWithWebIdentityProvider,proto3" json:"assume_role_with_web_identity_provider,omitempty"`
	// The option to use an inline credential. If inline credential is provided, no chain will be created and only the inline credential will be used.
	InlineCredential *InlineCredentialProvider `protobuf:"bytes,2,opt,name=inline_credential,json=inlineCredential,proto3" json:"inline_credential,omitempty"`
	// The option to specify parameters for credential retrieval from an envoy data source, such as a file in AWS credential format.
	CredentialsFileProvider *CredentialsFileCredentialProvider `protobuf:"bytes,3,opt,name=credentials_file_provider,json=credentialsFileProvider,proto3" json:"credentials_file_provider,omitempty"`
	// Create a custom credential provider chain instead of the default credential provider chain.
	// If set to TRUE, the credential provider chain that is created contains only those set in this credential provider message.
	// If set to FALSE, the settings provided here will act as modifiers to the default credential provider chain.
	// Defaults to FALSE.
	//
	// This has no effect if inline_credential is provided.
	CustomCredentialProviderChain bool `protobuf:"varint,4,opt,name=custom_credential_provider_chain,json=customCredentialProviderChain,proto3" json:"custom_credential_provider_chain,omitempty"`
	// The option to use `IAM Roles Anywhere <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html>`_.
	IamRolesAnywhereCredentialProvider *IAMRolesAnywhereCredentialProvider `protobuf:"bytes,5,opt,name=iam_roles_anywhere_credential_provider,json=iamRolesAnywhereCredentialProvider,proto3" json:"iam_roles_anywhere_credential_provider,omitempty"`
	// The option to use credentials sourced from standard `AWS configuration files <https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html>`_.
	ConfigCredentialProvider *ConfigCredentialProvider `protobuf:"bytes,6,opt,name=config_credential_provider,json=configCredentialProvider,proto3" json:"config_credential_provider,omitempty"`
	// The option to use credentials sourced from `container environment variables <https://docs.aws.amazon.com/sdkref/latest/guide/feature-container-credentials.html>`_.
	ContainerCredentialProvider *ContainerCredentialProvider `protobuf:"bytes,7,opt,name=container_credential_provider,json=containerCredentialProvider,proto3" json:"container_credential_provider,omitempty"`
	// The option to use credentials sourced from `environment variables <https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html>`_.
	EnvironmentCredentialProvider *EnvironmentCredentialProvider `protobuf:"bytes,8,opt,name=environment_credential_provider,json=environmentCredentialProvider,proto3" json:"environment_credential_provider,omitempty"`
	// The option to use credentials sourced from an EC2 `Instance Profile <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html>`_.
	InstanceProfileCredentialProvider *InstanceProfileCredentialProvider `protobuf:"bytes,9,opt,name=instance_profile_credential_provider,json=instanceProfileCredentialProvider,proto3" json:"instance_profile_credential_provider,omitempty"`
	// The option to use `STS:AssumeRole aka Role Chaining <https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html>`_.
	AssumeRoleCredentialProvider *AssumeRoleCredentialProvider `protobuf:"bytes,10,opt,name=assume_role_credential_provider,json=assumeRoleCredentialProvider,proto3" json:"assume_role_credential_provider,omitempty"`
}

func (x *AwsCredentialProvider) Reset() {
	*x = AwsCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AwsCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AwsCredentialProvider) ProtoMessage() {}

func (x *AwsCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AwsCredentialProvider.ProtoReflect.Descriptor instead.
func (*AwsCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{0}
}

func (x *AwsCredentialProvider) GetAssumeRoleWithWebIdentityProvider() *AssumeRoleWithWebIdentityCredentialProvider {
	if x != nil {
		return x.AssumeRoleWithWebIdentityProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetInlineCredential() *InlineCredentialProvider {
	if x != nil {
		return x.InlineCredential
	}
	return nil
}

func (x *AwsCredentialProvider) GetCredentialsFileProvider() *CredentialsFileCredentialProvider {
	if x != nil {
		return x.CredentialsFileProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetCustomCredentialProviderChain() bool {
	if x != nil {
		return x.CustomCredentialProviderChain
	}
	return false
}

func (x *AwsCredentialProvider) GetIamRolesAnywhereCredentialProvider() *IAMRolesAnywhereCredentialProvider {
	if x != nil {
		return x.IamRolesAnywhereCredentialProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetConfigCredentialProvider() *ConfigCredentialProvider {
	if x != nil {
		return x.ConfigCredentialProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetContainerCredentialProvider() *ContainerCredentialProvider {
	if x != nil {
		return x.ContainerCredentialProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetEnvironmentCredentialProvider() *EnvironmentCredentialProvider {
	if x != nil {
		return x.EnvironmentCredentialProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetInstanceProfileCredentialProvider() *InstanceProfileCredentialProvider {
	if x != nil {
		return x.InstanceProfileCredentialProvider
	}
	return nil
}

func (x *AwsCredentialProvider) GetAssumeRoleCredentialProvider() *AssumeRoleCredentialProvider {
	if x != nil {
		return x.AssumeRoleCredentialProvider
	}
	return nil
}

// Configuration to use an inline AWS credential. This is an equivalent to setting the well-known
// environment variables “AWS_ACCESS_KEY_ID“, “AWS_SECRET_ACCESS_KEY“, and the optional “AWS_SESSION_TOKEN“.
type InlineCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The AWS access key ID.
	AccessKeyId string `protobuf:"bytes,1,opt,name=access_key_id,json=accessKeyId,proto3" json:"access_key_id,omitempty"`
	// The AWS secret access key.
	SecretAccessKey string `protobuf:"bytes,2,opt,name=secret_access_key,json=secretAccessKey,proto3" json:"secret_access_key,omitempty"`
	// The AWS session token. This is optional.
	SessionToken string `protobuf:"bytes,3,opt,name=session_token,json=sessionToken,proto3" json:"session_token,omitempty"`
}

func (x *InlineCredentialProvider) Reset() {
	*x = InlineCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InlineCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InlineCredentialProvider) ProtoMessage() {}

func (x *InlineCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InlineCredentialProvider.ProtoReflect.Descriptor instead.
func (*InlineCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{1}
}

func (x *InlineCredentialProvider) GetAccessKeyId() string {
	if x != nil {
		return x.AccessKeyId
	}
	return ""
}

func (x *InlineCredentialProvider) GetSecretAccessKey() string {
	if x != nil {
		return x.SecretAccessKey
	}
	return ""
}

func (x *InlineCredentialProvider) GetSessionToken() string {
	if x != nil {
		return x.SessionToken
	}
	return ""
}

// Configuration to use `AssumeRoleWithWebIdentity <https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html>`_
// to retrieve AWS credentials.
type AssumeRoleWithWebIdentityCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Data source for a web identity token that is provided by the identity provider to assume the role.
	// When using this data source, even if a “watched_directory“ is provided, the token file will only be re-read when the credentials
	// returned from AssumeRoleWithWebIdentity expire.
	WebIdentityTokenDataSource *v3.DataSource `protobuf:"bytes,1,opt,name=web_identity_token_data_source,json=webIdentityTokenDataSource,proto3" json:"web_identity_token_data_source,omitempty"`
	// The ARN of the role to assume.
	RoleArn string `protobuf:"bytes,2,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	// Optional role session name to use in AssumeRoleWithWebIdentity API call.
	RoleSessionName string `protobuf:"bytes,3,opt,name=role_session_name,json=roleSessionName,proto3" json:"role_session_name,omitempty"`
}

func (x *AssumeRoleWithWebIdentityCredentialProvider) Reset() {
	*x = AssumeRoleWithWebIdentityCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AssumeRoleWithWebIdentityCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AssumeRoleWithWebIdentityCredentialProvider) ProtoMessage() {}

func (x *AssumeRoleWithWebIdentityCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AssumeRoleWithWebIdentityCredentialProvider.ProtoReflect.Descriptor instead.
func (*AssumeRoleWithWebIdentityCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{2}
}

func (x *AssumeRoleWithWebIdentityCredentialProvider) GetWebIdentityTokenDataSource() *v3.DataSource {
	if x != nil {
		return x.WebIdentityTokenDataSource
	}
	return nil
}

func (x *AssumeRoleWithWebIdentityCredentialProvider) GetRoleArn() string {
	if x != nil {
		return x.RoleArn
	}
	return ""
}

func (x *AssumeRoleWithWebIdentityCredentialProvider) GetRoleSessionName() string {
	if x != nil {
		return x.RoleSessionName
	}
	return ""
}

type CredentialsFileCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Data source from which to retrieve AWS credentials
	// When using this data source, if a “watched_directory“ is provided, the credential file will be re-read when a file move is detected.
	// See :ref:`watched_directory <envoy_v3_api_msg_config.core.v3.DataSource>` for more information about the “watched_directory“ field.
	CredentialsDataSource *v3.DataSource `protobuf:"bytes,1,opt,name=credentials_data_source,json=credentialsDataSource,proto3" json:"credentials_data_source,omitempty"`
	// The profile within the credentials_file data source. If not provided, the default profile will be used.
	Profile string `protobuf:"bytes,2,opt,name=profile,proto3" json:"profile,omitempty"`
}

func (x *CredentialsFileCredentialProvider) Reset() {
	*x = CredentialsFileCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *CredentialsFileCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CredentialsFileCredentialProvider) ProtoMessage() {}

func (x *CredentialsFileCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CredentialsFileCredentialProvider.ProtoReflect.Descriptor instead.
func (*CredentialsFileCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{3}
}

func (x *CredentialsFileCredentialProvider) GetCredentialsDataSource() *v3.DataSource {
	if x != nil {
		return x.CredentialsDataSource
	}
	return nil
}

func (x *CredentialsFileCredentialProvider) GetProfile() string {
	if x != nil {
		return x.Profile
	}
	return ""
}

// Configuration to use `IAM Roles Anywhere <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html>`_
// to retrieve AWS credentials.
// [#next-free-field: 9]
type IAMRolesAnywhereCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The ARN of the role to assume via the IAM Roles Anywhere sessions API. See `Configure Roles <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/getting-started.html#getting-started-step2>`_ for more details.
	RoleArn string `protobuf:"bytes,1,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	// The certificate used for authenticating to the IAM Roles Anywhere service.
	// This certificate must match one configured in the IAM Roles Anywhere profile. See `Configure Roles <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/getting-started.html#getting-started-step2>`_ for more details.
	Certificate *v3.DataSource `protobuf:"bytes,2,opt,name=certificate,proto3" json:"certificate,omitempty"`
	// The optional certificate chain, required when you are using a subordinate certificate authority for certificate issuance.
	// A certificate chain can contain a maximum of 5 elements, see `The IAM Roles Anywhere authentication process <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/authentication.html>`_ for more details.
	CertificateChain *v3.DataSource `protobuf:"bytes,3,opt,name=certificate_chain,json=certificateChain,proto3" json:"certificate_chain,omitempty"`
	// The TLS private key matching the certificate provided.
	PrivateKey *v3.DataSource `protobuf:"bytes,4,opt,name=private_key,json=privateKey,proto3" json:"private_key,omitempty"`
	// The arn of the IAM Roles Anywhere trust anchor configured in your AWS account. A trust anchor in IAM Roles anywhere establishes
	// trust between your certificate authority (CA) and AWS. See `Establish trust <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/getting-started.html#getting-started-step1>`_ for more details.
	TrustAnchorArn string `protobuf:"bytes,5,opt,name=trust_anchor_arn,json=trustAnchorArn,proto3" json:"trust_anchor_arn,omitempty"`
	// The IAM Roles Anywhere profile ARN configured in your AWS account.
	ProfileArn string `protobuf:"bytes,6,opt,name=profile_arn,json=profileArn,proto3" json:"profile_arn,omitempty"`
	// An optional role session name, used when identifying the role in subsequent AWS API calls.
	RoleSessionName string `protobuf:"bytes,7,opt,name=role_session_name,json=roleSessionName,proto3" json:"role_session_name,omitempty"`
	// An optional session duration, used when calculating the maximum time before vended credentials expire. This value cannot exceed the value configured
	// in the IAM Roles Anywhere profile and the resultant session duration is calculate by the formula `here <https://docs.aws.amazon.com/rolesanywhere/latest/userguide/authentication-create-session.html#credentials-object>`_.
	// If no session duration is provided here, the session duration is sourced from the IAM Roles Anywhere profile.
	SessionDuration *durationpb.Duration `protobuf:"bytes,8,opt,name=session_duration,json=sessionDuration,proto3" json:"session_duration,omitempty"`
}

func (x *IAMRolesAnywhereCredentialProvider) Reset() {
	*x = IAMRolesAnywhereCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *IAMRolesAnywhereCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*IAMRolesAnywhereCredentialProvider) ProtoMessage() {}

func (x *IAMRolesAnywhereCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use IAMRolesAnywhereCredentialProvider.ProtoReflect.Descriptor instead.
func (*IAMRolesAnywhereCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{4}
}

func (x *IAMRolesAnywhereCredentialProvider) GetRoleArn() string {
	if x != nil {
		return x.RoleArn
	}
	return ""
}

func (x *IAMRolesAnywhereCredentialProvider) GetCertificate() *v3.DataSource {
	if x != nil {
		return x.Certificate
	}
	return nil
}

func (x *IAMRolesAnywhereCredentialProvider) GetCertificateChain() *v3.DataSource {
	if x != nil {
		return x.CertificateChain
	}
	return nil
}

func (x *IAMRolesAnywhereCredentialProvider) GetPrivateKey() *v3.DataSource {
	if x != nil {
		return x.PrivateKey
	}
	return nil
}

func (x *IAMRolesAnywhereCredentialProvider) GetTrustAnchorArn() string {
	if x != nil {
		return x.TrustAnchorArn
	}
	return ""
}

func (x *IAMRolesAnywhereCredentialProvider) GetProfileArn() string {
	if x != nil {
		return x.ProfileArn
	}
	return ""
}

func (x *IAMRolesAnywhereCredentialProvider) GetRoleSessionName() string {
	if x != nil {
		return x.RoleSessionName
	}
	return ""
}

func (x *IAMRolesAnywhereCredentialProvider) GetSessionDuration() *durationpb.Duration {
	if x != nil {
		return x.SessionDuration
	}
	return nil
}

// The Config Credential Provider has no configurable parameters, but listing it in a custom credential provider chain will enable this
// credential provider.
type ConfigCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ConfigCredentialProvider) Reset() {
	*x = ConfigCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ConfigCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ConfigCredentialProvider) ProtoMessage() {}

func (x *ConfigCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ConfigCredentialProvider.ProtoReflect.Descriptor instead.
func (*ConfigCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{5}
}

// The Container Credential Provider has no configurable parameters, but listing it in a custom credential provider chain will enable this
// credential provider.
type ContainerCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ContainerCredentialProvider) Reset() {
	*x = ContainerCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ContainerCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ContainerCredentialProvider) ProtoMessage() {}

func (x *ContainerCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ContainerCredentialProvider.ProtoReflect.Descriptor instead.
func (*ContainerCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{6}
}

// The Environment Credential Provider has no configurable parameters, but listing it in a custom credential provider chain will enable this
// credential provider.
type EnvironmentCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *EnvironmentCredentialProvider) Reset() {
	*x = EnvironmentCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EnvironmentCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EnvironmentCredentialProvider) ProtoMessage() {}

func (x *EnvironmentCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EnvironmentCredentialProvider.ProtoReflect.Descriptor instead.
func (*EnvironmentCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{7}
}

// The Instance Profile Credential Provider has no configurable parameters, but listing it in a custom credential provider chain will enable this
// credential provider.
type InstanceProfileCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *InstanceProfileCredentialProvider) Reset() {
	*x = InstanceProfileCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *InstanceProfileCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*InstanceProfileCredentialProvider) ProtoMessage() {}

func (x *InstanceProfileCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use InstanceProfileCredentialProvider.ProtoReflect.Descriptor instead.
func (*InstanceProfileCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{8}
}

// Configuration to use `AssumeRole <https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html>`_ for retrieving new credentials, via role chaining.
// [#next-free-field: 6]
type AssumeRoleCredentialProvider struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// The ARN of the role to assume.
	RoleArn string `protobuf:"bytes,1,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	// Optional string value to use as the role session name
	RoleSessionName string `protobuf:"bytes,2,opt,name=role_session_name,json=roleSessionName,proto3" json:"role_session_name,omitempty"`
	// Optional string value to use as the externalId
	ExternalId string `protobuf:"bytes,3,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
	// An optional duration, in seconds, of the role session. Minimum role duration is 900s (5 minutes) and maximum is 43200s (12 hours).
	// If the session duration is not provided, the default will be determined using the `table described here <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html>`_.
	SessionDuration *durationpb.Duration `protobuf:"bytes,4,opt,name=session_duration,json=sessionDuration,proto3" json:"session_duration,omitempty"`
	// The credential provider for signing the AssumeRole request. This is optional and if not set,
	// it will be retrieved from the procedure described in :ref:`config_http_filters_aws_request_signing`.
	// This list of credential providers cannot include an AssumeRole credential provider and if one is provided
	// it will be ignored.
	CredentialProvider *AwsCredentialProvider `protobuf:"bytes,5,opt,name=credential_provider,json=credentialProvider,proto3" json:"credential_provider,omitempty"`
}

func (x *AssumeRoleCredentialProvider) Reset() {
	*x = AssumeRoleCredentialProvider{}
	if protoimpl.UnsafeEnabled {
		mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AssumeRoleCredentialProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AssumeRoleCredentialProvider) ProtoMessage() {}

func (x *AssumeRoleCredentialProvider) ProtoReflect() protoreflect.Message {
	mi := &file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AssumeRoleCredentialProvider.ProtoReflect.Descriptor instead.
func (*AssumeRoleCredentialProvider) Descriptor() ([]byte, []int) {
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP(), []int{9}
}

func (x *AssumeRoleCredentialProvider) GetRoleArn() string {
	if x != nil {
		return x.RoleArn
	}
	return ""
}

func (x *AssumeRoleCredentialProvider) GetRoleSessionName() string {
	if x != nil {
		return x.RoleSessionName
	}
	return ""
}

func (x *AssumeRoleCredentialProvider) GetExternalId() string {
	if x != nil {
		return x.ExternalId
	}
	return ""
}

func (x *AssumeRoleCredentialProvider) GetSessionDuration() *durationpb.Duration {
	if x != nil {
		return x.SessionDuration
	}
	return nil
}

func (x *AssumeRoleCredentialProvider) GetCredentialProvider() *AwsCredentialProvider {
	if x != nil {
		return x.CredentialProvider
	}
	return nil
}

var File_envoy_extensions_common_aws_v3_credential_provider_proto protoreflect.FileDescriptor

var file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDesc = []byte{
	0x0a, 0x38, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
	0x6e, 0x73, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x61, 0x77, 0x73, 0x2f, 0x76, 0x33,
	0x2f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x65, 0x6e, 0x76, 0x6f,
	0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
	0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x1a, 0x1f, 0x65, 0x6e, 0x76, 0x6f,
	0x79, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x33,
	0x2f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f,
	0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72,
	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x75, 0x64, 0x70,
	0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x73, 0x65,
	0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x75,
	0x64, 0x70, 0x61, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
	0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61,
	0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9c, 0x0a, 0x0a, 0x15, 0x41, 0x77, 0x73, 0x43, 0x72, 0x65,
	0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12,
	0x9e, 0x01, 0x0a, 0x26, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f,
	0x77, 0x69, 0x74, 0x68, 0x5f, 0x77, 0x65, 0x62, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74,
	0x79, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x4b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
	0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76,
	0x33, 0x2e, 0x41, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x57, 0x69, 0x74, 0x68,
	0x57, 0x65, 0x62, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x21, 0x61,
	0x73, 0x73, 0x75, 0x6d, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x57, 0x69, 0x74, 0x68, 0x57, 0x65, 0x62,
	0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x12, 0x65, 0x0a, 0x11, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x65, 0x6e,
	0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63,
	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x49, 0x6e, 0x6c,
	0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x10, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65,
	0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x7d, 0x0a, 0x19, 0x63, 0x72, 0x65, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x65, 0x6e, 0x76,
	0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f,
	0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x72, 0x65, 0x64,
	0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x17, 0x63,
	0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d,
	0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x1d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69,
	0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12,
	0x96, 0x01, 0x0a, 0x26, 0x69, 0x61, 0x6d, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x5f, 0x61, 0x6e,
	0x79, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61,
	0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x42, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
	0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76,
	0x33, 0x2e, 0x49, 0x41, 0x4d, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x41, 0x6e, 0x79, 0x77, 0x68, 0x65,
	0x72, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x52, 0x22, 0x69, 0x61, 0x6d, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x41, 0x6e,
	0x79, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x76, 0x0a, 0x1a, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x65,
	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
	0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x6f,
	0x6e, 0x66, 0x69, 0x67, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x18, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x72,
	0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
	0x12, 0x7f, 0x0a, 0x1d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x63, 0x72,
	0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e,
	0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
	0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
	0x65, 0x72, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x52, 0x1b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x43,
	0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x12, 0x85, 0x01, 0x0a, 0x1f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
	0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x65, 0x6e,
	0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63,
	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x45, 0x6e, 0x76,
	0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69,
	0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x1d, 0x65, 0x6e, 0x76, 0x69,
	0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61,
	0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x92, 0x01, 0x0a, 0x24, 0x69, 0x6e,
	0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63,
	0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
	0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
	0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
	0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74,
	0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x21, 0x69, 0x6e, 0x73,
	0x74, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x64,
	0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x83,
	0x01, 0x0a, 0x1f, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63,
	0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
	0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79,
	0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
	0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x73, 0x73, 0x75, 0x6d, 0x65,
	0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x1c, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x52, 0x6f,
	0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x22, 0xaf, 0x01, 0x0a, 0x18, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x43,
	0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x12, 0x2b, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f,
	0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10,
	0x01, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x39,
	0x0a, 0x11, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f,
	0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x0d, 0xfa, 0x42, 0x04, 0x72, 0x02,
	0x10, 0x01, 0xb8, 0xb7, 0x8b, 0xa4, 0x02, 0x01, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
	0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x0d, 0x73, 0x65, 0x73,
	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x42, 0x06, 0xb8, 0xb7, 0x8b, 0xa4, 0x02, 0x01, 0x52, 0x0c, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
	0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xeb, 0x01, 0x0a, 0x2b, 0x41, 0x73, 0x73, 0x75, 0x6d,
	0x65, 0x52, 0x6f, 0x6c, 0x65, 0x57, 0x69, 0x74, 0x68, 0x57, 0x65, 0x62, 0x49, 0x64, 0x65, 0x6e,
	0x74, 0x69, 0x74, 0x79, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x6c, 0x0a, 0x1e, 0x77, 0x65, 0x62, 0x5f, 0x69, 0x64,
	0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x64, 0x61, 0x74,
	0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20,
	0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f,
	0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x42, 0x06, 0xb8, 0xb7, 0x8b, 0xa4, 0x02, 0x01, 0x52, 0x1a, 0x77, 0x65, 0x62, 0x49, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52,
	0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x6f, 0x6c, 0x65,
	0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
	0x4e, 0x61, 0x6d, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x21, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74,
	0x69, 0x61, 0x6c, 0x73, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69,
	0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x60, 0x0a, 0x17, 0x63, 0x72,
	0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e,
	0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e,
	0x76, 0x33, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x06, 0xb8,
	0xb7, 0x8b, 0xa4, 0x02, 0x01, 0x52, 0x15, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61,
	0x6c, 0x73, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07,
	0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,
	0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x9a, 0x04, 0x0a, 0x22, 0x49, 0x41, 0x4d, 0x52, 0x6f,
	0x6c, 0x65, 0x73, 0x41, 0x6e, 0x79, 0x77, 0x68, 0x65, 0x72, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x22, 0x0a,
	0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
	0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72,
	0x6e, 0x12, 0x4c, 0x0a, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63,
	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x61,
	0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x08, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02,
	0x10, 0x01, 0x52, 0x0b, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x12,
	0x4d, 0x0a, 0x11, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x63,
	0x68, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76,
	0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76,
	0x33, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x10, 0x63, 0x65,
	0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x51,
	0x0a, 0x0b, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
	0x69, 0x67, 0x2e, 0x63, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x33, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53,
	0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x0e, 0xfa, 0x42, 0x05, 0x8a, 0x01, 0x02, 0x10, 0x01, 0xb8,
	0xb7, 0x8b, 0xa4, 0x02, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65,
	0x79, 0x12, 0x31, 0x0a, 0x10, 0x74, 0x72, 0x75, 0x73, 0x74, 0x5f, 0x61, 0x6e, 0x63, 0x68, 0x6f,
	0x72, 0x5f, 0x61, 0x72, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04,
	0x72, 0x02, 0x10, 0x01, 0x52, 0x0e, 0x74, 0x72, 0x75, 0x73, 0x74, 0x41, 0x6e, 0x63, 0x68, 0x6f,
	0x72, 0x41, 0x72, 0x6e, 0x12, 0x28, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f,
	0x61, 0x72, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02,
	0x10, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x2a,
	0x0a, 0x11, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x6f, 0x6c, 0x65, 0x53,
	0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x57, 0x0a, 0x10, 0x73, 0x65,
	0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42,
	0x11, 0xfa, 0x42, 0x0e, 0xaa, 0x01, 0x0b, 0x22, 0x04, 0x08, 0xc0, 0xd1, 0x02, 0x32, 0x03, 0x08,
	0x84, 0x07, 0x52, 0x0f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x22, 0x1a, 0x0a, 0x18, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x72, 0x65,
	0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22,
	0x1d, 0x0a, 0x1b, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x43, 0x72, 0x65, 0x64,
	0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22, 0x1f,
	0x0a, 0x1d, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x72, 0x65,
	0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22,
	0x23, 0x0a, 0x21, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69,
	0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x22, 0xd0, 0x02, 0x0a, 0x1c, 0x41, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x52,
	0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f,
	0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x22, 0x0a, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x61, 0x72,
	0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01,
	0x52, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x41, 0x72, 0x6e, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x6f, 0x6c,
	0x65, 0x5f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f,
	0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
	0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65,
	0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x57, 0x0a, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
	0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
	0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x11, 0xfa, 0x42, 0x0e,
	0xaa, 0x01, 0x0b, 0x22, 0x04, 0x08, 0xc0, 0xd1, 0x02, 0x32, 0x03, 0x08, 0x84, 0x07, 0x52, 0x0f,
	0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
	0x66, 0x0a, 0x13, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x65,
	0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
	0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33, 0x2e, 0x41, 0x77,
	0x73, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76, 0x69,
	0x64, 0x65, 0x72, 0x52, 0x12, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50,
	0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x42, 0x9e, 0x01, 0xba, 0x80, 0xc8, 0xd1, 0x06, 0x02,
	0x10, 0x02, 0x0a, 0x2c, 0x69, 0x6f, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f, 0x78,
	0x79, 0x2e, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2e, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
	0x6e, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x61, 0x77, 0x73, 0x2e, 0x76, 0x33,
	0x42, 0x17, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x76,
	0x69, 0x64, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4b, 0x67, 0x69, 0x74,
	0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x70, 0x72, 0x6f,
	0x78, 0x79, 0x2f, 0x67, 0x6f, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d, 0x70, 0x6c,
	0x61, 0x6e, 0x65, 0x2f, 0x65, 0x6e, 0x76, 0x6f, 0x79, 0x2f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73,
	0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x61, 0x77, 0x73, 0x2f,
	0x76, 0x33, 0x3b, 0x61, 0x77, 0x73, 0x76, 0x33, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescOnce sync.Once
	file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescData = file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDesc
)

func file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescGZIP() []byte {
	file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescOnce.Do(func() {
		file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescData = protoimpl.X.CompressGZIP(file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescData)
	})
	return file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDescData
}

var file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
var file_envoy_extensions_common_aws_v3_credential_provider_proto_goTypes = []interface{}{
	(*AwsCredentialProvider)(nil),                       // 0: envoy.extensions.common.aws.v3.AwsCredentialProvider
	(*InlineCredentialProvider)(nil),                    // 1: envoy.extensions.common.aws.v3.InlineCredentialProvider
	(*AssumeRoleWithWebIdentityCredentialProvider)(nil), // 2: envoy.extensions.common.aws.v3.AssumeRoleWithWebIdentityCredentialProvider
	(*CredentialsFileCredentialProvider)(nil),           // 3: envoy.extensions.common.aws.v3.CredentialsFileCredentialProvider
	(*IAMRolesAnywhereCredentialProvider)(nil),          // 4: envoy.extensions.common.aws.v3.IAMRolesAnywhereCredentialProvider
	(*ConfigCredentialProvider)(nil),                    // 5: envoy.extensions.common.aws.v3.ConfigCredentialProvider
	(*ContainerCredentialProvider)(nil),                 // 6: envoy.extensions.common.aws.v3.ContainerCredentialProvider
	(*EnvironmentCredentialProvider)(nil),               // 7: envoy.extensions.common.aws.v3.EnvironmentCredentialProvider
	(*InstanceProfileCredentialProvider)(nil),           // 8: envoy.extensions.common.aws.v3.InstanceProfileCredentialProvider
	(*AssumeRoleCredentialProvider)(nil),                // 9: envoy.extensions.common.aws.v3.AssumeRoleCredentialProvider
	(*v3.DataSource)(nil),                               // 10: envoy.config.core.v3.DataSource
	(*durationpb.Duration)(nil),                         // 11: google.protobuf.Duration
}
var file_envoy_extensions_common_aws_v3_credential_provider_proto_depIdxs = []int32{
	2,  // 0: envoy.extensions.common.aws.v3.AwsCredentialProvider.assume_role_with_web_identity_provider:type_name -> envoy.extensions.common.aws.v3.AssumeRoleWithWebIdentityCredentialProvider
	1,  // 1: envoy.extensions.common.aws.v3.AwsCredentialProvider.inline_credential:type_name -> envoy.extensions.common.aws.v3.InlineCredentialProvider
	3,  // 2: envoy.extensions.common.aws.v3.AwsCredentialProvider.credentials_file_provider:type_name -> envoy.extensions.common.aws.v3.CredentialsFileCredentialProvider
	4,  // 3: envoy.extensions.common.aws.v3.AwsCredentialProvider.iam_roles_anywhere_credential_provider:type_name -> envoy.extensions.common.aws.v3.IAMRolesAnywhereCredentialProvider
	5,  // 4: envoy.extensions.common.aws.v3.AwsCredentialProvider.config_credential_provider:type_name -> envoy.extensions.common.aws.v3.ConfigCredentialProvider
	6,  // 5: envoy.extensions.common.aws.v3.AwsCredentialProvider.container_credential_provider:type_name -> envoy.extensions.common.aws.v3.ContainerCredentialProvider
	7,  // 6: envoy.extensions.common.aws.v3.AwsCredentialProvider.environment_credential_provider:type_name -> envoy.extensions.common.aws.v3.EnvironmentCredentialProvider
	8,  // 7: envoy.extensions.common.aws.v3.AwsCredentialProvider.instance_profile_credential_provider:type_name -> envoy.extensions.common.aws.v3.InstanceProfileCredentialProvider
	9,  // 8: envoy.extensions.common.aws.v3.AwsCredentialProvider.assume_role_credential_provider:type_name -> envoy.extensions.common.aws.v3.AssumeRoleCredentialProvider
	10, // 9: envoy.extensions.common.aws.v3.AssumeRoleWithWebIdentityCredentialProvider.web_identity_token_data_source:type_name -> envoy.config.core.v3.DataSource
	10, // 10: envoy.extensions.common.aws.v3.CredentialsFileCredentialProvider.credentials_data_source:type_name -> envoy.config.core.v3.DataSource
	10, // 11: envoy.extensions.common.aws.v3.IAMRolesAnywhereCredentialProvider.certificate:type_name -> envoy.config.core.v3.DataSource
	10, // 12: envoy.extensions.common.aws.v3.IAMRolesAnywhereCredentialProvider.certificate_chain:type_name -> envoy.config.core.v3.DataSource
	10, // 13: envoy.extensions.common.aws.v3.IAMRolesAnywhereCredentialProvider.private_key:type_name -> envoy.config.core.v3.DataSource
	11, // 14: envoy.extensions.common.aws.v3.IAMRolesAnywhereCredentialProvider.session_duration:type_name -> google.protobuf.Duration
	11, // 15: envoy.extensions.common.aws.v3.AssumeRoleCredentialProvider.session_duration:type_name -> google.protobuf.Duration
	0,  // 16: envoy.extensions.common.aws.v3.AssumeRoleCredentialProvider.credential_provider:type_name -> envoy.extensions.common.aws.v3.AwsCredentialProvider
	17, // [17:17] is the sub-list for method output_type
	17, // [17:17] is the sub-list for method input_type
	17, // [17:17] is the sub-list for extension type_name
	17, // [17:17] is the sub-list for extension extendee
	0,  // [0:17] is the sub-list for field type_name
}

func init() { file_envoy_extensions_common_aws_v3_credential_provider_proto_init() }
func file_envoy_extensions_common_aws_v3_credential_provider_proto_init() {
	if File_envoy_extensions_common_aws_v3_credential_provider_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AwsCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InlineCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AssumeRoleWithWebIdentityCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*CredentialsFileCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IAMRolesAnywhereCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ConfigCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ContainerCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EnvironmentCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InstanceProfileCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AssumeRoleCredentialProvider); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   10,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_envoy_extensions_common_aws_v3_credential_provider_proto_goTypes,
		DependencyIndexes: file_envoy_extensions_common_aws_v3_credential_provider_proto_depIdxs,
		MessageInfos:      file_envoy_extensions_common_aws_v3_credential_provider_proto_msgTypes,
	}.Build()
	File_envoy_extensions_common_aws_v3_credential_provider_proto = out.File
	file_envoy_extensions_common_aws_v3_credential_provider_proto_rawDesc = nil
	file_envoy_extensions_common_aws_v3_credential_provider_proto_goTypes = nil
	file_envoy_extensions_common_aws_v3_credential_provider_proto_depIdxs = nil
}
