// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.9
// 	protoc        v6.31.1
// source: github.com/buildbarn/bb-storage/pkg/proto/configuration/http/server/server.proto

package server

import (
	auth "github.com/buildbarn/bb-storage/pkg/proto/auth"
	grpc "github.com/buildbarn/bb-storage/pkg/proto/configuration/grpc"
	client "github.com/buildbarn/bb-storage/pkg/proto/configuration/http/client"
	jmespath "github.com/buildbarn/bb-storage/pkg/proto/configuration/jmespath"
	jwt "github.com/buildbarn/bb-storage/pkg/proto/configuration/jwt"
	tls "github.com/buildbarn/bb-storage/pkg/proto/configuration/tls"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

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)
)

type Configuration struct {
	state                protoimpl.MessageState   `protogen:"open.v1"`
	ListenAddresses      []string                 `protobuf:"bytes,1,rep,name=listen_addresses,json=listenAddresses,proto3" json:"listen_addresses,omitempty"`
	AuthenticationPolicy *AuthenticationPolicy    `protobuf:"bytes,2,opt,name=authentication_policy,json=authenticationPolicy,proto3" json:"authentication_policy,omitempty"`
	Tls                  *tls.ServerConfiguration `protobuf:"bytes,3,opt,name=tls,proto3" json:"tls,omitempty"`
	unknownFields        protoimpl.UnknownFields
	sizeCache            protoimpl.SizeCache
}

func (x *Configuration) Reset() {
	*x = Configuration{}
	mi := &file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Configuration) ProtoMessage() {}

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

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

func (x *Configuration) GetListenAddresses() []string {
	if x != nil {
		return x.ListenAddresses
	}
	return nil
}

func (x *Configuration) GetAuthenticationPolicy() *AuthenticationPolicy {
	if x != nil {
		return x.AuthenticationPolicy
	}
	return nil
}

func (x *Configuration) GetTls() *tls.ServerConfiguration {
	if x != nil {
		return x.Tls
	}
	return nil
}

type AuthenticationPolicy struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to Policy:
	//
	//	*AuthenticationPolicy_Allow
	//	*AuthenticationPolicy_Any
	//	*AuthenticationPolicy_Deny
	//	*AuthenticationPolicy_Jwt
	//	*AuthenticationPolicy_Oidc
	//	*AuthenticationPolicy_AcceptHeader
	//	*AuthenticationPolicy_Remote
	Policy        isAuthenticationPolicy_Policy `protobuf_oneof:"policy"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AuthenticationPolicy) Reset() {
	*x = AuthenticationPolicy{}
	mi := &file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AuthenticationPolicy) ProtoMessage() {}

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

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

func (x *AuthenticationPolicy) GetPolicy() isAuthenticationPolicy_Policy {
	if x != nil {
		return x.Policy
	}
	return nil
}

func (x *AuthenticationPolicy) GetAllow() *auth.AuthenticationMetadata {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_Allow); ok {
			return x.Allow
		}
	}
	return nil
}

func (x *AuthenticationPolicy) GetAny() *AnyAuthenticationPolicy {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_Any); ok {
			return x.Any
		}
	}
	return nil
}

func (x *AuthenticationPolicy) GetDeny() string {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_Deny); ok {
			return x.Deny
		}
	}
	return ""
}

func (x *AuthenticationPolicy) GetJwt() *jwt.AuthorizationHeaderParserConfiguration {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_Jwt); ok {
			return x.Jwt
		}
	}
	return nil
}

func (x *AuthenticationPolicy) GetOidc() *OIDCAuthenticationPolicy {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_Oidc); ok {
			return x.Oidc
		}
	}
	return nil
}

func (x *AuthenticationPolicy) GetAcceptHeader() *AcceptHeaderAuthenticationPolicy {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_AcceptHeader); ok {
			return x.AcceptHeader
		}
	}
	return nil
}

func (x *AuthenticationPolicy) GetRemote() *grpc.RemoteAuthenticationPolicy {
	if x != nil {
		if x, ok := x.Policy.(*AuthenticationPolicy_Remote); ok {
			return x.Remote
		}
	}
	return nil
}

type isAuthenticationPolicy_Policy interface {
	isAuthenticationPolicy_Policy()
}

type AuthenticationPolicy_Allow struct {
	Allow *auth.AuthenticationMetadata `protobuf:"bytes,1,opt,name=allow,proto3,oneof"`
}

type AuthenticationPolicy_Any struct {
	Any *AnyAuthenticationPolicy `protobuf:"bytes,2,opt,name=any,proto3,oneof"`
}

type AuthenticationPolicy_Deny struct {
	Deny string `protobuf:"bytes,3,opt,name=deny,proto3,oneof"`
}

type AuthenticationPolicy_Jwt struct {
	Jwt *jwt.AuthorizationHeaderParserConfiguration `protobuf:"bytes,4,opt,name=jwt,proto3,oneof"`
}

type AuthenticationPolicy_Oidc struct {
	Oidc *OIDCAuthenticationPolicy `protobuf:"bytes,5,opt,name=oidc,proto3,oneof"`
}

type AuthenticationPolicy_AcceptHeader struct {
	AcceptHeader *AcceptHeaderAuthenticationPolicy `protobuf:"bytes,6,opt,name=accept_header,json=acceptHeader,proto3,oneof"`
}

type AuthenticationPolicy_Remote struct {
	Remote *grpc.RemoteAuthenticationPolicy `protobuf:"bytes,7,opt,name=remote,proto3,oneof"`
}

func (*AuthenticationPolicy_Allow) isAuthenticationPolicy_Policy() {}

func (*AuthenticationPolicy_Any) isAuthenticationPolicy_Policy() {}

func (*AuthenticationPolicy_Deny) isAuthenticationPolicy_Policy() {}

func (*AuthenticationPolicy_Jwt) isAuthenticationPolicy_Policy() {}

func (*AuthenticationPolicy_Oidc) isAuthenticationPolicy_Policy() {}

func (*AuthenticationPolicy_AcceptHeader) isAuthenticationPolicy_Policy() {}

func (*AuthenticationPolicy_Remote) isAuthenticationPolicy_Policy() {}

type AnyAuthenticationPolicy struct {
	state         protoimpl.MessageState  `protogen:"open.v1"`
	Policies      []*AuthenticationPolicy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AnyAuthenticationPolicy) Reset() {
	*x = AnyAuthenticationPolicy{}
	mi := &file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AnyAuthenticationPolicy) ProtoMessage() {}

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

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

func (x *AnyAuthenticationPolicy) GetPolicies() []*AuthenticationPolicy {
	if x != nil {
		return x.Policies
	}
	return nil
}

type OIDCAuthenticationPolicy struct {
	state                    protoimpl.MessageState `protogen:"open.v1"`
	ClientId                 string                 `protobuf:"bytes,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	ClientSecret             string                 `protobuf:"bytes,2,opt,name=client_secret,json=clientSecret,proto3" json:"client_secret,omitempty"`
	AuthorizationEndpointUrl string                 `protobuf:"bytes,3,opt,name=authorization_endpoint_url,json=authorizationEndpointUrl,proto3" json:"authorization_endpoint_url,omitempty"`
	TokenEndpointUrl         string                 `protobuf:"bytes,4,opt,name=token_endpoint_url,json=tokenEndpointUrl,proto3" json:"token_endpoint_url,omitempty"`
	// Types that are valid to be assigned to UserInfoSource:
	//
	//	*OIDCAuthenticationPolicy_UserInfoEndpointUrl
	//	*OIDCAuthenticationPolicy_UseIdTokenClaims
	UserInfoSource                       isOIDCAuthenticationPolicy_UserInfoSource `protobuf_oneof:"user_info_source"`
	MetadataExtractionJmespathExpression *jmespath.Expression                      `protobuf:"bytes,6,opt,name=metadata_extraction_jmespath_expression,json=metadataExtractionJmespathExpression,proto3" json:"metadata_extraction_jmespath_expression,omitempty"`
	RedirectUrl                          string                                    `protobuf:"bytes,7,opt,name=redirect_url,json=redirectUrl,proto3" json:"redirect_url,omitempty"`
	Scopes                               []string                                  `protobuf:"bytes,8,rep,name=scopes,proto3" json:"scopes,omitempty"`
	CookieSeed                           []byte                                    `protobuf:"bytes,9,opt,name=cookie_seed,json=cookieSeed,proto3" json:"cookie_seed,omitempty"`
	HttpClient                           *client.Configuration                     `protobuf:"bytes,10,opt,name=http_client,json=httpClient,proto3" json:"http_client,omitempty"`
	unknownFields                        protoimpl.UnknownFields
	sizeCache                            protoimpl.SizeCache
}

func (x *OIDCAuthenticationPolicy) Reset() {
	*x = OIDCAuthenticationPolicy{}
	mi := &file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*OIDCAuthenticationPolicy) ProtoMessage() {}

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

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

func (x *OIDCAuthenticationPolicy) GetClientId() string {
	if x != nil {
		return x.ClientId
	}
	return ""
}

func (x *OIDCAuthenticationPolicy) GetClientSecret() string {
	if x != nil {
		return x.ClientSecret
	}
	return ""
}

func (x *OIDCAuthenticationPolicy) GetAuthorizationEndpointUrl() string {
	if x != nil {
		return x.AuthorizationEndpointUrl
	}
	return ""
}

func (x *OIDCAuthenticationPolicy) GetTokenEndpointUrl() string {
	if x != nil {
		return x.TokenEndpointUrl
	}
	return ""
}

func (x *OIDCAuthenticationPolicy) GetUserInfoSource() isOIDCAuthenticationPolicy_UserInfoSource {
	if x != nil {
		return x.UserInfoSource
	}
	return nil
}

func (x *OIDCAuthenticationPolicy) GetUserInfoEndpointUrl() string {
	if x != nil {
		if x, ok := x.UserInfoSource.(*OIDCAuthenticationPolicy_UserInfoEndpointUrl); ok {
			return x.UserInfoEndpointUrl
		}
	}
	return ""
}

func (x *OIDCAuthenticationPolicy) GetUseIdTokenClaims() *emptypb.Empty {
	if x != nil {
		if x, ok := x.UserInfoSource.(*OIDCAuthenticationPolicy_UseIdTokenClaims); ok {
			return x.UseIdTokenClaims
		}
	}
	return nil
}

func (x *OIDCAuthenticationPolicy) GetMetadataExtractionJmespathExpression() *jmespath.Expression {
	if x != nil {
		return x.MetadataExtractionJmespathExpression
	}
	return nil
}

func (x *OIDCAuthenticationPolicy) GetRedirectUrl() string {
	if x != nil {
		return x.RedirectUrl
	}
	return ""
}

func (x *OIDCAuthenticationPolicy) GetScopes() []string {
	if x != nil {
		return x.Scopes
	}
	return nil
}

func (x *OIDCAuthenticationPolicy) GetCookieSeed() []byte {
	if x != nil {
		return x.CookieSeed
	}
	return nil
}

func (x *OIDCAuthenticationPolicy) GetHttpClient() *client.Configuration {
	if x != nil {
		return x.HttpClient
	}
	return nil
}

type isOIDCAuthenticationPolicy_UserInfoSource interface {
	isOIDCAuthenticationPolicy_UserInfoSource()
}

type OIDCAuthenticationPolicy_UserInfoEndpointUrl struct {
	UserInfoEndpointUrl string `protobuf:"bytes,5,opt,name=user_info_endpoint_url,json=userInfoEndpointUrl,proto3,oneof"`
}

type OIDCAuthenticationPolicy_UseIdTokenClaims struct {
	UseIdTokenClaims *emptypb.Empty `protobuf:"bytes,11,opt,name=use_id_token_claims,json=useIdTokenClaims,proto3,oneof"`
}

func (*OIDCAuthenticationPolicy_UserInfoEndpointUrl) isOIDCAuthenticationPolicy_UserInfoSource() {}

func (*OIDCAuthenticationPolicy_UseIdTokenClaims) isOIDCAuthenticationPolicy_UserInfoSource() {}

type AcceptHeaderAuthenticationPolicy struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	MediaTypes    []string               `protobuf:"bytes,1,rep,name=media_types,json=mediaTypes,proto3" json:"media_types,omitempty"`
	Policy        *AuthenticationPolicy  `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AcceptHeaderAuthenticationPolicy) Reset() {
	*x = AcceptHeaderAuthenticationPolicy{}
	mi := &file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AcceptHeaderAuthenticationPolicy) ProtoMessage() {}

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

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

func (x *AcceptHeaderAuthenticationPolicy) GetMediaTypes() []string {
	if x != nil {
		return x.MediaTypes
	}
	return nil
}

func (x *AcceptHeaderAuthenticationPolicy) GetPolicy() *AuthenticationPolicy {
	if x != nil {
		return x.Policy
	}
	return nil
}

var File_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto protoreflect.FileDescriptor

const file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDesc = "" +
	"\n" +
	"Pgithub.com/buildbarn/bb-storage/pkg/proto/configuration/http/server/server.proto\x12#buildbarn.configuration.http.server\x1a9github.com/buildbarn/bb-storage/pkg/proto/auth/auth.proto\x1aGgithub.com/buildbarn/bb-storage/pkg/proto/configuration/grpc/grpc.proto\x1aPgithub.com/buildbarn/bb-storage/pkg/proto/configuration/http/client/client.proto\x1aOgithub.com/buildbarn/bb-storage/pkg/proto/configuration/jmespath/jmespath.proto\x1aEgithub.com/buildbarn/bb-storage/pkg/proto/configuration/jwt/jwt.proto\x1aEgithub.com/buildbarn/bb-storage/pkg/proto/configuration/tls/tls.proto\x1a\x1bgoogle/protobuf/empty.proto\"\xee\x01\n" +
	"\rConfiguration\x12)\n" +
	"\x10listen_addresses\x18\x01 \x03(\tR\x0flistenAddresses\x12n\n" +
	"\x15authentication_policy\x18\x02 \x01(\v29.buildbarn.configuration.http.server.AuthenticationPolicyR\x14authenticationPolicy\x12B\n" +
	"\x03tls\x18\x03 \x01(\v20.buildbarn.configuration.tls.ServerConfigurationR\x03tls\"\xb8\x04\n" +
	"\x14AuthenticationPolicy\x12>\n" +
	"\x05allow\x18\x01 \x01(\v2&.buildbarn.auth.AuthenticationMetadataH\x00R\x05allow\x12P\n" +
	"\x03any\x18\x02 \x01(\v2<.buildbarn.configuration.http.server.AnyAuthenticationPolicyH\x00R\x03any\x12\x14\n" +
	"\x04deny\x18\x03 \x01(\tH\x00R\x04deny\x12W\n" +
	"\x03jwt\x18\x04 \x01(\v2C.buildbarn.configuration.jwt.AuthorizationHeaderParserConfigurationH\x00R\x03jwt\x12S\n" +
	"\x04oidc\x18\x05 \x01(\v2=.buildbarn.configuration.http.server.OIDCAuthenticationPolicyH\x00R\x04oidc\x12l\n" +
	"\raccept_header\x18\x06 \x01(\v2E.buildbarn.configuration.http.server.AcceptHeaderAuthenticationPolicyH\x00R\facceptHeader\x12R\n" +
	"\x06remote\x18\a \x01(\v28.buildbarn.configuration.grpc.RemoteAuthenticationPolicyH\x00R\x06remoteB\b\n" +
	"\x06policy\"p\n" +
	"\x17AnyAuthenticationPolicy\x12U\n" +
	"\bpolicies\x18\x01 \x03(\v29.buildbarn.configuration.http.server.AuthenticationPolicyR\bpolicies\"\x93\x05\n" +
	"\x18OIDCAuthenticationPolicy\x12\x1b\n" +
	"\tclient_id\x18\x01 \x01(\tR\bclientId\x12#\n" +
	"\rclient_secret\x18\x02 \x01(\tR\fclientSecret\x12<\n" +
	"\x1aauthorization_endpoint_url\x18\x03 \x01(\tR\x18authorizationEndpointUrl\x12,\n" +
	"\x12token_endpoint_url\x18\x04 \x01(\tR\x10tokenEndpointUrl\x125\n" +
	"\x16user_info_endpoint_url\x18\x05 \x01(\tH\x00R\x13userInfoEndpointUrl\x12G\n" +
	"\x13use_id_token_claims\x18\v \x01(\v2\x16.google.protobuf.EmptyH\x00R\x10useIdTokenClaims\x12\x83\x01\n" +
	"'metadata_extraction_jmespath_expression\x18\x06 \x01(\v2,.buildbarn.configuration.jmespath.ExpressionR$metadataExtractionJmespathExpression\x12!\n" +
	"\fredirect_url\x18\a \x01(\tR\vredirectUrl\x12\x16\n" +
	"\x06scopes\x18\b \x03(\tR\x06scopes\x12\x1f\n" +
	"\vcookie_seed\x18\t \x01(\fR\n" +
	"cookieSeed\x12S\n" +
	"\vhttp_client\x18\n" +
	" \x01(\v22.buildbarn.configuration.http.client.ConfigurationR\n" +
	"httpClientB\x12\n" +
	"\x10user_info_source\"\x96\x01\n" +
	" AcceptHeaderAuthenticationPolicy\x12\x1f\n" +
	"\vmedia_types\x18\x01 \x03(\tR\n" +
	"mediaTypes\x12Q\n" +
	"\x06policy\x18\x02 \x01(\v29.buildbarn.configuration.http.server.AuthenticationPolicyR\x06policyBEZCgithub.com/buildbarn/bb-storage/pkg/proto/configuration/http/serverb\x06proto3"

var (
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDescOnce sync.Once
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDescData []byte
)

func file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDescGZIP() []byte {
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDescOnce.Do(func() {
		file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDesc), len(file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDesc)))
	})
	return file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDescData
}

var file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
var file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_goTypes = []any{
	(*Configuration)(nil),                              // 0: buildbarn.configuration.http.server.Configuration
	(*AuthenticationPolicy)(nil),                       // 1: buildbarn.configuration.http.server.AuthenticationPolicy
	(*AnyAuthenticationPolicy)(nil),                    // 2: buildbarn.configuration.http.server.AnyAuthenticationPolicy
	(*OIDCAuthenticationPolicy)(nil),                   // 3: buildbarn.configuration.http.server.OIDCAuthenticationPolicy
	(*AcceptHeaderAuthenticationPolicy)(nil),           // 4: buildbarn.configuration.http.server.AcceptHeaderAuthenticationPolicy
	(*tls.ServerConfiguration)(nil),                    // 5: buildbarn.configuration.tls.ServerConfiguration
	(*auth.AuthenticationMetadata)(nil),                // 6: buildbarn.auth.AuthenticationMetadata
	(*jwt.AuthorizationHeaderParserConfiguration)(nil), // 7: buildbarn.configuration.jwt.AuthorizationHeaderParserConfiguration
	(*grpc.RemoteAuthenticationPolicy)(nil),            // 8: buildbarn.configuration.grpc.RemoteAuthenticationPolicy
	(*emptypb.Empty)(nil),                              // 9: google.protobuf.Empty
	(*jmespath.Expression)(nil),                        // 10: buildbarn.configuration.jmespath.Expression
	(*client.Configuration)(nil),                       // 11: buildbarn.configuration.http.client.Configuration
}
var file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_depIdxs = []int32{
	1,  // 0: buildbarn.configuration.http.server.Configuration.authentication_policy:type_name -> buildbarn.configuration.http.server.AuthenticationPolicy
	5,  // 1: buildbarn.configuration.http.server.Configuration.tls:type_name -> buildbarn.configuration.tls.ServerConfiguration
	6,  // 2: buildbarn.configuration.http.server.AuthenticationPolicy.allow:type_name -> buildbarn.auth.AuthenticationMetadata
	2,  // 3: buildbarn.configuration.http.server.AuthenticationPolicy.any:type_name -> buildbarn.configuration.http.server.AnyAuthenticationPolicy
	7,  // 4: buildbarn.configuration.http.server.AuthenticationPolicy.jwt:type_name -> buildbarn.configuration.jwt.AuthorizationHeaderParserConfiguration
	3,  // 5: buildbarn.configuration.http.server.AuthenticationPolicy.oidc:type_name -> buildbarn.configuration.http.server.OIDCAuthenticationPolicy
	4,  // 6: buildbarn.configuration.http.server.AuthenticationPolicy.accept_header:type_name -> buildbarn.configuration.http.server.AcceptHeaderAuthenticationPolicy
	8,  // 7: buildbarn.configuration.http.server.AuthenticationPolicy.remote:type_name -> buildbarn.configuration.grpc.RemoteAuthenticationPolicy
	1,  // 8: buildbarn.configuration.http.server.AnyAuthenticationPolicy.policies:type_name -> buildbarn.configuration.http.server.AuthenticationPolicy
	9,  // 9: buildbarn.configuration.http.server.OIDCAuthenticationPolicy.use_id_token_claims:type_name -> google.protobuf.Empty
	10, // 10: buildbarn.configuration.http.server.OIDCAuthenticationPolicy.metadata_extraction_jmespath_expression:type_name -> buildbarn.configuration.jmespath.Expression
	11, // 11: buildbarn.configuration.http.server.OIDCAuthenticationPolicy.http_client:type_name -> buildbarn.configuration.http.client.Configuration
	1,  // 12: buildbarn.configuration.http.server.AcceptHeaderAuthenticationPolicy.policy:type_name -> buildbarn.configuration.http.server.AuthenticationPolicy
	13, // [13:13] is the sub-list for method output_type
	13, // [13:13] is the sub-list for method input_type
	13, // [13:13] is the sub-list for extension type_name
	13, // [13:13] is the sub-list for extension extendee
	0,  // [0:13] is the sub-list for field type_name
}

func init() {
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_init()
}
func file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_init() {
	if File_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto != nil {
		return
	}
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[1].OneofWrappers = []any{
		(*AuthenticationPolicy_Allow)(nil),
		(*AuthenticationPolicy_Any)(nil),
		(*AuthenticationPolicy_Deny)(nil),
		(*AuthenticationPolicy_Jwt)(nil),
		(*AuthenticationPolicy_Oidc)(nil),
		(*AuthenticationPolicy_AcceptHeader)(nil),
		(*AuthenticationPolicy_Remote)(nil),
	}
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes[3].OneofWrappers = []any{
		(*OIDCAuthenticationPolicy_UserInfoEndpointUrl)(nil),
		(*OIDCAuthenticationPolicy_UseIdTokenClaims)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDesc), len(file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   5,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_goTypes,
		DependencyIndexes: file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_depIdxs,
		MessageInfos:      file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_msgTypes,
	}.Build()
	File_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto = out.File
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_goTypes = nil
	file_github_com_buildbarn_bb_storage_pkg_proto_configuration_http_server_server_proto_depIdxs = nil
}
