From 67f1a53b8523b56aa10267fde135172e034c30c1 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Tue, 18 Aug 2026 13:01:59 +0000 Subject: [PATCH] ci: update dependencies --- deps/github.com/pomerium/enterprise-client | 2 +- src/pomerium/pb/routes_pb2.py | 112 ++++++++++----------- src/pomerium/pb/routes_pb2.pyi | 16 ++- src/pomerium/pb/settings_pb2.py | 76 +++++++------- src/pomerium/pb/settings_pb2.pyi | 86 +++++++++++++++- 5 files changed, 196 insertions(+), 96 deletions(-) diff --git a/deps/github.com/pomerium/enterprise-client b/deps/github.com/pomerium/enterprise-client index 3ba932f..cddffde 160000 --- a/deps/github.com/pomerium/enterprise-client +++ b/deps/github.com/pomerium/enterprise-client @@ -1 +1 @@ -Subproject commit 3ba932ff729df42ceaa7275ad9ed222e129c4769 +Subproject commit cddffdedb2b91afa99a9e085fe7f4d0bf19a984d diff --git a/src/pomerium/pb/routes_pb2.py b/src/pomerium/pb/routes_pb2.py index 75d9e51..045f97f 100644 --- a/src/pomerium/pb/routes_pb2.py +++ b/src/pomerium/pb/routes_pb2.py @@ -30,7 +30,7 @@ from validate import validate_pb2 as validate_dot_validate__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0croutes.proto\x12\x12pomerium.dashboard\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x0cpolicy.proto\x1a\x18route_health_check.proto\x1a\x1broute_redirect_action.proto\x1a\x17validate/validate.proto\"P\n\x12RouteRewriteHeader\x12\x0e\n\x06header\x18\x01 \x01(\t\x12\x10\n\x06prefix\x18\x03 \x01(\tH\x00\x12\r\n\x05value\x18\x02 \x01(\tB\t\n\x07matcher\"3\n\x13RouteDirectResponse\x12\x0e\n\x06status\x18\x01 \x01(\r\x12\x0c\n\x04\x62ody\x18\x02 \x01(\t\"Q\n\x0fJwtGroupsFilter\x12\x0e\n\x06groups\x18\x01 \x03(\t\x12\x1b\n\x0einfer_from_ppl\x18\x02 \x01(\x08H\x00\x88\x01\x01\x42\x11\n\x0f_infer_from_ppl\"\x9a\x02\n\x18\x43ircuitBreakerThresholds\x12\x1c\n\x0fmax_connections\x18\x01 \x01(\rH\x00\x88\x01\x01\x12!\n\x14max_pending_requests\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x19\n\x0cmax_requests\x18\x03 \x01(\rH\x02\x88\x01\x01\x12\x18\n\x0bmax_retries\x18\x04 \x01(\rH\x03\x88\x01\x01\x12!\n\x14max_connection_pools\x18\x05 \x01(\rH\x04\x88\x01\x01\x42\x12\n\x10_max_connectionsB\x17\n\x15_max_pending_requestsB\x0f\n\r_max_requestsB\x0e\n\x0c_max_retriesB\x17\n\x15_max_connection_pools\"o\n\x03MCP\x12/\n\x06server\x18\x01 \x01(\x0b\x32\x1d.pomerium.dashboard.MCPServerH\x00\x12/\n\x06\x63lient\x18\x02 \x01(\x0b\x32\x1d.pomerium.dashboard.MCPClientH\x00\x42\x06\n\x04mode\"\xf7\x01\n\tMCPServer\x12@\n\x0fupstream_oauth2\x18\x01 \x01(\x0b\x32\".pomerium.dashboard.UpstreamOAuth2H\x00\x88\x01\x01\x12\x1e\n\x11max_request_bytes\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x11\n\x04path\x18\x03 \x01(\tH\x02\x88\x01\x01\x12%\n\x18\x61uthorization_server_url\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x12\n\x10_upstream_oauth2B\x14\n\x12_max_request_bytesB\x07\n\x05_pathB\x1b\n\x19_authorization_server_url\"\x0b\n\tMCPClient\"\xa8\x02\n\x0eUpstreamOAuth2\x12\x11\n\tclient_id\x18\x01 \x01(\t\x12\x15\n\rclient_secret\x18\x02 \x01(\t\x12;\n\x0foauth2_endpoint\x18\x03 \x01(\x0b\x32\".pomerium.dashboard.OAuth2Endpoint\x12\x0e\n\x06scopes\x18\x04 \x03(\t\x12`\n\x18\x61uthorization_url_params\x18\x05 \x03(\x0b\x32>.pomerium.dashboard.UpstreamOAuth2.AuthorizationUrlParamsEntry\x1a=\n\x1b\x41uthorizationUrlParamsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x82\x01\n\x0eOAuth2Endpoint\x12\x10\n\x08\x61uth_url\x18\x01 \x01(\t\x12\x11\n\ttoken_url\x18\x02 \x01(\t\x12<\n\nauth_style\x18\x03 \x01(\x0e\x32#.pomerium.dashboard.OAuth2AuthStyleH\x00\x88\x01\x01\x42\r\n\x0b_auth_style\"\x9b\x1e\n\x05Route\x12\n\n\x02id\x18\x01 \x01(\t\x12\x14\n\x0cnamespace_id\x18\x1d \x01(\t\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bmodified_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\ndeleted_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x41 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08logo_url\x18\x42 \x01(\tH\x01\x88\x01\x01\x12\x11\n\tstat_name\x18/ \x01(\t\x12\x0c\n\x04\x66rom\x18\x06 \x01(\t\x12\n\n\x02to\x18\x07 \x03(\t\x12\x34\n\x08redirect\x18\x43 \x01(\x0b\x32\".pomerium.dashboard.RedirectAction\x12\x39\n\x08response\x18; \x01(\x0b\x32\'.pomerium.dashboard.RouteDirectResponse\x12\x13\n\x06prefix\x18\x08 \x01(\tH\x02\x88\x01\x01\x12\x11\n\x04path\x18\t \x01(\tH\x03\x88\x01\x01\x12\x12\n\x05regex\x18\n \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0eprefix_rewrite\x18$ \x01(\tH\x05\x88\x01\x01\x12\"\n\x15regex_rewrite_pattern\x18% \x01(\tH\x06\x88\x01\x01\x12\'\n\x1aregex_rewrite_substitution\x18& \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0chost_rewrite\x18\x1e \x01(\tH\x08\x88\x01\x01\x12 \n\x13host_rewrite_header\x18\x1f \x01(\tH\t\x88\x01\x01\x12,\n\x1fhost_path_regex_rewrite_pattern\x18 \x01(\tH\n\x88\x01\x01\x12\x31\n$host_path_regex_rewrite_substitution\x18! \x01(\tH\x0b\x88\x01\x01\x12!\n\x14regex_priority_order\x18- \x01(\x03H\x0c\x88\x01\x01\x12/\n\x07timeout\x18\r \x01(\x0b\x32\x19.google.protobuf.DurationH\r\x88\x01\x01\x12\x34\n\x0cidle_timeout\x18\x30 \x01(\x0b\x32\x19.google.protobuf.DurationH\x0e\x88\x01\x01\x12\x1d\n\x10\x61llow_websockets\x18\x0e \x01(\x08H\x0f\x88\x01\x01\x12\x17\n\nallow_spdy\x18\x31 \x01(\x08H\x10\x88\x01\x01\x12\x1c\n\x0ftls_skip_verify\x18\x0f \x01(\x08H\x11\x88\x01\x01\x12%\n\x18tls_upstream_server_name\x18\x33 \x01(\tH\x12\x88\x01\x01\x12\'\n\x1atls_downstream_server_name\x18\x34 \x01(\tH\x13\x88\x01\x01\x12&\n\x19tls_custom_ca_key_pair_id\x18) \x01(\tH\x14\x88\x01\x01\x12#\n\x16tls_client_key_pair_id\x18* \x01(\tH\x15\x88\x01\x01\x12\x31\n$tls_downstream_client_ca_key_pair_id\x18+ \x01(\tH\x16\x88\x01\x01\x12-\n tls_upstream_allow_renegotiation\x18\x37 \x01(\x08H\x17\x88\x01\x01\x12M\n\x13set_request_headers\x18\x17 \x03(\x0b\x32\x30.pomerium.dashboard.Route.SetRequestHeadersEntry\x12\x1e\n\x16remove_request_headers\x18\x18 \x03(\t\x12O\n\x14set_response_headers\x18\x38 \x03(\x0b\x32\x31.pomerium.dashboard.Route.SetResponseHeadersEntry\x12H\n\x18rewrite_response_headers\x18, \x03(\x0b\x32&.pomerium.dashboard.RouteRewriteHeader\x12!\n\x14preserve_host_header\x18\x19 \x01(\x08H\x18\x88\x01\x01\x12\"\n\x15pass_identity_headers\x18\x1a \x01(\x08H\x19\x88\x01\x01\x12-\n kubernetes_service_account_token\x18\x1b \x01(\tH\x1a\x88\x01\x01\x12\x32\n%kubernetes_service_account_token_file\x18< \x01(\tH\x1b\x88\x01\x01\x12\x35\n-enable_google_cloud_serverless_authentication\x18. \x01(\x08\x12@\n\x11jwt_issuer_format\x18= \x01(\x0e\x32 .pomerium.dashboard.IssuerFormatH\x1c\x88\x01\x01\x12G\n\x13\x62\x65\x61rer_token_format\x18\x44 \x01(\x0e\x32%.pomerium.dashboard.BearerTokenFormatH\x1d\x88\x01\x01\x12>\n\x11jwt_groups_filter\x18> \x01(\x0b\x32#.pomerium.dashboard.JwtGroupsFilter\x12\x1a\n\ridp_client_id\x18\x39 \x01(\tH\x1e\x88\x01\x01\x12\x1e\n\x11idp_client_secret\x18: \x01(\tH\x1f\x88\x01\x01\x12\x1a\n\x12show_error_details\x18\x35 \x01(\x08\x12\x15\n\roriginator_id\x18\x36 \x01(\t\x12\x12\n\npolicy_ids\x18\x1c \x03(\t\x12\x12\n\ndepends_on\x18H \x03(\t\x12\x14\n\x0cpolicy_names\x18\" \x03(\t\x12\x16\n\x0enamespace_name\x18# \x01(\t\x12\x1b\n\x13\x65nforced_policy_ids\x18? \x03(\t\x12\x1d\n\x15\x65nforced_policy_names\x18@ \x03(\t\x12U\n\"idp_access_token_allowed_audiences\x18\x45 \x01(\x0b\x32$.pomerium.dashboard.Route.StringListH \x88\x01\x01\x12U\n\x15load_balancing_policy\x18\x46 \x01(\x0e\x32\'.pomerium.dashboard.LoadBalancingPolicyB\x08\xfa\x42\x05\x82\x01\x02\x10\x01H!\x88\x01\x01\x12\x36\n\rhealth_checks\x18G \x03(\x0b\x32\x1f.pomerium.dashboard.HealthCheck\x12U\n\x1a\x63ircuit_breaker_thresholds\x18I \x01(\x0b\x32,.pomerium.dashboard.CircuitBreakerThresholdsH\"\x88\x01\x01\x12)\n\x03mcp\x18J \x01(\x0b\x32\x17.pomerium.dashboard.MCPH#\x88\x01\x01\x12$\n\x17healthy_panic_threshold\x18K \x01(\x05H$\x88\x01\x01\x12@\n\x0fupstream_tunnel\x18L \x01(\x0b\x32\".pomerium.dashboard.UpstreamTunnelH%\x88\x01\x01\x12\x41\n\x0e\x61llow_upgrades\x18M \x01(\x0b\x32$.pomerium.dashboard.Route.StringListH&\x88\x01\x01\x12?\n\x11session_recording\x18N \x01(\x0b\x32$.pomerium.dashboard.SessionRecording\x1a\x1c\n\nStringList\x12\x0e\n\x06values\x18\x01 \x03(\t\x1a\x38\n\x16SetRequestHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17SetResponseHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_logo_urlB\t\n\x07_prefixB\x07\n\x05_pathB\x08\n\x06_regexB\x11\n\x0f_prefix_rewriteB\x18\n\x16_regex_rewrite_patternB\x1d\n\x1b_regex_rewrite_substitutionB\x0f\n\r_host_rewriteB\x16\n\x14_host_rewrite_headerB\"\n _host_path_regex_rewrite_patternB\'\n%_host_path_regex_rewrite_substitutionB\x17\n\x15_regex_priority_orderB\n\n\x08_timeoutB\x0f\n\r_idle_timeoutB\x13\n\x11_allow_websocketsB\r\n\x0b_allow_spdyB\x12\n\x10_tls_skip_verifyB\x1b\n\x19_tls_upstream_server_nameB\x1d\n\x1b_tls_downstream_server_nameB\x1c\n\x1a_tls_custom_ca_key_pair_idB\x19\n\x17_tls_client_key_pair_idB\'\n%_tls_downstream_client_ca_key_pair_idB#\n!_tls_upstream_allow_renegotiationB\x17\n\x15_preserve_host_headerB\x18\n\x16_pass_identity_headersB#\n!_kubernetes_service_account_tokenB(\n&_kubernetes_service_account_token_fileB\x14\n\x12_jwt_issuer_formatB\x16\n\x14_bearer_token_formatB\x10\n\x0e_idp_client_idB\x14\n\x12_idp_client_secretB%\n#_idp_access_token_allowed_audiencesB\x18\n\x16_load_balancing_policyB\x1d\n\x1b_circuit_breaker_thresholdsB\x06\n\x04_mcpB\x1a\n\x18_healthy_panic_thresholdB\x12\n\x10_upstream_tunnelB\x11\n\x0f_allow_upgradesJ\x04\x08(\x10)J\x04\x08\x32\x10\x33J\x04\x08\'\x10(\"4\n\x10SessionRecording\x12\x14\n\x07\x65nabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x42\n\n\x08_enabled\">\n\x0eUpstreamTunnel\x12\x1a\n\rssh_policy_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_ssh_policy_id\"k\n\x11RouteWithPolicies\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\x12,\n\x08policies\x18\x02 \x03(\x0b\x32\x1a.pomerium.dashboard.Policy\" \n\x12\x44\x65leteRouteRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65leteRouteResponse\"\"\n\x13\x44\x65leteRoutesRequest\x12\x0b\n\x03ids\x18\x01 \x03(\t\"\x16\n\x14\x44\x65leteRoutesResponse\"\x1d\n\x0fGetRouteRequest\x12\n\n\x02id\x18\x01 \x01(\t\"<\n\x10GetRouteResponse\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\"\xce\x01\n\x11ListRoutesRequest\x12\x11\n\tnamespace\x18\x01 \x01(\t\x12\x12\n\x05query\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06offset\x18\x03 \x01(\x03H\x01\x88\x01\x01\x12\x12\n\x05limit\x18\x04 \x01(\x03H\x02\x88\x01\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x17\n\ncluster_id\x18\x06 \x01(\tH\x04\x88\x01\x01\x42\x08\n\x06_queryB\t\n\x07_offsetB\x08\n\x06_limitB\x0b\n\t_order_byB\r\n\x0b_cluster_id\"T\n\x12ListRoutesResponse\x12)\n\x06routes\x18\x01 \x03(\x0b\x32\x19.pomerium.dashboard.Route\x12\x13\n\x0btotal_count\x18\x02 \x01(\x03\"3\n\x11LoadRoutesRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63ontents\x18\x02 \x01(\x0c\"K\n\x12LoadRoutesResponse\x12\x35\n\x06routes\x18\x01 \x03(\x0b\x32%.pomerium.dashboard.RouteWithPolicies\";\n\x0fSetRouteRequest\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\"<\n\x10SetRouteResponse\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\"=\n\x10SetRoutesRequest\x12)\n\x06routes\x18\x01 \x03(\x0b\x32\x19.pomerium.dashboard.Route\">\n\x11SetRoutesResponse\x12)\n\x06routes\x18\x01 \x03(\x0b\x32\x19.pomerium.dashboard.Route\"@\n\x11MoveRoutesRequest\x12\x11\n\troute_ids\x18\x01 \x03(\t\x12\x18\n\x10new_namespace_id\x18\x02 \x01(\t\"\x14\n\x12MoveRoutesResponse*1\n\x0cIssuerFormat\x12\x12\n\x0eIssuerHostOnly\x10\x00\x12\r\n\tIssuerURI\x10\x01*\xab\x01\n\x11\x42\x65\x61rerTokenFormat\x12\x1f\n\x1b\x42\x45\x41RER_TOKEN_FORMAT_UNKNOWN\x10\x00\x12\x1f\n\x1b\x42\x45\x41RER_TOKEN_FORMAT_DEFAULT\x10\x01\x12(\n$BEARER_TOKEN_FORMAT_IDP_ACCESS_TOKEN\x10\x02\x12*\n&BEARER_TOKEN_FORMAT_IDP_IDENTITY_TOKEN\x10\x03*\xf5\x01\n\x13LoadBalancingPolicy\x12%\n!LOAD_BALANCING_POLICY_UNSPECIFIED\x10\x00\x12%\n!LOAD_BALANCING_POLICY_ROUND_ROBIN\x10\x01\x12 \n\x1cLOAD_BALANCING_POLICY_MAGLEV\x10\x02\x12 \n\x1cLOAD_BALANCING_POLICY_RANDOM\x10\x03\x12#\n\x1fLOAD_BALANCING_POLICY_RING_HASH\x10\x04\x12\'\n#LOAD_BALANCING_POLICY_LEAST_REQUEST\x10\x05*v\n\x0fOAuth2AuthStyle\x12!\n\x1dOAUTH2_AUTH_STYLE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bOAUTH2_AUTH_STYLE_IN_PARAMS\x10\x01\x12\x1f\n\x1bOAUTH2_AUTH_STYLE_IN_HEADER\x10\x02\x32\xf0\x05\n\x0cRouteService\x12^\n\x0b\x44\x65leteRoute\x12&.pomerium.dashboard.DeleteRouteRequest\x1a\'.pomerium.dashboard.DeleteRouteResponse\x12\x61\n\x0c\x44\x65leteRoutes\x12\'.pomerium.dashboard.DeleteRoutesRequest\x1a(.pomerium.dashboard.DeleteRoutesResponse\x12U\n\x08GetRoute\x12#.pomerium.dashboard.GetRouteRequest\x1a$.pomerium.dashboard.GetRouteResponse\x12[\n\nListRoutes\x12%.pomerium.dashboard.ListRoutesRequest\x1a&.pomerium.dashboard.ListRoutesResponse\x12[\n\nLoadRoutes\x12%.pomerium.dashboard.LoadRoutesRequest\x1a&.pomerium.dashboard.LoadRoutesResponse\x12U\n\x08SetRoute\x12#.pomerium.dashboard.SetRouteRequest\x1a$.pomerium.dashboard.SetRouteResponse\x12X\n\tSetRoutes\x12$.pomerium.dashboard.SetRoutesRequest\x1a%.pomerium.dashboard.SetRoutesResponse\x12[\n\nMoveRoutes\x12%.pomerium.dashboard.MoveRoutesRequest\x1a&.pomerium.dashboard.MoveRoutesResponseB-Z+github.com/pomerium/pomerium-console/pkg/pbb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0croutes.proto\x12\x12pomerium.dashboard\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x0cpolicy.proto\x1a\x18route_health_check.proto\x1a\x1broute_redirect_action.proto\x1a\x17validate/validate.proto\"P\n\x12RouteRewriteHeader\x12\x0e\n\x06header\x18\x01 \x01(\t\x12\x10\n\x06prefix\x18\x03 \x01(\tH\x00\x12\r\n\x05value\x18\x02 \x01(\tB\t\n\x07matcher\"3\n\x13RouteDirectResponse\x12\x0e\n\x06status\x18\x01 \x01(\r\x12\x0c\n\x04\x62ody\x18\x02 \x01(\t\"Q\n\x0fJwtGroupsFilter\x12\x0e\n\x06groups\x18\x01 \x03(\t\x12\x1b\n\x0einfer_from_ppl\x18\x02 \x01(\x08H\x00\x88\x01\x01\x42\x11\n\x0f_infer_from_ppl\"\x9a\x02\n\x18\x43ircuitBreakerThresholds\x12\x1c\n\x0fmax_connections\x18\x01 \x01(\rH\x00\x88\x01\x01\x12!\n\x14max_pending_requests\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x19\n\x0cmax_requests\x18\x03 \x01(\rH\x02\x88\x01\x01\x12\x18\n\x0bmax_retries\x18\x04 \x01(\rH\x03\x88\x01\x01\x12!\n\x14max_connection_pools\x18\x05 \x01(\rH\x04\x88\x01\x01\x42\x12\n\x10_max_connectionsB\x17\n\x15_max_pending_requestsB\x0f\n\r_max_requestsB\x0e\n\x0c_max_retriesB\x17\n\x15_max_connection_pools\"o\n\x03MCP\x12/\n\x06server\x18\x01 \x01(\x0b\x32\x1d.pomerium.dashboard.MCPServerH\x00\x12/\n\x06\x63lient\x18\x02 \x01(\x0b\x32\x1d.pomerium.dashboard.MCPClientH\x00\x42\x06\n\x04mode\"\xf7\x01\n\tMCPServer\x12@\n\x0fupstream_oauth2\x18\x01 \x01(\x0b\x32\".pomerium.dashboard.UpstreamOAuth2H\x00\x88\x01\x01\x12\x1e\n\x11max_request_bytes\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x11\n\x04path\x18\x03 \x01(\tH\x02\x88\x01\x01\x12%\n\x18\x61uthorization_server_url\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x12\n\x10_upstream_oauth2B\x14\n\x12_max_request_bytesB\x07\n\x05_pathB\x1b\n\x19_authorization_server_url\"\x0b\n\tMCPClient\"\xa8\x02\n\x0eUpstreamOAuth2\x12\x11\n\tclient_id\x18\x01 \x01(\t\x12\x15\n\rclient_secret\x18\x02 \x01(\t\x12;\n\x0foauth2_endpoint\x18\x03 \x01(\x0b\x32\".pomerium.dashboard.OAuth2Endpoint\x12\x0e\n\x06scopes\x18\x04 \x03(\t\x12`\n\x18\x61uthorization_url_params\x18\x05 \x03(\x0b\x32>.pomerium.dashboard.UpstreamOAuth2.AuthorizationUrlParamsEntry\x1a=\n\x1b\x41uthorizationUrlParamsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x82\x01\n\x0eOAuth2Endpoint\x12\x10\n\x08\x61uth_url\x18\x01 \x01(\t\x12\x11\n\ttoken_url\x18\x02 \x01(\t\x12<\n\nauth_style\x18\x03 \x01(\x0e\x32#.pomerium.dashboard.OAuth2AuthStyleH\x00\x88\x01\x01\x42\r\n\x0b_auth_style\"\xb7\x1e\n\x05Route\x12\n\n\x02id\x18\x01 \x01(\t\x12\x14\n\x0cnamespace_id\x18\x1d \x01(\t\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0bmodified_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\ndeleted_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x41 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08logo_url\x18\x42 \x01(\tH\x01\x88\x01\x01\x12\x11\n\tstat_name\x18/ \x01(\t\x12\x0c\n\x04\x66rom\x18\x06 \x01(\t\x12\n\n\x02to\x18\x07 \x03(\t\x12\x34\n\x08redirect\x18\x43 \x01(\x0b\x32\".pomerium.dashboard.RedirectAction\x12\x39\n\x08response\x18; \x01(\x0b\x32\'.pomerium.dashboard.RouteDirectResponse\x12\x13\n\x06prefix\x18\x08 \x01(\tH\x02\x88\x01\x01\x12\x11\n\x04path\x18\t \x01(\tH\x03\x88\x01\x01\x12\x12\n\x05regex\x18\n \x01(\tH\x04\x88\x01\x01\x12\x1b\n\x0eprefix_rewrite\x18$ \x01(\tH\x05\x88\x01\x01\x12\"\n\x15regex_rewrite_pattern\x18% \x01(\tH\x06\x88\x01\x01\x12\'\n\x1aregex_rewrite_substitution\x18& \x01(\tH\x07\x88\x01\x01\x12\x19\n\x0chost_rewrite\x18\x1e \x01(\tH\x08\x88\x01\x01\x12 \n\x13host_rewrite_header\x18\x1f \x01(\tH\t\x88\x01\x01\x12,\n\x1fhost_path_regex_rewrite_pattern\x18 \x01(\tH\n\x88\x01\x01\x12\x31\n$host_path_regex_rewrite_substitution\x18! \x01(\tH\x0b\x88\x01\x01\x12!\n\x14regex_priority_order\x18- \x01(\x03H\x0c\x88\x01\x01\x12/\n\x07timeout\x18\r \x01(\x0b\x32\x19.google.protobuf.DurationH\r\x88\x01\x01\x12\x34\n\x0cidle_timeout\x18\x30 \x01(\x0b\x32\x19.google.protobuf.DurationH\x0e\x88\x01\x01\x12\x1d\n\x10\x61llow_websockets\x18\x0e \x01(\x08H\x0f\x88\x01\x01\x12\x17\n\nallow_spdy\x18\x31 \x01(\x08H\x10\x88\x01\x01\x12\x1c\n\x0ftls_skip_verify\x18\x0f \x01(\x08H\x11\x88\x01\x01\x12%\n\x18tls_upstream_server_name\x18\x33 \x01(\tH\x12\x88\x01\x01\x12\'\n\x1atls_downstream_server_name\x18\x34 \x01(\tH\x13\x88\x01\x01\x12&\n\x19tls_custom_ca_key_pair_id\x18) \x01(\tH\x14\x88\x01\x01\x12#\n\x16tls_client_key_pair_id\x18* \x01(\tH\x15\x88\x01\x01\x12\x31\n$tls_downstream_client_ca_key_pair_id\x18+ \x01(\tH\x16\x88\x01\x01\x12-\n tls_upstream_allow_renegotiation\x18\x37 \x01(\x08H\x17\x88\x01\x01\x12M\n\x13set_request_headers\x18\x17 \x03(\x0b\x32\x30.pomerium.dashboard.Route.SetRequestHeadersEntry\x12\x1e\n\x16remove_request_headers\x18\x18 \x03(\t\x12O\n\x14set_response_headers\x18\x38 \x03(\x0b\x32\x31.pomerium.dashboard.Route.SetResponseHeadersEntry\x12H\n\x18rewrite_response_headers\x18, \x03(\x0b\x32&.pomerium.dashboard.RouteRewriteHeader\x12!\n\x14preserve_host_header\x18\x19 \x01(\x08H\x18\x88\x01\x01\x12\"\n\x15pass_identity_headers\x18\x1a \x01(\x08H\x19\x88\x01\x01\x12-\n kubernetes_service_account_token\x18\x1b \x01(\tH\x1a\x88\x01\x01\x12\x32\n%kubernetes_service_account_token_file\x18< \x01(\tH\x1b\x88\x01\x01\x12\x35\n-enable_google_cloud_serverless_authentication\x18. \x01(\x08\x12@\n\x11jwt_issuer_format\x18= \x01(\x0e\x32 .pomerium.dashboard.IssuerFormatH\x1c\x88\x01\x01\x12G\n\x13\x62\x65\x61rer_token_format\x18\x44 \x01(\x0e\x32%.pomerium.dashboard.BearerTokenFormatH\x1d\x88\x01\x01\x12>\n\x11jwt_groups_filter\x18> \x01(\x0b\x32#.pomerium.dashboard.JwtGroupsFilter\x12\x1a\n\ridp_client_id\x18\x39 \x01(\tH\x1e\x88\x01\x01\x12\x1e\n\x11idp_client_secret\x18: \x01(\tH\x1f\x88\x01\x01\x12\x1a\n\x12show_error_details\x18\x35 \x01(\x08\x12\x15\n\roriginator_id\x18\x36 \x01(\t\x12\x12\n\npolicy_ids\x18\x1c \x03(\t\x12\x12\n\ndepends_on\x18H \x03(\t\x12\x14\n\x0cpolicy_names\x18\" \x03(\t\x12\x16\n\x0enamespace_name\x18# \x01(\t\x12\x1b\n\x13\x65nforced_policy_ids\x18? \x03(\t\x12\x1d\n\x15\x65nforced_policy_names\x18@ \x03(\t\x12U\n\"idp_access_token_allowed_audiences\x18\x45 \x01(\x0b\x32$.pomerium.dashboard.Route.StringListH \x88\x01\x01\x12U\n\x15load_balancing_policy\x18\x46 \x01(\x0e\x32\'.pomerium.dashboard.LoadBalancingPolicyB\x08\xfa\x42\x05\x82\x01\x02\x10\x01H!\x88\x01\x01\x12\x36\n\rhealth_checks\x18G \x03(\x0b\x32\x1f.pomerium.dashboard.HealthCheck\x12U\n\x1a\x63ircuit_breaker_thresholds\x18I \x01(\x0b\x32,.pomerium.dashboard.CircuitBreakerThresholdsH\"\x88\x01\x01\x12)\n\x03mcp\x18J \x01(\x0b\x32\x17.pomerium.dashboard.MCPH#\x88\x01\x01\x12$\n\x17healthy_panic_threshold\x18K \x01(\x05H$\x88\x01\x01\x12@\n\x0fupstream_tunnel\x18L \x01(\x0b\x32\".pomerium.dashboard.UpstreamTunnelH%\x88\x01\x01\x12\x41\n\x0e\x61llow_upgrades\x18M \x01(\x0b\x32$.pomerium.dashboard.Route.StringListH&\x88\x01\x01\x12?\n\x11session_recording\x18N \x01(\x0b\x32$.pomerium.dashboard.SessionRecording\x12\x1a\n\x12identity_providers\x18O \x03(\t\x1a\x1c\n\nStringList\x12\x0e\n\x06values\x18\x01 \x03(\t\x1a\x38\n\x16SetRequestHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17SetResponseHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_descriptionB\x0b\n\t_logo_urlB\t\n\x07_prefixB\x07\n\x05_pathB\x08\n\x06_regexB\x11\n\x0f_prefix_rewriteB\x18\n\x16_regex_rewrite_patternB\x1d\n\x1b_regex_rewrite_substitutionB\x0f\n\r_host_rewriteB\x16\n\x14_host_rewrite_headerB\"\n _host_path_regex_rewrite_patternB\'\n%_host_path_regex_rewrite_substitutionB\x17\n\x15_regex_priority_orderB\n\n\x08_timeoutB\x0f\n\r_idle_timeoutB\x13\n\x11_allow_websocketsB\r\n\x0b_allow_spdyB\x12\n\x10_tls_skip_verifyB\x1b\n\x19_tls_upstream_server_nameB\x1d\n\x1b_tls_downstream_server_nameB\x1c\n\x1a_tls_custom_ca_key_pair_idB\x19\n\x17_tls_client_key_pair_idB\'\n%_tls_downstream_client_ca_key_pair_idB#\n!_tls_upstream_allow_renegotiationB\x17\n\x15_preserve_host_headerB\x18\n\x16_pass_identity_headersB#\n!_kubernetes_service_account_tokenB(\n&_kubernetes_service_account_token_fileB\x14\n\x12_jwt_issuer_formatB\x16\n\x14_bearer_token_formatB\x10\n\x0e_idp_client_idB\x14\n\x12_idp_client_secretB%\n#_idp_access_token_allowed_audiencesB\x18\n\x16_load_balancing_policyB\x1d\n\x1b_circuit_breaker_thresholdsB\x06\n\x04_mcpB\x1a\n\x18_healthy_panic_thresholdB\x12\n\x10_upstream_tunnelB\x11\n\x0f_allow_upgradesJ\x04\x08(\x10)J\x04\x08\x32\x10\x33J\x04\x08\'\x10(\"4\n\x10SessionRecording\x12\x14\n\x07\x65nabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x42\n\n\x08_enabled\">\n\x0eUpstreamTunnel\x12\x1a\n\rssh_policy_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x10\n\x0e_ssh_policy_id\"k\n\x11RouteWithPolicies\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\x12,\n\x08policies\x18\x02 \x03(\x0b\x32\x1a.pomerium.dashboard.Policy\" \n\x12\x44\x65leteRouteRequest\x12\n\n\x02id\x18\x01 \x01(\t\"\x15\n\x13\x44\x65leteRouteResponse\"\"\n\x13\x44\x65leteRoutesRequest\x12\x0b\n\x03ids\x18\x01 \x03(\t\"\x16\n\x14\x44\x65leteRoutesResponse\"\x1d\n\x0fGetRouteRequest\x12\n\n\x02id\x18\x01 \x01(\t\"<\n\x10GetRouteResponse\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\"\xce\x01\n\x11ListRoutesRequest\x12\x11\n\tnamespace\x18\x01 \x01(\t\x12\x12\n\x05query\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x06offset\x18\x03 \x01(\x03H\x01\x88\x01\x01\x12\x12\n\x05limit\x18\x04 \x01(\x03H\x02\x88\x01\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tH\x03\x88\x01\x01\x12\x17\n\ncluster_id\x18\x06 \x01(\tH\x04\x88\x01\x01\x42\x08\n\x06_queryB\t\n\x07_offsetB\x08\n\x06_limitB\x0b\n\t_order_byB\r\n\x0b_cluster_id\"T\n\x12ListRoutesResponse\x12)\n\x06routes\x18\x01 \x03(\x0b\x32\x19.pomerium.dashboard.Route\x12\x13\n\x0btotal_count\x18\x02 \x01(\x03\"3\n\x11LoadRoutesRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63ontents\x18\x02 \x01(\x0c\"K\n\x12LoadRoutesResponse\x12\x35\n\x06routes\x18\x01 \x03(\x0b\x32%.pomerium.dashboard.RouteWithPolicies\";\n\x0fSetRouteRequest\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\"<\n\x10SetRouteResponse\x12(\n\x05route\x18\x01 \x01(\x0b\x32\x19.pomerium.dashboard.Route\"=\n\x10SetRoutesRequest\x12)\n\x06routes\x18\x01 \x03(\x0b\x32\x19.pomerium.dashboard.Route\">\n\x11SetRoutesResponse\x12)\n\x06routes\x18\x01 \x03(\x0b\x32\x19.pomerium.dashboard.Route\"@\n\x11MoveRoutesRequest\x12\x11\n\troute_ids\x18\x01 \x03(\t\x12\x18\n\x10new_namespace_id\x18\x02 \x01(\t\"\x14\n\x12MoveRoutesResponse*1\n\x0cIssuerFormat\x12\x12\n\x0eIssuerHostOnly\x10\x00\x12\r\n\tIssuerURI\x10\x01*\xc8\x01\n\x11\x42\x65\x61rerTokenFormat\x12\x1f\n\x1b\x42\x45\x41RER_TOKEN_FORMAT_UNKNOWN\x10\x00\x12\x1f\n\x1b\x42\x45\x41RER_TOKEN_FORMAT_DEFAULT\x10\x01\x12(\n$BEARER_TOKEN_FORMAT_IDP_ACCESS_TOKEN\x10\x02\x12*\n&BEARER_TOKEN_FORMAT_IDP_IDENTITY_TOKEN\x10\x03\x12\x1b\n\x17\x42\x45\x41RER_TOKEN_FORMAT_JWT\x10\x04*\xf5\x01\n\x13LoadBalancingPolicy\x12%\n!LOAD_BALANCING_POLICY_UNSPECIFIED\x10\x00\x12%\n!LOAD_BALANCING_POLICY_ROUND_ROBIN\x10\x01\x12 \n\x1cLOAD_BALANCING_POLICY_MAGLEV\x10\x02\x12 \n\x1cLOAD_BALANCING_POLICY_RANDOM\x10\x03\x12#\n\x1fLOAD_BALANCING_POLICY_RING_HASH\x10\x04\x12\'\n#LOAD_BALANCING_POLICY_LEAST_REQUEST\x10\x05*v\n\x0fOAuth2AuthStyle\x12!\n\x1dOAUTH2_AUTH_STYLE_UNSPECIFIED\x10\x00\x12\x1f\n\x1bOAUTH2_AUTH_STYLE_IN_PARAMS\x10\x01\x12\x1f\n\x1bOAUTH2_AUTH_STYLE_IN_HEADER\x10\x02\x32\xf0\x05\n\x0cRouteService\x12^\n\x0b\x44\x65leteRoute\x12&.pomerium.dashboard.DeleteRouteRequest\x1a\'.pomerium.dashboard.DeleteRouteResponse\x12\x61\n\x0c\x44\x65leteRoutes\x12\'.pomerium.dashboard.DeleteRoutesRequest\x1a(.pomerium.dashboard.DeleteRoutesResponse\x12U\n\x08GetRoute\x12#.pomerium.dashboard.GetRouteRequest\x1a$.pomerium.dashboard.GetRouteResponse\x12[\n\nListRoutes\x12%.pomerium.dashboard.ListRoutesRequest\x1a&.pomerium.dashboard.ListRoutesResponse\x12[\n\nLoadRoutes\x12%.pomerium.dashboard.LoadRoutesRequest\x1a&.pomerium.dashboard.LoadRoutesResponse\x12U\n\x08SetRoute\x12#.pomerium.dashboard.SetRouteRequest\x1a$.pomerium.dashboard.SetRouteResponse\x12X\n\tSetRoutes\x12$.pomerium.dashboard.SetRoutesRequest\x1a%.pomerium.dashboard.SetRoutesResponse\x12[\n\nMoveRoutes\x12%.pomerium.dashboard.MoveRoutesRequest\x1a&.pomerium.dashboard.MoveRoutesResponseB-Z+github.com/pomerium/pomerium-console/pkg/pbb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -46,14 +46,14 @@ _globals['_ROUTE_SETRESPONSEHEADERSENTRY']._serialized_options = b'8\001' _globals['_ROUTE'].fields_by_name['load_balancing_policy']._loaded_options = None _globals['_ROUTE'].fields_by_name['load_balancing_policy']._serialized_options = b'\372B\005\202\001\002\020\001' - _globals['_ISSUERFORMAT']._serialized_start=6576 - _globals['_ISSUERFORMAT']._serialized_end=6625 - _globals['_BEARERTOKENFORMAT']._serialized_start=6628 - _globals['_BEARERTOKENFORMAT']._serialized_end=6799 - _globals['_LOADBALANCINGPOLICY']._serialized_start=6802 - _globals['_LOADBALANCINGPOLICY']._serialized_end=7047 - _globals['_OAUTH2AUTHSTYLE']._serialized_start=7049 - _globals['_OAUTH2AUTHSTYLE']._serialized_end=7167 + _globals['_ISSUERFORMAT']._serialized_start=6604 + _globals['_ISSUERFORMAT']._serialized_end=6653 + _globals['_BEARERTOKENFORMAT']._serialized_start=6656 + _globals['_BEARERTOKENFORMAT']._serialized_end=6856 + _globals['_LOADBALANCINGPOLICY']._serialized_start=6859 + _globals['_LOADBALANCINGPOLICY']._serialized_end=7104 + _globals['_OAUTH2AUTHSTYLE']._serialized_start=7106 + _globals['_OAUTH2AUTHSTYLE']._serialized_end=7224 _globals['_ROUTEREWRITEHEADER']._serialized_start=195 _globals['_ROUTEREWRITEHEADER']._serialized_end=275 _globals['_ROUTEDIRECTRESPONSE']._serialized_start=277 @@ -75,51 +75,51 @@ _globals['_OAUTH2ENDPOINT']._serialized_start=1374 _globals['_OAUTH2ENDPOINT']._serialized_end=1504 _globals['_ROUTE']._serialized_start=1507 - _globals['_ROUTE']._serialized_end=5374 - _globals['_ROUTE_STRINGLIST']._serialized_start=4266 - _globals['_ROUTE_STRINGLIST']._serialized_end=4294 - _globals['_ROUTE_SETREQUESTHEADERSENTRY']._serialized_start=4296 - _globals['_ROUTE_SETREQUESTHEADERSENTRY']._serialized_end=4352 - _globals['_ROUTE_SETRESPONSEHEADERSENTRY']._serialized_start=4354 - _globals['_ROUTE_SETRESPONSEHEADERSENTRY']._serialized_end=4411 - _globals['_SESSIONRECORDING']._serialized_start=5376 - _globals['_SESSIONRECORDING']._serialized_end=5428 - _globals['_UPSTREAMTUNNEL']._serialized_start=5430 - _globals['_UPSTREAMTUNNEL']._serialized_end=5492 - _globals['_ROUTEWITHPOLICIES']._serialized_start=5494 - _globals['_ROUTEWITHPOLICIES']._serialized_end=5601 - _globals['_DELETEROUTEREQUEST']._serialized_start=5603 - _globals['_DELETEROUTEREQUEST']._serialized_end=5635 - _globals['_DELETEROUTERESPONSE']._serialized_start=5637 - _globals['_DELETEROUTERESPONSE']._serialized_end=5658 - _globals['_DELETEROUTESREQUEST']._serialized_start=5660 - _globals['_DELETEROUTESREQUEST']._serialized_end=5694 - _globals['_DELETEROUTESRESPONSE']._serialized_start=5696 - _globals['_DELETEROUTESRESPONSE']._serialized_end=5718 - _globals['_GETROUTEREQUEST']._serialized_start=5720 - _globals['_GETROUTEREQUEST']._serialized_end=5749 - _globals['_GETROUTERESPONSE']._serialized_start=5751 - _globals['_GETROUTERESPONSE']._serialized_end=5811 - _globals['_LISTROUTESREQUEST']._serialized_start=5814 - _globals['_LISTROUTESREQUEST']._serialized_end=6020 - _globals['_LISTROUTESRESPONSE']._serialized_start=6022 - _globals['_LISTROUTESRESPONSE']._serialized_end=6106 - _globals['_LOADROUTESREQUEST']._serialized_start=6108 - _globals['_LOADROUTESREQUEST']._serialized_end=6159 - _globals['_LOADROUTESRESPONSE']._serialized_start=6161 - _globals['_LOADROUTESRESPONSE']._serialized_end=6236 - _globals['_SETROUTEREQUEST']._serialized_start=6238 - _globals['_SETROUTEREQUEST']._serialized_end=6297 - _globals['_SETROUTERESPONSE']._serialized_start=6299 - _globals['_SETROUTERESPONSE']._serialized_end=6359 - _globals['_SETROUTESREQUEST']._serialized_start=6361 - _globals['_SETROUTESREQUEST']._serialized_end=6422 - _globals['_SETROUTESRESPONSE']._serialized_start=6424 - _globals['_SETROUTESRESPONSE']._serialized_end=6486 - _globals['_MOVEROUTESREQUEST']._serialized_start=6488 - _globals['_MOVEROUTESREQUEST']._serialized_end=6552 - _globals['_MOVEROUTESRESPONSE']._serialized_start=6554 - _globals['_MOVEROUTESRESPONSE']._serialized_end=6574 - _globals['_ROUTESERVICE']._serialized_start=7170 - _globals['_ROUTESERVICE']._serialized_end=7922 + _globals['_ROUTE']._serialized_end=5402 + _globals['_ROUTE_STRINGLIST']._serialized_start=4294 + _globals['_ROUTE_STRINGLIST']._serialized_end=4322 + _globals['_ROUTE_SETREQUESTHEADERSENTRY']._serialized_start=4324 + _globals['_ROUTE_SETREQUESTHEADERSENTRY']._serialized_end=4380 + _globals['_ROUTE_SETRESPONSEHEADERSENTRY']._serialized_start=4382 + _globals['_ROUTE_SETRESPONSEHEADERSENTRY']._serialized_end=4439 + _globals['_SESSIONRECORDING']._serialized_start=5404 + _globals['_SESSIONRECORDING']._serialized_end=5456 + _globals['_UPSTREAMTUNNEL']._serialized_start=5458 + _globals['_UPSTREAMTUNNEL']._serialized_end=5520 + _globals['_ROUTEWITHPOLICIES']._serialized_start=5522 + _globals['_ROUTEWITHPOLICIES']._serialized_end=5629 + _globals['_DELETEROUTEREQUEST']._serialized_start=5631 + _globals['_DELETEROUTEREQUEST']._serialized_end=5663 + _globals['_DELETEROUTERESPONSE']._serialized_start=5665 + _globals['_DELETEROUTERESPONSE']._serialized_end=5686 + _globals['_DELETEROUTESREQUEST']._serialized_start=5688 + _globals['_DELETEROUTESREQUEST']._serialized_end=5722 + _globals['_DELETEROUTESRESPONSE']._serialized_start=5724 + _globals['_DELETEROUTESRESPONSE']._serialized_end=5746 + _globals['_GETROUTEREQUEST']._serialized_start=5748 + _globals['_GETROUTEREQUEST']._serialized_end=5777 + _globals['_GETROUTERESPONSE']._serialized_start=5779 + _globals['_GETROUTERESPONSE']._serialized_end=5839 + _globals['_LISTROUTESREQUEST']._serialized_start=5842 + _globals['_LISTROUTESREQUEST']._serialized_end=6048 + _globals['_LISTROUTESRESPONSE']._serialized_start=6050 + _globals['_LISTROUTESRESPONSE']._serialized_end=6134 + _globals['_LOADROUTESREQUEST']._serialized_start=6136 + _globals['_LOADROUTESREQUEST']._serialized_end=6187 + _globals['_LOADROUTESRESPONSE']._serialized_start=6189 + _globals['_LOADROUTESRESPONSE']._serialized_end=6264 + _globals['_SETROUTEREQUEST']._serialized_start=6266 + _globals['_SETROUTEREQUEST']._serialized_end=6325 + _globals['_SETROUTERESPONSE']._serialized_start=6327 + _globals['_SETROUTERESPONSE']._serialized_end=6387 + _globals['_SETROUTESREQUEST']._serialized_start=6389 + _globals['_SETROUTESREQUEST']._serialized_end=6450 + _globals['_SETROUTESRESPONSE']._serialized_start=6452 + _globals['_SETROUTESRESPONSE']._serialized_end=6514 + _globals['_MOVEROUTESREQUEST']._serialized_start=6516 + _globals['_MOVEROUTESREQUEST']._serialized_end=6580 + _globals['_MOVEROUTESRESPONSE']._serialized_start=6582 + _globals['_MOVEROUTESRESPONSE']._serialized_end=6602 + _globals['_ROUTESERVICE']._serialized_start=7227 + _globals['_ROUTESERVICE']._serialized_end=7979 # @@protoc_insertion_point(module_scope) diff --git a/src/pomerium/pb/routes_pb2.pyi b/src/pomerium/pb/routes_pb2.pyi index 1e25674..8849289 100644 --- a/src/pomerium/pb/routes_pb2.pyi +++ b/src/pomerium/pb/routes_pb2.pyi @@ -61,6 +61,7 @@ class _BearerTokenFormatEnumTypeWrapper(google.protobuf.internal.enum_type_wrapp BEARER_TOKEN_FORMAT_DEFAULT: _BearerTokenFormat.ValueType # 1 BEARER_TOKEN_FORMAT_IDP_ACCESS_TOKEN: _BearerTokenFormat.ValueType # 2 BEARER_TOKEN_FORMAT_IDP_IDENTITY_TOKEN: _BearerTokenFormat.ValueType # 3 + BEARER_TOKEN_FORMAT_JWT: _BearerTokenFormat.ValueType # 4 class BearerTokenFormat(_BearerTokenFormat, metaclass=_BearerTokenFormatEnumTypeWrapper): ... @@ -68,6 +69,7 @@ BEARER_TOKEN_FORMAT_UNKNOWN: BearerTokenFormat.ValueType # 0 BEARER_TOKEN_FORMAT_DEFAULT: BearerTokenFormat.ValueType # 1 BEARER_TOKEN_FORMAT_IDP_ACCESS_TOKEN: BearerTokenFormat.ValueType # 2 BEARER_TOKEN_FORMAT_IDP_IDENTITY_TOKEN: BearerTokenFormat.ValueType # 3 +BEARER_TOKEN_FORMAT_JWT: BearerTokenFormat.ValueType # 4 global___BearerTokenFormat = BearerTokenFormat class _LoadBalancingPolicy: @@ -398,7 +400,7 @@ global___OAuth2Endpoint = OAuth2Endpoint @typing.final class Route(google.protobuf.message.Message): """Route defines a proxy route's settings and policy associations - Next ID: 78 + Next ID: 80 """ DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -515,6 +517,7 @@ class Route(google.protobuf.message.Message): UPSTREAM_TUNNEL_FIELD_NUMBER: builtins.int ALLOW_UPGRADES_FIELD_NUMBER: builtins.int SESSION_RECORDING_FIELD_NUMBER: builtins.int + IDENTITY_PROVIDERS_FIELD_NUMBER: builtins.int id: builtins.str namespace_id: builtins.str name: builtins.str @@ -615,6 +618,14 @@ class Route(google.protobuf.message.Message): def allow_upgrades(self) -> global___Route.StringList: ... @property def session_recording(self) -> global___SessionRecording: ... + @property + def identity_providers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: + """Names of the identity_providers whose JWT bearer tokens this route accepts + (when bearer_token_format is BEARER_TOKEN_FORMAT_JWT). Each entry must be a + key in Settings.identity_providers. When empty, all configured providers + are accepted. + """ + def __init__( self, *, @@ -683,9 +694,10 @@ class Route(google.protobuf.message.Message): upstream_tunnel: global___UpstreamTunnel | None = ..., allow_upgrades: global___Route.StringList | None = ..., session_recording: global___SessionRecording | None = ..., + identity_providers: collections.abc.Iterable[builtins.str] | None = ..., ) -> None: ... def HasField(self, field_name: typing.Literal["_allow_spdy", b"_allow_spdy", "_allow_upgrades", b"_allow_upgrades", "_allow_websockets", b"_allow_websockets", "_bearer_token_format", b"_bearer_token_format", "_circuit_breaker_thresholds", b"_circuit_breaker_thresholds", "_description", b"_description", "_healthy_panic_threshold", b"_healthy_panic_threshold", "_host_path_regex_rewrite_pattern", b"_host_path_regex_rewrite_pattern", "_host_path_regex_rewrite_substitution", b"_host_path_regex_rewrite_substitution", "_host_rewrite", b"_host_rewrite", "_host_rewrite_header", b"_host_rewrite_header", "_idle_timeout", b"_idle_timeout", "_idp_access_token_allowed_audiences", b"_idp_access_token_allowed_audiences", "_idp_client_id", b"_idp_client_id", "_idp_client_secret", b"_idp_client_secret", "_jwt_issuer_format", b"_jwt_issuer_format", "_kubernetes_service_account_token", b"_kubernetes_service_account_token", "_kubernetes_service_account_token_file", b"_kubernetes_service_account_token_file", "_load_balancing_policy", b"_load_balancing_policy", "_logo_url", b"_logo_url", "_mcp", b"_mcp", "_pass_identity_headers", b"_pass_identity_headers", "_path", b"_path", "_prefix", b"_prefix", "_prefix_rewrite", b"_prefix_rewrite", "_preserve_host_header", b"_preserve_host_header", "_regex", b"_regex", "_regex_priority_order", b"_regex_priority_order", "_regex_rewrite_pattern", b"_regex_rewrite_pattern", "_regex_rewrite_substitution", b"_regex_rewrite_substitution", "_timeout", b"_timeout", "_tls_client_key_pair_id", b"_tls_client_key_pair_id", "_tls_custom_ca_key_pair_id", b"_tls_custom_ca_key_pair_id", "_tls_downstream_client_ca_key_pair_id", b"_tls_downstream_client_ca_key_pair_id", "_tls_downstream_server_name", b"_tls_downstream_server_name", "_tls_skip_verify", b"_tls_skip_verify", "_tls_upstream_allow_renegotiation", b"_tls_upstream_allow_renegotiation", "_tls_upstream_server_name", b"_tls_upstream_server_name", "_upstream_tunnel", b"_upstream_tunnel", "allow_spdy", b"allow_spdy", "allow_upgrades", b"allow_upgrades", "allow_websockets", b"allow_websockets", "bearer_token_format", b"bearer_token_format", "circuit_breaker_thresholds", b"circuit_breaker_thresholds", "created_at", b"created_at", "deleted_at", b"deleted_at", "description", b"description", "healthy_panic_threshold", b"healthy_panic_threshold", "host_path_regex_rewrite_pattern", b"host_path_regex_rewrite_pattern", "host_path_regex_rewrite_substitution", b"host_path_regex_rewrite_substitution", "host_rewrite", b"host_rewrite", "host_rewrite_header", b"host_rewrite_header", "idle_timeout", b"idle_timeout", "idp_access_token_allowed_audiences", b"idp_access_token_allowed_audiences", "idp_client_id", b"idp_client_id", "idp_client_secret", b"idp_client_secret", "jwt_groups_filter", b"jwt_groups_filter", "jwt_issuer_format", b"jwt_issuer_format", "kubernetes_service_account_token", b"kubernetes_service_account_token", "kubernetes_service_account_token_file", b"kubernetes_service_account_token_file", "load_balancing_policy", b"load_balancing_policy", "logo_url", b"logo_url", "mcp", b"mcp", "modified_at", b"modified_at", "pass_identity_headers", b"pass_identity_headers", "path", b"path", "prefix", b"prefix", "prefix_rewrite", b"prefix_rewrite", "preserve_host_header", b"preserve_host_header", "redirect", b"redirect", "regex", b"regex", "regex_priority_order", b"regex_priority_order", "regex_rewrite_pattern", b"regex_rewrite_pattern", "regex_rewrite_substitution", b"regex_rewrite_substitution", "response", b"response", "session_recording", b"session_recording", "timeout", b"timeout", "tls_client_key_pair_id", b"tls_client_key_pair_id", "tls_custom_ca_key_pair_id", b"tls_custom_ca_key_pair_id", "tls_downstream_client_ca_key_pair_id", b"tls_downstream_client_ca_key_pair_id", "tls_downstream_server_name", b"tls_downstream_server_name", "tls_skip_verify", b"tls_skip_verify", "tls_upstream_allow_renegotiation", b"tls_upstream_allow_renegotiation", "tls_upstream_server_name", b"tls_upstream_server_name", "upstream_tunnel", b"upstream_tunnel"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["_allow_spdy", b"_allow_spdy", "_allow_upgrades", b"_allow_upgrades", "_allow_websockets", b"_allow_websockets", "_bearer_token_format", b"_bearer_token_format", "_circuit_breaker_thresholds", b"_circuit_breaker_thresholds", "_description", b"_description", "_healthy_panic_threshold", b"_healthy_panic_threshold", "_host_path_regex_rewrite_pattern", b"_host_path_regex_rewrite_pattern", "_host_path_regex_rewrite_substitution", b"_host_path_regex_rewrite_substitution", "_host_rewrite", b"_host_rewrite", "_host_rewrite_header", b"_host_rewrite_header", "_idle_timeout", b"_idle_timeout", "_idp_access_token_allowed_audiences", b"_idp_access_token_allowed_audiences", "_idp_client_id", b"_idp_client_id", "_idp_client_secret", b"_idp_client_secret", "_jwt_issuer_format", b"_jwt_issuer_format", "_kubernetes_service_account_token", b"_kubernetes_service_account_token", "_kubernetes_service_account_token_file", b"_kubernetes_service_account_token_file", "_load_balancing_policy", b"_load_balancing_policy", "_logo_url", b"_logo_url", "_mcp", b"_mcp", "_pass_identity_headers", b"_pass_identity_headers", "_path", b"_path", "_prefix", b"_prefix", "_prefix_rewrite", b"_prefix_rewrite", "_preserve_host_header", b"_preserve_host_header", "_regex", b"_regex", "_regex_priority_order", b"_regex_priority_order", "_regex_rewrite_pattern", b"_regex_rewrite_pattern", "_regex_rewrite_substitution", b"_regex_rewrite_substitution", "_timeout", b"_timeout", "_tls_client_key_pair_id", b"_tls_client_key_pair_id", "_tls_custom_ca_key_pair_id", b"_tls_custom_ca_key_pair_id", "_tls_downstream_client_ca_key_pair_id", b"_tls_downstream_client_ca_key_pair_id", "_tls_downstream_server_name", b"_tls_downstream_server_name", "_tls_skip_verify", b"_tls_skip_verify", "_tls_upstream_allow_renegotiation", b"_tls_upstream_allow_renegotiation", "_tls_upstream_server_name", b"_tls_upstream_server_name", "_upstream_tunnel", b"_upstream_tunnel", "allow_spdy", b"allow_spdy", "allow_upgrades", b"allow_upgrades", "allow_websockets", b"allow_websockets", "bearer_token_format", b"bearer_token_format", "circuit_breaker_thresholds", b"circuit_breaker_thresholds", "created_at", b"created_at", "deleted_at", b"deleted_at", "depends_on", b"depends_on", "description", b"description", "enable_google_cloud_serverless_authentication", b"enable_google_cloud_serverless_authentication", "enforced_policy_ids", b"enforced_policy_ids", "enforced_policy_names", b"enforced_policy_names", "from", b"from", "health_checks", b"health_checks", "healthy_panic_threshold", b"healthy_panic_threshold", "host_path_regex_rewrite_pattern", b"host_path_regex_rewrite_pattern", "host_path_regex_rewrite_substitution", b"host_path_regex_rewrite_substitution", "host_rewrite", b"host_rewrite", "host_rewrite_header", b"host_rewrite_header", "id", b"id", "idle_timeout", b"idle_timeout", "idp_access_token_allowed_audiences", b"idp_access_token_allowed_audiences", "idp_client_id", b"idp_client_id", "idp_client_secret", b"idp_client_secret", "jwt_groups_filter", b"jwt_groups_filter", "jwt_issuer_format", b"jwt_issuer_format", "kubernetes_service_account_token", b"kubernetes_service_account_token", "kubernetes_service_account_token_file", b"kubernetes_service_account_token_file", "load_balancing_policy", b"load_balancing_policy", "logo_url", b"logo_url", "mcp", b"mcp", "modified_at", b"modified_at", "name", b"name", "namespace_id", b"namespace_id", "namespace_name", b"namespace_name", "originator_id", b"originator_id", "pass_identity_headers", b"pass_identity_headers", "path", b"path", "policy_ids", b"policy_ids", "policy_names", b"policy_names", "prefix", b"prefix", "prefix_rewrite", b"prefix_rewrite", "preserve_host_header", b"preserve_host_header", "redirect", b"redirect", "regex", b"regex", "regex_priority_order", b"regex_priority_order", "regex_rewrite_pattern", b"regex_rewrite_pattern", "regex_rewrite_substitution", b"regex_rewrite_substitution", "remove_request_headers", b"remove_request_headers", "response", b"response", "rewrite_response_headers", b"rewrite_response_headers", "session_recording", b"session_recording", "set_request_headers", b"set_request_headers", "set_response_headers", b"set_response_headers", "show_error_details", b"show_error_details", "stat_name", b"stat_name", "timeout", b"timeout", "tls_client_key_pair_id", b"tls_client_key_pair_id", "tls_custom_ca_key_pair_id", b"tls_custom_ca_key_pair_id", "tls_downstream_client_ca_key_pair_id", b"tls_downstream_client_ca_key_pair_id", "tls_downstream_server_name", b"tls_downstream_server_name", "tls_skip_verify", b"tls_skip_verify", "tls_upstream_allow_renegotiation", b"tls_upstream_allow_renegotiation", "tls_upstream_server_name", b"tls_upstream_server_name", "to", b"to", "upstream_tunnel", b"upstream_tunnel"]) -> None: ... + def ClearField(self, field_name: typing.Literal["_allow_spdy", b"_allow_spdy", "_allow_upgrades", b"_allow_upgrades", "_allow_websockets", b"_allow_websockets", "_bearer_token_format", b"_bearer_token_format", "_circuit_breaker_thresholds", b"_circuit_breaker_thresholds", "_description", b"_description", "_healthy_panic_threshold", b"_healthy_panic_threshold", "_host_path_regex_rewrite_pattern", b"_host_path_regex_rewrite_pattern", "_host_path_regex_rewrite_substitution", b"_host_path_regex_rewrite_substitution", "_host_rewrite", b"_host_rewrite", "_host_rewrite_header", b"_host_rewrite_header", "_idle_timeout", b"_idle_timeout", "_idp_access_token_allowed_audiences", b"_idp_access_token_allowed_audiences", "_idp_client_id", b"_idp_client_id", "_idp_client_secret", b"_idp_client_secret", "_jwt_issuer_format", b"_jwt_issuer_format", "_kubernetes_service_account_token", b"_kubernetes_service_account_token", "_kubernetes_service_account_token_file", b"_kubernetes_service_account_token_file", "_load_balancing_policy", b"_load_balancing_policy", "_logo_url", b"_logo_url", "_mcp", b"_mcp", "_pass_identity_headers", b"_pass_identity_headers", "_path", b"_path", "_prefix", b"_prefix", "_prefix_rewrite", b"_prefix_rewrite", "_preserve_host_header", b"_preserve_host_header", "_regex", b"_regex", "_regex_priority_order", b"_regex_priority_order", "_regex_rewrite_pattern", b"_regex_rewrite_pattern", "_regex_rewrite_substitution", b"_regex_rewrite_substitution", "_timeout", b"_timeout", "_tls_client_key_pair_id", b"_tls_client_key_pair_id", "_tls_custom_ca_key_pair_id", b"_tls_custom_ca_key_pair_id", "_tls_downstream_client_ca_key_pair_id", b"_tls_downstream_client_ca_key_pair_id", "_tls_downstream_server_name", b"_tls_downstream_server_name", "_tls_skip_verify", b"_tls_skip_verify", "_tls_upstream_allow_renegotiation", b"_tls_upstream_allow_renegotiation", "_tls_upstream_server_name", b"_tls_upstream_server_name", "_upstream_tunnel", b"_upstream_tunnel", "allow_spdy", b"allow_spdy", "allow_upgrades", b"allow_upgrades", "allow_websockets", b"allow_websockets", "bearer_token_format", b"bearer_token_format", "circuit_breaker_thresholds", b"circuit_breaker_thresholds", "created_at", b"created_at", "deleted_at", b"deleted_at", "depends_on", b"depends_on", "description", b"description", "enable_google_cloud_serverless_authentication", b"enable_google_cloud_serverless_authentication", "enforced_policy_ids", b"enforced_policy_ids", "enforced_policy_names", b"enforced_policy_names", "from", b"from", "health_checks", b"health_checks", "healthy_panic_threshold", b"healthy_panic_threshold", "host_path_regex_rewrite_pattern", b"host_path_regex_rewrite_pattern", "host_path_regex_rewrite_substitution", b"host_path_regex_rewrite_substitution", "host_rewrite", b"host_rewrite", "host_rewrite_header", b"host_rewrite_header", "id", b"id", "identity_providers", b"identity_providers", "idle_timeout", b"idle_timeout", "idp_access_token_allowed_audiences", b"idp_access_token_allowed_audiences", "idp_client_id", b"idp_client_id", "idp_client_secret", b"idp_client_secret", "jwt_groups_filter", b"jwt_groups_filter", "jwt_issuer_format", b"jwt_issuer_format", "kubernetes_service_account_token", b"kubernetes_service_account_token", "kubernetes_service_account_token_file", b"kubernetes_service_account_token_file", "load_balancing_policy", b"load_balancing_policy", "logo_url", b"logo_url", "mcp", b"mcp", "modified_at", b"modified_at", "name", b"name", "namespace_id", b"namespace_id", "namespace_name", b"namespace_name", "originator_id", b"originator_id", "pass_identity_headers", b"pass_identity_headers", "path", b"path", "policy_ids", b"policy_ids", "policy_names", b"policy_names", "prefix", b"prefix", "prefix_rewrite", b"prefix_rewrite", "preserve_host_header", b"preserve_host_header", "redirect", b"redirect", "regex", b"regex", "regex_priority_order", b"regex_priority_order", "regex_rewrite_pattern", b"regex_rewrite_pattern", "regex_rewrite_substitution", b"regex_rewrite_substitution", "remove_request_headers", b"remove_request_headers", "response", b"response", "rewrite_response_headers", b"rewrite_response_headers", "session_recording", b"session_recording", "set_request_headers", b"set_request_headers", "set_response_headers", b"set_response_headers", "show_error_details", b"show_error_details", "stat_name", b"stat_name", "timeout", b"timeout", "tls_client_key_pair_id", b"tls_client_key_pair_id", "tls_custom_ca_key_pair_id", b"tls_custom_ca_key_pair_id", "tls_downstream_client_ca_key_pair_id", b"tls_downstream_client_ca_key_pair_id", "tls_downstream_server_name", b"tls_downstream_server_name", "tls_skip_verify", b"tls_skip_verify", "tls_upstream_allow_renegotiation", b"tls_upstream_allow_renegotiation", "tls_upstream_server_name", b"tls_upstream_server_name", "to", b"to", "upstream_tunnel", b"upstream_tunnel"]) -> None: ... @typing.overload def WhichOneof(self, oneof_group: typing.Literal["_allow_spdy", b"_allow_spdy"]) -> typing.Literal["allow_spdy"] | None: ... @typing.overload diff --git a/src/pomerium/pb/settings_pb2.py b/src/pomerium/pb/settings_pb2.py index b989937..b394b3c 100644 --- a/src/pomerium/pb/settings_pb2.py +++ b/src/pomerium/pb/settings_pb2.py @@ -28,7 +28,7 @@ import pomerium.pb.routes_pb2 as routes__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0esettings.proto\x12\x12pomerium.dashboard\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x0croutes.proto\"\x85\x01\n\x0f\x43onsoleSettings\x12\x1e\n\x16\x65nable_feedback_widget\x18\x01 \x01(\x08\x12\x16\n\x0euse_changesets\x18\x02 \x01(\x08\x12!\n\x19\x65nable_remote_diagnostics\x18\x03 \x01(\x08\x12\x17\n\x0finstallation_id\x18\x04 \x01(\t\"\x8b>\n\x08Settings\x12\n\n\x02id\x18k \x01(\t\x12\x17\n\ncluster_id\x18l \x01(\tH\x00\x88\x01\x01\x12/\n\x0bmodified_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1c\n\x0finstallation_id\x18\x44 \x01(\tH\x01\x88\x01\x01\x12\x16\n\tlog_level\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0fproxy_log_level\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rshared_secret\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x15\n\x08services\x18\x06 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x07 \x01(\tH\x06\x88\x01\x01\x12\x1c\n\x0finsecure_server\x18\x08 \x01(\x08H\x07\x88\x01\x01\x12@\n\x18\x64ns_failure_refresh_rate\x18x \x01(\x0b\x32\x19.google.protobuf.DurationH\x08\x88\x01\x01\x12\x1e\n\x11\x64ns_lookup_family\x18< \x01(\tH\t\x88\x01\x01\x12\x39\n\x11\x64ns_query_timeout\x18w \x01(\x0b\x32\x19.google.protobuf.DurationH\n\x88\x01\x01\x12\x1c\n\x0f\x64ns_query_tries\x18v \x01(\rH\x0b\x88\x01\x01\x12\x38\n\x10\x64ns_refresh_rate\x18y \x01(\x0b\x32\x19.google.protobuf.DurationH\x0c\x88\x01\x01\x12 \n\x13\x64ns_udp_max_queries\x18t \x01(\rH\r\x88\x01\x01\x12\x18\n\x0b\x64ns_use_tcp\x18u \x01(\x08H\x0e\x88\x01\x01\x12>\n\x0c\x63\x65rtificates\x18\t \x03(\x0b\x32(.pomerium.dashboard.Settings.Certificate\x12\x1f\n\x12http_redirect_addr\x18\n \x01(\tH\x0f\x88\x01\x01\x12\x34\n\x0ctimeout_read\x18\x0b \x01(\x0b\x32\x19.google.protobuf.DurationH\x10\x88\x01\x01\x12\x35\n\rtimeout_write\x18\x0c \x01(\x0b\x32\x19.google.protobuf.DurationH\x11\x88\x01\x01\x12\x34\n\x0ctimeout_idle\x18\r \x01(\x0b\x32\x19.google.protobuf.DurationH\x12\x88\x01\x01\x12%\n\x18\x61uthenticate_service_url\x18\x0e \x01(\tH\x13\x88\x01\x01\x12\x18\n\x0b\x63ookie_name\x18\x10 \x01(\tH\x14\x88\x01\x01\x12\x1a\n\rcookie_secret\x18\x11 \x01(\tH\x15\x88\x01\x01\x12\x1a\n\rcookie_domain\x18\x12 \x01(\tH\x16\x88\x01\x01\x12\x1a\n\rcookie_secure\x18\x13 \x01(\x08H\x17\x88\x01\x01\x12\x1d\n\x10\x63ookie_http_only\x18\x14 \x01(\x08H\x18\x88\x01\x01\x12\x1d\n\x10\x63ookie_same_site\x18P \x01(\tH\x19\x88\x01\x01\x12\x35\n\rcookie_expire\x18\x15 \x01(\x0b\x32\x19.google.protobuf.DurationH\x1a\x88\x01\x01\x12\x1a\n\ridp_client_id\x18\x16 \x01(\tH\x1b\x88\x01\x01\x12\x1e\n\x11idp_client_secret\x18\x17 \x01(\tH\x1c\x88\x01\x01\x12\x19\n\x0cidp_provider\x18\x18 \x01(\tH\x1d\x88\x01\x01\x12\x1d\n\x10idp_provider_url\x18\x19 \x01(\tH\x1e\x88\x01\x01\x12\x0e\n\x06scopes\x18\x1a \x03(\t\x12 \n\x13idp_service_account\x18\x1b \x01(\tH\x1f\x88\x01\x01\x12\x45\n\x1didp_refresh_directory_timeout\x18\x1c \x01(\x0b\x32\x19.google.protobuf.DurationH \x88\x01\x01\x12\x46\n\x1eidp_refresh_directory_interval\x18\x1d \x01(\x0b\x32\x19.google.protobuf.DurationH!\x88\x01\x01\x12G\n\x0erequest_params\x18\x1e \x03(\x0b\x32/.pomerium.dashboard.Settings.RequestParamsEntry\x12\"\n\x15\x61uthorize_service_url\x18 \x01(\tH\"\x88\x01\x01\x12\"\n\x15\x63\x65rtificate_authority\x18\" \x01(\tH#\x88\x01\x01\x12\'\n\x1a\x63\x65rtificate_authority_file\x18# \x01(\tH$\x88\x01\x01\x12.\n!certificate_authority_key_pair_id\x18@ \x01(\tH%\x88\x01\x01\x12R\n\x14set_response_headers\x18\x43 \x03(\x0b\x32\x34.pomerium.dashboard.Settings.SetResponseHeadersEntry\x12N\n\x12jwt_claims_headers\x18\x42 \x03(\x0b\x32\x32.pomerium.dashboard.Settings.JwtClaimsHeadersEntry\x12>\n\x11jwt_groups_filter\x18W \x01(\x0b\x32#.pomerium.dashboard.JwtGroupsFilter\x12@\n\x11jwt_issuer_format\x18j \x01(\x0e\x32 .pomerium.dashboard.IssuerFormatH&\x88\x01\x01\x12@\n\x18\x64\x65\x66\x61ult_upstream_timeout\x18\' \x01(\x0b\x32\x19.google.protobuf.DurationH\'\x88\x01\x01\x12\x1c\n\x0fmetrics_address\x18( \x01(\tH(\x88\x01\x01\x12!\n\x14otel_traces_exporter\x18X \x01(\tH)\x88\x01\x01\x12$\n\x17otel_traces_sampler_arg\x18Y \x01(\x01H*\x88\x01\x01\x12 \n\x18otel_resource_attributes\x18Z \x03(\t\x12\x1b\n\x0eotel_log_level\x18[ \x01(\tH+\x88\x01\x01\x12.\n!otel_attribute_value_length_limit\x18\\ \x01(\x05H,\x88\x01\x01\x12(\n\x1botel_exporter_otlp_endpoint\x18] \x01(\tH-\x88\x01\x01\x12/\n\"otel_exporter_otlp_traces_endpoint\x18^ \x01(\tH.\x88\x01\x01\x12(\n\x1botel_exporter_otlp_protocol\x18_ \x01(\tH/\x88\x01\x01\x12/\n\"otel_exporter_otlp_traces_protocol\x18` \x01(\tH0\x88\x01\x01\x12\"\n\x1aotel_exporter_otlp_headers\x18\x61 \x03(\t\x12)\n!otel_exporter_otlp_traces_headers\x18\x62 \x03(\t\x12\x42\n\x1aotel_exporter_otlp_timeout\x18\x63 \x01(\x0b\x32\x19.google.protobuf.DurationH1\x88\x01\x01\x12I\n!otel_exporter_otlp_traces_timeout\x18\x64 \x01(\x0b\x32\x19.google.protobuf.DurationH2\x88\x01\x01\x12?\n\x17otel_bsp_schedule_delay\x18\x65 \x01(\x0b\x32\x19.google.protobuf.DurationH3\x88\x01\x01\x12+\n\x1eotel_bsp_max_export_batch_size\x18\x66 \x01(\x05H4\x88\x01\x01\x12\x19\n\x0cgrpc_address\x18. \x01(\tH5\x88\x01\x01\x12\x1a\n\rgrpc_insecure\x18/ \x01(\x08H6\x88\x01\x01\x12\x1e\n\x11\x63\x61\x63he_service_url\x18\x33 \x01(\tH7\x88\x01\x01\x12#\n\x16\x64\x61tabroker_service_url\x18\x34 \x01(\tH8\x88\x01\x01\x12\x16\n\tclient_ca\x18\x35 \x01(\tH9\x88\x01\x01\x12\x1b\n\x0e\x63lient_ca_file\x18\x36 \x01(\tH:\x88\x01\x01\x12\"\n\x15\x63lient_ca_key_pair_id\x18\x41 \x01(\tH;\x88\x01\x01\x12\x43\n6google_cloud_serverless_authentication_service_account\x18\x37 \x01(\tH<\x88\x01\x01\x12\x15\n\x08\x61utocert\x18\x38 \x01(\x08H=\x88\x01\x01\x12!\n\x14\x61utocert_use_staging\x18\x39 \x01(\x08H>\x88\x01\x01\x12!\n\x14\x61utocert_must_staple\x18: \x01(\x08H?\x88\x01\x01\x12\x19\n\x0c\x61utocert_dir\x18; \x01(\tH@\x88\x01\x01\x12\x1c\n\x0fskip_xff_append\x18? \x01(\x08HA\x88\x01\x01\x12\x1a\n\rprimary_color\x18\x45 \x01(\tHB\x88\x01\x01\x12\x1c\n\x0fsecondary_color\x18\x46 \x01(\tHC\x88\x01\x01\x12#\n\x16\x64\x61rkmode_primary_color\x18G \x01(\tHD\x88\x01\x01\x12%\n\x18\x64\x61rkmode_secondary_color\x18H \x01(\tHE\x88\x01\x01\x12\x15\n\x08logo_url\x18I \x01(\tHF\x88\x01\x01\x12\x18\n\x0b\x66\x61vicon_url\x18J \x01(\tHG\x88\x01\x01\x12*\n\x1d\x65rror_message_first_paragraph\x18K \x01(\tHH\x88\x01\x01\x12\x1e\n\x11identity_provider\x18L \x01(\tHI\x88\x01\x01\x12?\n\x19identity_provider_options\x18M \x01(\x0b\x32\x17.google.protobuf.StructHJ\x88\x01\x01\x12J\n\"identity_provider_refresh_interval\x18N \x01(\x0b\x32\x19.google.protobuf.DurationHK\x88\x01\x01\x12I\n!identity_provider_refresh_timeout\x18O \x01(\x0b\x32\x19.google.protobuf.DurationHL\x88\x01\x01\x12G\n\x11\x61\x63\x63\x65ss_log_fields\x18R \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHM\x88\x01\x01\x12J\n\x14\x61uthorize_log_fields\x18S \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHN\x88\x01\x01\x12\"\n\x15pass_identity_headers\x18T \x01(\x08HO\x88\x01\x01\x12\x15\n\roriginator_id\x18g \x01(\t\x12G\n\x13\x62\x65\x61rer_token_format\x18h \x01(\x0e\x32%.pomerium.dashboard.BearerTokenFormatHP\x88\x01\x01\x12X\n\"idp_access_token_allowed_audiences\x18i \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHQ\x88\x01\x01\x12\x36\n\ncodec_type\x18m \x01(\x0e\x32\x1d.pomerium.dashboard.CodecTypeHR\x88\x01\x01\x12U\n\x1a\x63ircuit_breaker_thresholds\x18n \x01(\x0b\x32,.pomerium.dashboard.CircuitBreakerThresholdsHS\x88\x01\x01\x12\x18\n\x0bssh_address\x18o \x01(\tHT\x88\x01\x01\x12H\n\x12ssh_host_key_files\x18p \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHU\x88\x01\x01\x12\x43\n\rssh_host_keys\x18q \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHV\x88\x01\x01\x12!\n\x14ssh_user_ca_key_file\x18r \x01(\tHW\x88\x01\x01\x12\x1c\n\x0fssh_user_ca_key\x18s \x01(\tHX\x88\x01\x01\x12U\n\x1fmcp_allowed_as_metadata_domains\x18~ \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHY\x88\x01\x01\x12S\n\x1dmcp_allowed_client_id_domains\x18z \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHZ\x88\x01\x01\x12&\n\x19session_recording_enabled\x18{ \x01(\x08H[\x88\x01\x01\x12\x42\n\x0c\x62lob_storage\x18| \x01(\x0b\x32\'.pomerium.dashboard.BlobStorageSettingsH\\\x88\x01\x01\x12\"\n\x15\x61uto_apply_changesets\x18} \x01(\x08H]\x88\x01\x01\x12\x44\n\x0e\x61llow_upgrades\x18\x7f \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListH^\x88\x01\x01\x12O\n\x18\x65nvoy_dynamic_extensions\x18\x80\x01 \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListH_\x88\x01\x01\x12+\n\x1dsession_recording_concurrency\x18\x81\x01 \x01(\rH`\x88\x01\x01\x12\x1c\n\x0enormalize_path\x18\x82\x01 \x01(\x08Ha\x88\x01\x01\x12\x1b\n\rmerge_slashes\x18\x83\x01 \x01(\x08Hb\x88\x01\x01\x12`\n path_with_escaped_slashes_action\x18\x84\x01 \x01(\x0e\x32\x30.pomerium.dashboard.PathWithEscapedSlashesActionHc\x88\x01\x01\x12_\n\x1fheaders_with_underscores_action\x18\x85\x01 \x01(\x0e\x32\x30.pomerium.dashboard.HeadersWithUnderscoresActionHd\x88\x01\x01\x1aI\n\x0b\x43\x65rtificate\x12\x12\n\ncert_bytes\x18\x03 \x01(\x0c\x12\x11\n\tkey_bytes\x18\x04 \x01(\x0c\x12\x13\n\x0bkey_pair_id\x18\x05 \x01(\t\x1a\x1c\n\nStringList\x12\x0e\n\x06values\x18\x01 \x03(\t\x1a\x34\n\x12RequestParamsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17SetResponseHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x37\n\x15JwtClaimsHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\r\n\x0b_cluster_idB\x12\n\x10_installation_idB\x0c\n\n_log_levelB\x12\n\x10_proxy_log_levelB\x10\n\x0e_shared_secretB\x0b\n\t_servicesB\n\n\x08_addressB\x12\n\x10_insecure_serverB\x1b\n\x19_dns_failure_refresh_rateB\x14\n\x12_dns_lookup_familyB\x14\n\x12_dns_query_timeoutB\x12\n\x10_dns_query_triesB\x13\n\x11_dns_refresh_rateB\x16\n\x14_dns_udp_max_queriesB\x0e\n\x0c_dns_use_tcpB\x15\n\x13_http_redirect_addrB\x0f\n\r_timeout_readB\x10\n\x0e_timeout_writeB\x0f\n\r_timeout_idleB\x1b\n\x19_authenticate_service_urlB\x0e\n\x0c_cookie_nameB\x10\n\x0e_cookie_secretB\x10\n\x0e_cookie_domainB\x10\n\x0e_cookie_secureB\x13\n\x11_cookie_http_onlyB\x13\n\x11_cookie_same_siteB\x10\n\x0e_cookie_expireB\x10\n\x0e_idp_client_idB\x14\n\x12_idp_client_secretB\x0f\n\r_idp_providerB\x13\n\x11_idp_provider_urlB\x16\n\x14_idp_service_accountB \n\x1e_idp_refresh_directory_timeoutB!\n\x1f_idp_refresh_directory_intervalB\x18\n\x16_authorize_service_urlB\x18\n\x16_certificate_authorityB\x1d\n\x1b_certificate_authority_fileB$\n\"_certificate_authority_key_pair_idB\x14\n\x12_jwt_issuer_formatB\x1b\n\x19_default_upstream_timeoutB\x12\n\x10_metrics_addressB\x17\n\x15_otel_traces_exporterB\x1a\n\x18_otel_traces_sampler_argB\x11\n\x0f_otel_log_levelB$\n\"_otel_attribute_value_length_limitB\x1e\n\x1c_otel_exporter_otlp_endpointB%\n#_otel_exporter_otlp_traces_endpointB\x1e\n\x1c_otel_exporter_otlp_protocolB%\n#_otel_exporter_otlp_traces_protocolB\x1d\n\x1b_otel_exporter_otlp_timeoutB$\n\"_otel_exporter_otlp_traces_timeoutB\x1a\n\x18_otel_bsp_schedule_delayB!\n\x1f_otel_bsp_max_export_batch_sizeB\x0f\n\r_grpc_addressB\x10\n\x0e_grpc_insecureB\x14\n\x12_cache_service_urlB\x19\n\x17_databroker_service_urlB\x0c\n\n_client_caB\x11\n\x0f_client_ca_fileB\x18\n\x16_client_ca_key_pair_idB9\n7_google_cloud_serverless_authentication_service_accountB\x0b\n\t_autocertB\x17\n\x15_autocert_use_stagingB\x17\n\x15_autocert_must_stapleB\x0f\n\r_autocert_dirB\x12\n\x10_skip_xff_appendB\x10\n\x0e_primary_colorB\x12\n\x10_secondary_colorB\x19\n\x17_darkmode_primary_colorB\x1b\n\x19_darkmode_secondary_colorB\x0b\n\t_logo_urlB\x0e\n\x0c_favicon_urlB \n\x1e_error_message_first_paragraphB\x14\n\x12_identity_providerB\x1c\n\x1a_identity_provider_optionsB%\n#_identity_provider_refresh_intervalB$\n\"_identity_provider_refresh_timeoutB\x14\n\x12_access_log_fieldsB\x17\n\x15_authorize_log_fieldsB\x18\n\x16_pass_identity_headersB\x16\n\x14_bearer_token_formatB%\n#_idp_access_token_allowed_audiencesB\r\n\x0b_codec_typeB\x1d\n\x1b_circuit_breaker_thresholdsB\x0e\n\x0c_ssh_addressB\x15\n\x13_ssh_host_key_filesB\x10\n\x0e_ssh_host_keysB\x17\n\x15_ssh_user_ca_key_fileB\x12\n\x10_ssh_user_ca_keyB\"\n _mcp_allowed_as_metadata_domainsB \n\x1e_mcp_allowed_client_id_domainsB\x1c\n\x1a_session_recording_enabledB\x0f\n\r_blob_storageB\x18\n\x16_auto_apply_changesetsB\x11\n\x0f_allow_upgradesB\x1b\n\x19_envoy_dynamic_extensionsB \n\x1e_session_recording_concurrencyB\x11\n\x0f_normalize_pathB\x10\n\x0e_merge_slashesB#\n!_path_with_escaped_slashes_actionB\"\n _headers_with_underscores_actionJ\x04\x08\x0f\x10\x10J\x04\x08)\x10*J\x04\x08*\x10+J\x04\x08U\x10VJ\x04\x08V\x10W\"m\n\x13\x42lobStorageSettings\x12\x17\n\nbucket_uri\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0emanaged_prefix\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_bucket_uriB\x11\n\x0f_managed_prefix\"\x1b\n\x19GetConsoleSettingsRequest\"[\n\x1aGetConsoleSettingsResponse\x12=\n\x10\x63onsole_settings\x18\x01 \x01(\x0b\x32#.pomerium.dashboard.ConsoleSettings\"<\n\x12GetSettingsRequest\x12\x17\n\ncluster_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_cluster_id\"E\n\x13GetSettingsResponse\x12.\n\x08settings\x18\x01 \x01(\x0b\x32\x1c.pomerium.dashboard.Settings\"D\n\x12SetSettingsRequest\x12.\n\x08settings\x18\x01 \x01(\x0b\x32\x1c.pomerium.dashboard.Settings\"E\n\x13SetSettingsResponse\x12.\n\x08settings\x18\x01 \x01(\x0b\x32\x1c.pomerium.dashboard.Settings*z\n\tCodecType\x12\x16\n\x12\x43ODEC_TYPE_UNKNOWN\x10\x00\x12\x13\n\x0f\x43ODEC_TYPE_AUTO\x10\x01\x12\x14\n\x10\x43ODEC_TYPE_HTTP1\x10\x02\x12\x14\n\x10\x43ODEC_TYPE_HTTP2\x10\x03\x12\x14\n\x10\x43ODEC_TYPE_HTTP3\x10\x04*\xdb\x01\n\x1cHeadersWithUnderscoresAction\x12+\n\'HEADERS_WITH_UNDERSCORES_ACTION_UNKNOWN\x10\x00\x12)\n%HEADERS_WITH_UNDERSCORES_ACTION_ALLOW\x10\x01\x12\x32\n.HEADERS_WITH_UNDERSCORES_ACTION_REJECT_REQUEST\x10\x02\x12/\n+HEADERS_WITH_UNDERSCORES_ACTION_DROP_HEADER\x10\x03*\xad\x02\n\x1cPathWithEscapedSlashesAction\x12,\n(PATH_WITH_ESCAPED_SLASHES_ACTION_UNKNOWN\x10\x00\x12\x33\n/PATH_WITH_ESCAPED_SLASHES_ACTION_KEEP_UNCHANGED\x10\x01\x12\x33\n/PATH_WITH_ESCAPED_SLASHES_ACTION_REJECT_REQUEST\x10\x02\x12:\n6PATH_WITH_ESCAPED_SLASHES_ACTION_UNESCAPE_AND_REDIRECT\x10\x03\x12\x39\n5PATH_WITH_ESCAPED_SLASHES_ACTION_UNESCAPE_AND_FORWARD\x10\x04\x32\xae\x03\n\x0fSettingsService\x12^\n\x0bGetSettings\x12&.pomerium.dashboard.GetSettingsRequest\x1a\'.pomerium.dashboard.GetSettingsResponse\x12^\n\x0bSetSettings\x12&.pomerium.dashboard.SetSettingsRequest\x1a\'.pomerium.dashboard.SetSettingsResponse\x12\x66\n\x13GetBrandingSettings\x12&.pomerium.dashboard.GetSettingsRequest\x1a\'.pomerium.dashboard.GetSettingsResponse\x12s\n\x12GetConsoleSettings\x12-.pomerium.dashboard.GetConsoleSettingsRequest\x1a..pomerium.dashboard.GetConsoleSettingsResponseB-Z+github.com/pomerium/pomerium-console/pkg/pbb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0esettings.proto\x12\x12pomerium.dashboard\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x0croutes.proto\"\x85\x01\n\x0f\x43onsoleSettings\x12\x1e\n\x16\x65nable_feedback_widget\x18\x01 \x01(\x08\x12\x16\n\x0euse_changesets\x18\x02 \x01(\x08\x12!\n\x19\x65nable_remote_diagnostics\x18\x03 \x01(\x08\x12\x17\n\x0finstallation_id\x18\x04 \x01(\t\"_\n\x10IdentityProvider\x12\x0e\n\x06issuer\x18\x01 \x01(\t\x12\x10\n\x08jwks_url\x18\x02 \x01(\t\x12\x16\n\x0esupported_algs\x18\x03 \x03(\t\x12\x11\n\taudiences\x18\x04 \x03(\t\"\xbd?\n\x08Settings\x12\n\n\x02id\x18k \x01(\t\x12\x17\n\ncluster_id\x18l \x01(\tH\x00\x88\x01\x01\x12/\n\x0bmodified_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x1c\n\x0finstallation_id\x18\x44 \x01(\tH\x01\x88\x01\x01\x12\x16\n\tlog_level\x18\x03 \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0fproxy_log_level\x18\x04 \x01(\tH\x03\x88\x01\x01\x12\x1a\n\rshared_secret\x18\x05 \x01(\tH\x04\x88\x01\x01\x12\x15\n\x08services\x18\x06 \x01(\tH\x05\x88\x01\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x07 \x01(\tH\x06\x88\x01\x01\x12\x1c\n\x0finsecure_server\x18\x08 \x01(\x08H\x07\x88\x01\x01\x12@\n\x18\x64ns_failure_refresh_rate\x18x \x01(\x0b\x32\x19.google.protobuf.DurationH\x08\x88\x01\x01\x12\x1e\n\x11\x64ns_lookup_family\x18< \x01(\tH\t\x88\x01\x01\x12\x39\n\x11\x64ns_query_timeout\x18w \x01(\x0b\x32\x19.google.protobuf.DurationH\n\x88\x01\x01\x12\x1c\n\x0f\x64ns_query_tries\x18v \x01(\rH\x0b\x88\x01\x01\x12\x38\n\x10\x64ns_refresh_rate\x18y \x01(\x0b\x32\x19.google.protobuf.DurationH\x0c\x88\x01\x01\x12 \n\x13\x64ns_udp_max_queries\x18t \x01(\rH\r\x88\x01\x01\x12\x18\n\x0b\x64ns_use_tcp\x18u \x01(\x08H\x0e\x88\x01\x01\x12>\n\x0c\x63\x65rtificates\x18\t \x03(\x0b\x32(.pomerium.dashboard.Settings.Certificate\x12\x1f\n\x12http_redirect_addr\x18\n \x01(\tH\x0f\x88\x01\x01\x12\x34\n\x0ctimeout_read\x18\x0b \x01(\x0b\x32\x19.google.protobuf.DurationH\x10\x88\x01\x01\x12\x35\n\rtimeout_write\x18\x0c \x01(\x0b\x32\x19.google.protobuf.DurationH\x11\x88\x01\x01\x12\x34\n\x0ctimeout_idle\x18\r \x01(\x0b\x32\x19.google.protobuf.DurationH\x12\x88\x01\x01\x12%\n\x18\x61uthenticate_service_url\x18\x0e \x01(\tH\x13\x88\x01\x01\x12\x18\n\x0b\x63ookie_name\x18\x10 \x01(\tH\x14\x88\x01\x01\x12\x1a\n\rcookie_secret\x18\x11 \x01(\tH\x15\x88\x01\x01\x12\x1a\n\rcookie_domain\x18\x12 \x01(\tH\x16\x88\x01\x01\x12\x1a\n\rcookie_secure\x18\x13 \x01(\x08H\x17\x88\x01\x01\x12\x1d\n\x10\x63ookie_http_only\x18\x14 \x01(\x08H\x18\x88\x01\x01\x12\x1d\n\x10\x63ookie_same_site\x18P \x01(\tH\x19\x88\x01\x01\x12\x35\n\rcookie_expire\x18\x15 \x01(\x0b\x32\x19.google.protobuf.DurationH\x1a\x88\x01\x01\x12\x1a\n\ridp_client_id\x18\x16 \x01(\tH\x1b\x88\x01\x01\x12\x1e\n\x11idp_client_secret\x18\x17 \x01(\tH\x1c\x88\x01\x01\x12\x19\n\x0cidp_provider\x18\x18 \x01(\tH\x1d\x88\x01\x01\x12\x1d\n\x10idp_provider_url\x18\x19 \x01(\tH\x1e\x88\x01\x01\x12\x0e\n\x06scopes\x18\x1a \x03(\t\x12 \n\x13idp_service_account\x18\x1b \x01(\tH\x1f\x88\x01\x01\x12\x45\n\x1didp_refresh_directory_timeout\x18\x1c \x01(\x0b\x32\x19.google.protobuf.DurationH \x88\x01\x01\x12\x46\n\x1eidp_refresh_directory_interval\x18\x1d \x01(\x0b\x32\x19.google.protobuf.DurationH!\x88\x01\x01\x12G\n\x0erequest_params\x18\x1e \x03(\x0b\x32/.pomerium.dashboard.Settings.RequestParamsEntry\x12\"\n\x15\x61uthorize_service_url\x18 \x01(\tH\"\x88\x01\x01\x12\"\n\x15\x63\x65rtificate_authority\x18\" \x01(\tH#\x88\x01\x01\x12\'\n\x1a\x63\x65rtificate_authority_file\x18# \x01(\tH$\x88\x01\x01\x12.\n!certificate_authority_key_pair_id\x18@ \x01(\tH%\x88\x01\x01\x12R\n\x14set_response_headers\x18\x43 \x03(\x0b\x32\x34.pomerium.dashboard.Settings.SetResponseHeadersEntry\x12N\n\x12jwt_claims_headers\x18\x42 \x03(\x0b\x32\x32.pomerium.dashboard.Settings.JwtClaimsHeadersEntry\x12>\n\x11jwt_groups_filter\x18W \x01(\x0b\x32#.pomerium.dashboard.JwtGroupsFilter\x12@\n\x11jwt_issuer_format\x18j \x01(\x0e\x32 .pomerium.dashboard.IssuerFormatH&\x88\x01\x01\x12@\n\x18\x64\x65\x66\x61ult_upstream_timeout\x18\' \x01(\x0b\x32\x19.google.protobuf.DurationH\'\x88\x01\x01\x12\x1c\n\x0fmetrics_address\x18( \x01(\tH(\x88\x01\x01\x12!\n\x14otel_traces_exporter\x18X \x01(\tH)\x88\x01\x01\x12$\n\x17otel_traces_sampler_arg\x18Y \x01(\x01H*\x88\x01\x01\x12 \n\x18otel_resource_attributes\x18Z \x03(\t\x12\x1b\n\x0eotel_log_level\x18[ \x01(\tH+\x88\x01\x01\x12.\n!otel_attribute_value_length_limit\x18\\ \x01(\x05H,\x88\x01\x01\x12(\n\x1botel_exporter_otlp_endpoint\x18] \x01(\tH-\x88\x01\x01\x12/\n\"otel_exporter_otlp_traces_endpoint\x18^ \x01(\tH.\x88\x01\x01\x12(\n\x1botel_exporter_otlp_protocol\x18_ \x01(\tH/\x88\x01\x01\x12/\n\"otel_exporter_otlp_traces_protocol\x18` \x01(\tH0\x88\x01\x01\x12\"\n\x1aotel_exporter_otlp_headers\x18\x61 \x03(\t\x12)\n!otel_exporter_otlp_traces_headers\x18\x62 \x03(\t\x12\x42\n\x1aotel_exporter_otlp_timeout\x18\x63 \x01(\x0b\x32\x19.google.protobuf.DurationH1\x88\x01\x01\x12I\n!otel_exporter_otlp_traces_timeout\x18\x64 \x01(\x0b\x32\x19.google.protobuf.DurationH2\x88\x01\x01\x12?\n\x17otel_bsp_schedule_delay\x18\x65 \x01(\x0b\x32\x19.google.protobuf.DurationH3\x88\x01\x01\x12+\n\x1eotel_bsp_max_export_batch_size\x18\x66 \x01(\x05H4\x88\x01\x01\x12\x19\n\x0cgrpc_address\x18. \x01(\tH5\x88\x01\x01\x12\x1a\n\rgrpc_insecure\x18/ \x01(\x08H6\x88\x01\x01\x12\x1e\n\x11\x63\x61\x63he_service_url\x18\x33 \x01(\tH7\x88\x01\x01\x12#\n\x16\x64\x61tabroker_service_url\x18\x34 \x01(\tH8\x88\x01\x01\x12\x16\n\tclient_ca\x18\x35 \x01(\tH9\x88\x01\x01\x12\x1b\n\x0e\x63lient_ca_file\x18\x36 \x01(\tH:\x88\x01\x01\x12\"\n\x15\x63lient_ca_key_pair_id\x18\x41 \x01(\tH;\x88\x01\x01\x12\x43\n6google_cloud_serverless_authentication_service_account\x18\x37 \x01(\tH<\x88\x01\x01\x12\x15\n\x08\x61utocert\x18\x38 \x01(\x08H=\x88\x01\x01\x12!\n\x14\x61utocert_use_staging\x18\x39 \x01(\x08H>\x88\x01\x01\x12!\n\x14\x61utocert_must_staple\x18: \x01(\x08H?\x88\x01\x01\x12\x19\n\x0c\x61utocert_dir\x18; \x01(\tH@\x88\x01\x01\x12\x1c\n\x0fskip_xff_append\x18? \x01(\x08HA\x88\x01\x01\x12\x1a\n\rprimary_color\x18\x45 \x01(\tHB\x88\x01\x01\x12\x1c\n\x0fsecondary_color\x18\x46 \x01(\tHC\x88\x01\x01\x12#\n\x16\x64\x61rkmode_primary_color\x18G \x01(\tHD\x88\x01\x01\x12%\n\x18\x64\x61rkmode_secondary_color\x18H \x01(\tHE\x88\x01\x01\x12\x15\n\x08logo_url\x18I \x01(\tHF\x88\x01\x01\x12\x18\n\x0b\x66\x61vicon_url\x18J \x01(\tHG\x88\x01\x01\x12*\n\x1d\x65rror_message_first_paragraph\x18K \x01(\tHH\x88\x01\x01\x12\x1e\n\x11identity_provider\x18L \x01(\tHI\x88\x01\x01\x12?\n\x19identity_provider_options\x18M \x01(\x0b\x32\x17.google.protobuf.StructHJ\x88\x01\x01\x12J\n\"identity_provider_refresh_interval\x18N \x01(\x0b\x32\x19.google.protobuf.DurationHK\x88\x01\x01\x12I\n!identity_provider_refresh_timeout\x18O \x01(\x0b\x32\x19.google.protobuf.DurationHL\x88\x01\x01\x12G\n\x11\x61\x63\x63\x65ss_log_fields\x18R \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHM\x88\x01\x01\x12J\n\x14\x61uthorize_log_fields\x18S \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHN\x88\x01\x01\x12\"\n\x15pass_identity_headers\x18T \x01(\x08HO\x88\x01\x01\x12\x15\n\roriginator_id\x18g \x01(\t\x12G\n\x13\x62\x65\x61rer_token_format\x18h \x01(\x0e\x32%.pomerium.dashboard.BearerTokenFormatHP\x88\x01\x01\x12X\n\"idp_access_token_allowed_audiences\x18i \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHQ\x88\x01\x01\x12\x36\n\ncodec_type\x18m \x01(\x0e\x32\x1d.pomerium.dashboard.CodecTypeHR\x88\x01\x01\x12U\n\x1a\x63ircuit_breaker_thresholds\x18n \x01(\x0b\x32,.pomerium.dashboard.CircuitBreakerThresholdsHS\x88\x01\x01\x12\x18\n\x0bssh_address\x18o \x01(\tHT\x88\x01\x01\x12H\n\x12ssh_host_key_files\x18p \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHU\x88\x01\x01\x12\x43\n\rssh_host_keys\x18q \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHV\x88\x01\x01\x12!\n\x14ssh_user_ca_key_file\x18r \x01(\tHW\x88\x01\x01\x12\x1c\n\x0fssh_user_ca_key\x18s \x01(\tHX\x88\x01\x01\x12U\n\x1fmcp_allowed_as_metadata_domains\x18~ \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHY\x88\x01\x01\x12S\n\x1dmcp_allowed_client_id_domains\x18z \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListHZ\x88\x01\x01\x12&\n\x19session_recording_enabled\x18{ \x01(\x08H[\x88\x01\x01\x12\x42\n\x0c\x62lob_storage\x18| \x01(\x0b\x32\'.pomerium.dashboard.BlobStorageSettingsH\\\x88\x01\x01\x12\"\n\x15\x61uto_apply_changesets\x18} \x01(\x08H]\x88\x01\x01\x12\x44\n\x0e\x61llow_upgrades\x18\x7f \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListH^\x88\x01\x01\x12O\n\x18\x65nvoy_dynamic_extensions\x18\x80\x01 \x01(\x0b\x32\'.pomerium.dashboard.Settings.StringListH_\x88\x01\x01\x12+\n\x1dsession_recording_concurrency\x18\x81\x01 \x01(\rH`\x88\x01\x01\x12\x1c\n\x0enormalize_path\x18\x82\x01 \x01(\x08Ha\x88\x01\x01\x12\x1b\n\rmerge_slashes\x18\x83\x01 \x01(\x08Hb\x88\x01\x01\x12`\n path_with_escaped_slashes_action\x18\x84\x01 \x01(\x0e\x32\x30.pomerium.dashboard.PathWithEscapedSlashesActionHc\x88\x01\x01\x12_\n\x1fheaders_with_underscores_action\x18\x85\x01 \x01(\x0e\x32\x30.pomerium.dashboard.HeadersWithUnderscoresActionHd\x88\x01\x01\x12P\n\x12identity_providers\x18\x86\x01 \x03(\x0b\x32\x33.pomerium.dashboard.Settings.IdentityProvidersEntry\x1aI\n\x0b\x43\x65rtificate\x12\x12\n\ncert_bytes\x18\x03 \x01(\x0c\x12\x11\n\tkey_bytes\x18\x04 \x01(\x0c\x12\x13\n\x0bkey_pair_id\x18\x05 \x01(\t\x1a\x1c\n\nStringList\x12\x0e\n\x06values\x18\x01 \x03(\t\x1a\x34\n\x12RequestParamsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x39\n\x17SetResponseHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x37\n\x15JwtClaimsHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a^\n\x16IdentityProvidersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x33\n\x05value\x18\x02 \x01(\x0b\x32$.pomerium.dashboard.IdentityProvider:\x02\x38\x01\x42\r\n\x0b_cluster_idB\x12\n\x10_installation_idB\x0c\n\n_log_levelB\x12\n\x10_proxy_log_levelB\x10\n\x0e_shared_secretB\x0b\n\t_servicesB\n\n\x08_addressB\x12\n\x10_insecure_serverB\x1b\n\x19_dns_failure_refresh_rateB\x14\n\x12_dns_lookup_familyB\x14\n\x12_dns_query_timeoutB\x12\n\x10_dns_query_triesB\x13\n\x11_dns_refresh_rateB\x16\n\x14_dns_udp_max_queriesB\x0e\n\x0c_dns_use_tcpB\x15\n\x13_http_redirect_addrB\x0f\n\r_timeout_readB\x10\n\x0e_timeout_writeB\x0f\n\r_timeout_idleB\x1b\n\x19_authenticate_service_urlB\x0e\n\x0c_cookie_nameB\x10\n\x0e_cookie_secretB\x10\n\x0e_cookie_domainB\x10\n\x0e_cookie_secureB\x13\n\x11_cookie_http_onlyB\x13\n\x11_cookie_same_siteB\x10\n\x0e_cookie_expireB\x10\n\x0e_idp_client_idB\x14\n\x12_idp_client_secretB\x0f\n\r_idp_providerB\x13\n\x11_idp_provider_urlB\x16\n\x14_idp_service_accountB \n\x1e_idp_refresh_directory_timeoutB!\n\x1f_idp_refresh_directory_intervalB\x18\n\x16_authorize_service_urlB\x18\n\x16_certificate_authorityB\x1d\n\x1b_certificate_authority_fileB$\n\"_certificate_authority_key_pair_idB\x14\n\x12_jwt_issuer_formatB\x1b\n\x19_default_upstream_timeoutB\x12\n\x10_metrics_addressB\x17\n\x15_otel_traces_exporterB\x1a\n\x18_otel_traces_sampler_argB\x11\n\x0f_otel_log_levelB$\n\"_otel_attribute_value_length_limitB\x1e\n\x1c_otel_exporter_otlp_endpointB%\n#_otel_exporter_otlp_traces_endpointB\x1e\n\x1c_otel_exporter_otlp_protocolB%\n#_otel_exporter_otlp_traces_protocolB\x1d\n\x1b_otel_exporter_otlp_timeoutB$\n\"_otel_exporter_otlp_traces_timeoutB\x1a\n\x18_otel_bsp_schedule_delayB!\n\x1f_otel_bsp_max_export_batch_sizeB\x0f\n\r_grpc_addressB\x10\n\x0e_grpc_insecureB\x14\n\x12_cache_service_urlB\x19\n\x17_databroker_service_urlB\x0c\n\n_client_caB\x11\n\x0f_client_ca_fileB\x18\n\x16_client_ca_key_pair_idB9\n7_google_cloud_serverless_authentication_service_accountB\x0b\n\t_autocertB\x17\n\x15_autocert_use_stagingB\x17\n\x15_autocert_must_stapleB\x0f\n\r_autocert_dirB\x12\n\x10_skip_xff_appendB\x10\n\x0e_primary_colorB\x12\n\x10_secondary_colorB\x19\n\x17_darkmode_primary_colorB\x1b\n\x19_darkmode_secondary_colorB\x0b\n\t_logo_urlB\x0e\n\x0c_favicon_urlB \n\x1e_error_message_first_paragraphB\x14\n\x12_identity_providerB\x1c\n\x1a_identity_provider_optionsB%\n#_identity_provider_refresh_intervalB$\n\"_identity_provider_refresh_timeoutB\x14\n\x12_access_log_fieldsB\x17\n\x15_authorize_log_fieldsB\x18\n\x16_pass_identity_headersB\x16\n\x14_bearer_token_formatB%\n#_idp_access_token_allowed_audiencesB\r\n\x0b_codec_typeB\x1d\n\x1b_circuit_breaker_thresholdsB\x0e\n\x0c_ssh_addressB\x15\n\x13_ssh_host_key_filesB\x10\n\x0e_ssh_host_keysB\x17\n\x15_ssh_user_ca_key_fileB\x12\n\x10_ssh_user_ca_keyB\"\n _mcp_allowed_as_metadata_domainsB \n\x1e_mcp_allowed_client_id_domainsB\x1c\n\x1a_session_recording_enabledB\x0f\n\r_blob_storageB\x18\n\x16_auto_apply_changesetsB\x11\n\x0f_allow_upgradesB\x1b\n\x19_envoy_dynamic_extensionsB \n\x1e_session_recording_concurrencyB\x11\n\x0f_normalize_pathB\x10\n\x0e_merge_slashesB#\n!_path_with_escaped_slashes_actionB\"\n _headers_with_underscores_actionJ\x04\x08\x0f\x10\x10J\x04\x08)\x10*J\x04\x08*\x10+J\x04\x08U\x10VJ\x04\x08V\x10W\"m\n\x13\x42lobStorageSettings\x12\x17\n\nbucket_uri\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0emanaged_prefix\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_bucket_uriB\x11\n\x0f_managed_prefix\"\x1b\n\x19GetConsoleSettingsRequest\"[\n\x1aGetConsoleSettingsResponse\x12=\n\x10\x63onsole_settings\x18\x01 \x01(\x0b\x32#.pomerium.dashboard.ConsoleSettings\"<\n\x12GetSettingsRequest\x12\x17\n\ncluster_id\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\r\n\x0b_cluster_id\"E\n\x13GetSettingsResponse\x12.\n\x08settings\x18\x01 \x01(\x0b\x32\x1c.pomerium.dashboard.Settings\"D\n\x12SetSettingsRequest\x12.\n\x08settings\x18\x01 \x01(\x0b\x32\x1c.pomerium.dashboard.Settings\"E\n\x13SetSettingsResponse\x12.\n\x08settings\x18\x01 \x01(\x0b\x32\x1c.pomerium.dashboard.Settings*z\n\tCodecType\x12\x16\n\x12\x43ODEC_TYPE_UNKNOWN\x10\x00\x12\x13\n\x0f\x43ODEC_TYPE_AUTO\x10\x01\x12\x14\n\x10\x43ODEC_TYPE_HTTP1\x10\x02\x12\x14\n\x10\x43ODEC_TYPE_HTTP2\x10\x03\x12\x14\n\x10\x43ODEC_TYPE_HTTP3\x10\x04*\xdb\x01\n\x1cHeadersWithUnderscoresAction\x12+\n\'HEADERS_WITH_UNDERSCORES_ACTION_UNKNOWN\x10\x00\x12)\n%HEADERS_WITH_UNDERSCORES_ACTION_ALLOW\x10\x01\x12\x32\n.HEADERS_WITH_UNDERSCORES_ACTION_REJECT_REQUEST\x10\x02\x12/\n+HEADERS_WITH_UNDERSCORES_ACTION_DROP_HEADER\x10\x03*\xad\x02\n\x1cPathWithEscapedSlashesAction\x12,\n(PATH_WITH_ESCAPED_SLASHES_ACTION_UNKNOWN\x10\x00\x12\x33\n/PATH_WITH_ESCAPED_SLASHES_ACTION_KEEP_UNCHANGED\x10\x01\x12\x33\n/PATH_WITH_ESCAPED_SLASHES_ACTION_REJECT_REQUEST\x10\x02\x12:\n6PATH_WITH_ESCAPED_SLASHES_ACTION_UNESCAPE_AND_REDIRECT\x10\x03\x12\x39\n5PATH_WITH_ESCAPED_SLASHES_ACTION_UNESCAPE_AND_FORWARD\x10\x04\x32\xae\x03\n\x0fSettingsService\x12^\n\x0bGetSettings\x12&.pomerium.dashboard.GetSettingsRequest\x1a\'.pomerium.dashboard.GetSettingsResponse\x12^\n\x0bSetSettings\x12&.pomerium.dashboard.SetSettingsRequest\x1a\'.pomerium.dashboard.SetSettingsResponse\x12\x66\n\x13GetBrandingSettings\x12&.pomerium.dashboard.GetSettingsRequest\x1a\'.pomerium.dashboard.GetSettingsResponse\x12s\n\x12GetConsoleSettings\x12-.pomerium.dashboard.GetConsoleSettingsRequest\x1a..pomerium.dashboard.GetConsoleSettingsResponseB-Z+github.com/pomerium/pomerium-console/pkg/pbb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -42,40 +42,46 @@ _globals['_SETTINGS_SETRESPONSEHEADERSENTRY']._serialized_options = b'8\001' _globals['_SETTINGS_JWTCLAIMSHEADERSENTRY']._loaded_options = None _globals['_SETTINGS_JWTCLAIMSHEADERSENTRY']._serialized_options = b'8\001' - _globals['_CODECTYPE']._serialized_start=8740 - _globals['_CODECTYPE']._serialized_end=8862 - _globals['_HEADERSWITHUNDERSCORESACTION']._serialized_start=8865 - _globals['_HEADERSWITHUNDERSCORESACTION']._serialized_end=9084 - _globals['_PATHWITHESCAPEDSLASHESACTION']._serialized_start=9087 - _globals['_PATHWITHESCAPEDSLASHESACTION']._serialized_end=9388 + _globals['_SETTINGS_IDENTITYPROVIDERSENTRY']._loaded_options = None + _globals['_SETTINGS_IDENTITYPROVIDERSENTRY']._serialized_options = b'8\001' + _globals['_CODECTYPE']._serialized_start=9015 + _globals['_CODECTYPE']._serialized_end=9137 + _globals['_HEADERSWITHUNDERSCORESACTION']._serialized_start=9140 + _globals['_HEADERSWITHUNDERSCORESACTION']._serialized_end=9359 + _globals['_PATHWITHESCAPEDSLASHESACTION']._serialized_start=9362 + _globals['_PATHWITHESCAPEDSLASHESACTION']._serialized_end=9663 _globals['_CONSOLESETTINGS']._serialized_start=148 _globals['_CONSOLESETTINGS']._serialized_end=281 - _globals['_SETTINGS']._serialized_start=284 - _globals['_SETTINGS']._serialized_end=8231 - _globals['_SETTINGS_CERTIFICATE']._serialized_start=5454 - _globals['_SETTINGS_CERTIFICATE']._serialized_end=5527 - _globals['_SETTINGS_STRINGLIST']._serialized_start=5529 - _globals['_SETTINGS_STRINGLIST']._serialized_end=5557 - _globals['_SETTINGS_REQUESTPARAMSENTRY']._serialized_start=5559 - _globals['_SETTINGS_REQUESTPARAMSENTRY']._serialized_end=5611 - _globals['_SETTINGS_SETRESPONSEHEADERSENTRY']._serialized_start=5613 - _globals['_SETTINGS_SETRESPONSEHEADERSENTRY']._serialized_end=5670 - _globals['_SETTINGS_JWTCLAIMSHEADERSENTRY']._serialized_start=5672 - _globals['_SETTINGS_JWTCLAIMSHEADERSENTRY']._serialized_end=5727 - _globals['_BLOBSTORAGESETTINGS']._serialized_start=8233 - _globals['_BLOBSTORAGESETTINGS']._serialized_end=8342 - _globals['_GETCONSOLESETTINGSREQUEST']._serialized_start=8344 - _globals['_GETCONSOLESETTINGSREQUEST']._serialized_end=8371 - _globals['_GETCONSOLESETTINGSRESPONSE']._serialized_start=8373 - _globals['_GETCONSOLESETTINGSRESPONSE']._serialized_end=8464 - _globals['_GETSETTINGSREQUEST']._serialized_start=8466 - _globals['_GETSETTINGSREQUEST']._serialized_end=8526 - _globals['_GETSETTINGSRESPONSE']._serialized_start=8528 - _globals['_GETSETTINGSRESPONSE']._serialized_end=8597 - _globals['_SETSETTINGSREQUEST']._serialized_start=8599 - _globals['_SETSETTINGSREQUEST']._serialized_end=8667 - _globals['_SETSETTINGSRESPONSE']._serialized_start=8669 - _globals['_SETSETTINGSRESPONSE']._serialized_end=8738 - _globals['_SETTINGSSERVICE']._serialized_start=9391 - _globals['_SETTINGSSERVICE']._serialized_end=9821 + _globals['_IDENTITYPROVIDER']._serialized_start=283 + _globals['_IDENTITYPROVIDER']._serialized_end=378 + _globals['_SETTINGS']._serialized_start=381 + _globals['_SETTINGS']._serialized_end=8506 + _globals['_SETTINGS_CERTIFICATE']._serialized_start=5633 + _globals['_SETTINGS_CERTIFICATE']._serialized_end=5706 + _globals['_SETTINGS_STRINGLIST']._serialized_start=5708 + _globals['_SETTINGS_STRINGLIST']._serialized_end=5736 + _globals['_SETTINGS_REQUESTPARAMSENTRY']._serialized_start=5738 + _globals['_SETTINGS_REQUESTPARAMSENTRY']._serialized_end=5790 + _globals['_SETTINGS_SETRESPONSEHEADERSENTRY']._serialized_start=5792 + _globals['_SETTINGS_SETRESPONSEHEADERSENTRY']._serialized_end=5849 + _globals['_SETTINGS_JWTCLAIMSHEADERSENTRY']._serialized_start=5851 + _globals['_SETTINGS_JWTCLAIMSHEADERSENTRY']._serialized_end=5906 + _globals['_SETTINGS_IDENTITYPROVIDERSENTRY']._serialized_start=5908 + _globals['_SETTINGS_IDENTITYPROVIDERSENTRY']._serialized_end=6002 + _globals['_BLOBSTORAGESETTINGS']._serialized_start=8508 + _globals['_BLOBSTORAGESETTINGS']._serialized_end=8617 + _globals['_GETCONSOLESETTINGSREQUEST']._serialized_start=8619 + _globals['_GETCONSOLESETTINGSREQUEST']._serialized_end=8646 + _globals['_GETCONSOLESETTINGSRESPONSE']._serialized_start=8648 + _globals['_GETCONSOLESETTINGSRESPONSE']._serialized_end=8739 + _globals['_GETSETTINGSREQUEST']._serialized_start=8741 + _globals['_GETSETTINGSREQUEST']._serialized_end=8801 + _globals['_GETSETTINGSRESPONSE']._serialized_start=8803 + _globals['_GETSETTINGSRESPONSE']._serialized_end=8872 + _globals['_SETSETTINGSREQUEST']._serialized_start=8874 + _globals['_SETSETTINGSREQUEST']._serialized_end=8942 + _globals['_SETSETTINGSRESPONSE']._serialized_start=8944 + _globals['_SETSETTINGSRESPONSE']._serialized_end=9013 + _globals['_SETTINGSSERVICE']._serialized_start=9666 + _globals['_SETTINGSSERVICE']._serialized_end=10096 # @@protoc_insertion_point(module_scope) diff --git a/src/pomerium/pb/settings_pb2.pyi b/src/pomerium/pb/settings_pb2.pyi index f4d1a15..f030a2b 100644 --- a/src/pomerium/pb/settings_pb2.pyi +++ b/src/pomerium/pb/settings_pb2.pyi @@ -130,10 +130,64 @@ class ConsoleSettings(google.protobuf.message.Message): global___ConsoleSettings = ConsoleSettings +@typing.final +class IdentityProvider(google.protobuf.message.Message): + """IdentityProvider declares an additional identity provider. Today it is + usable only to verify JWT bearer tokens issued by non-interactive workloads + (Kubernetes projected service-account tokens, GitHub Actions OIDC, SPIFFE + JWT-SVIDs, …) on routes whose bearer_token_format is BEARER_TOKEN_FORMAT_JWT. + It does not replace the interactive SSO identity provider (the idp_* fields). + + Providers are declared as a map in Settings; the map key is the provider + name, referenced from Route.identity_providers. Authorization on the verified + claims is left to PPL (claim/...). + """ + + DESCRIPTOR: google.protobuf.descriptor.Descriptor + + ISSUER_FIELD_NUMBER: builtins.int + JWKS_URL_FIELD_NUMBER: builtins.int + SUPPORTED_ALGS_FIELD_NUMBER: builtins.int + AUDIENCES_FIELD_NUMBER: builtins.int + issuer: builtins.str + """The `iss` claim tokens must carry. Required, and unique across providers. + Used both to select the matching provider for an incoming token and (with + OIDC discovery) to fetch the signing keys. + """ + jwks_url: builtins.str + """Optional explicit JWKS URL. When set, OIDC discovery is skipped and keys + are fetched directly from this URL. Useful when the issuer URL is not + externally routable (e.g. Kubernetes' `kubernetes.default.svc.cluster.local`). + """ + @property + def supported_algs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: + """Allowed JWT signing algorithms. When empty, defaults to {RS256, ES256, + EdDSA}. `none` and HMAC (HS*) algorithms are rejected. + """ + + @property + def audiences(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: + """Audiences accepted on tokens from this provider. Required and non-empty: + at least one must intersect the token's `aud` claim. Fail-closed — an + empty set rejects all tokens. + """ + + def __init__( + self, + *, + issuer: builtins.str = ..., + jwks_url: builtins.str = ..., + supported_algs: collections.abc.Iterable[builtins.str] | None = ..., + audiences: collections.abc.Iterable[builtins.str] | None = ..., + ) -> None: ... + def ClearField(self, field_name: typing.Literal["audiences", b"audiences", "issuer", b"issuer", "jwks_url", b"jwks_url", "supported_algs", b"supported_algs"]) -> None: ... + +global___IdentityProvider = IdentityProvider + @typing.final class Settings(google.protobuf.message.Message): """Settings defines the global pomerium settings - Next id: 134. + Next id: 135. """ DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -219,6 +273,24 @@ class Settings(google.protobuf.message.Message): ) -> None: ... def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ... + @typing.final + class IdentityProvidersEntry(google.protobuf.message.Message): + DESCRIPTOR: google.protobuf.descriptor.Descriptor + + KEY_FIELD_NUMBER: builtins.int + VALUE_FIELD_NUMBER: builtins.int + key: builtins.str + @property + def value(self) -> global___IdentityProvider: ... + def __init__( + self, + *, + key: builtins.str = ..., + value: global___IdentityProvider | None = ..., + ) -> None: ... + def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ... + ID_FIELD_NUMBER: builtins.int CLUSTER_ID_FIELD_NUMBER: builtins.int MODIFIED_AT_FIELD_NUMBER: builtins.int @@ -332,6 +404,7 @@ class Settings(google.protobuf.message.Message): MERGE_SLASHES_FIELD_NUMBER: builtins.int PATH_WITH_ESCAPED_SLASHES_ACTION_FIELD_NUMBER: builtins.int HEADERS_WITH_UNDERSCORES_ACTION_FIELD_NUMBER: builtins.int + IDENTITY_PROVIDERS_FIELD_NUMBER: builtins.int id: builtins.str cluster_id: builtins.str installation_id: builtins.str @@ -496,6 +569,14 @@ class Settings(google.protobuf.message.Message): def allow_upgrades(self) -> global___Settings.StringList: ... @property def envoy_dynamic_extensions(self) -> global___Settings.StringList: ... + @property + def identity_providers(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, global___IdentityProvider]: + """Additional identity providers, keyed by provider name. Currently usable + only to verify JWT bearer tokens from non-interactive workloads on routes + whose bearer_token_format is BEARER_TOKEN_FORMAT_JWT; the interactive SSO + provider is still configured via the idp_* fields. + """ + def __init__( self, *, @@ -612,9 +693,10 @@ class Settings(google.protobuf.message.Message): merge_slashes: builtins.bool | None = ..., path_with_escaped_slashes_action: global___PathWithEscapedSlashesAction.ValueType | None = ..., headers_with_underscores_action: global___HeadersWithUnderscoresAction.ValueType | None = ..., + identity_providers: collections.abc.Mapping[builtins.str, global___IdentityProvider] | None = ..., ) -> None: ... def HasField(self, field_name: typing.Literal["_access_log_fields", b"_access_log_fields", "_address", b"_address", "_allow_upgrades", b"_allow_upgrades", "_authenticate_service_url", b"_authenticate_service_url", "_authorize_log_fields", b"_authorize_log_fields", "_authorize_service_url", b"_authorize_service_url", "_auto_apply_changesets", b"_auto_apply_changesets", "_autocert", b"_autocert", "_autocert_dir", b"_autocert_dir", "_autocert_must_staple", b"_autocert_must_staple", "_autocert_use_staging", b"_autocert_use_staging", "_bearer_token_format", b"_bearer_token_format", "_blob_storage", b"_blob_storage", "_cache_service_url", b"_cache_service_url", "_certificate_authority", b"_certificate_authority", "_certificate_authority_file", b"_certificate_authority_file", "_certificate_authority_key_pair_id", b"_certificate_authority_key_pair_id", "_circuit_breaker_thresholds", b"_circuit_breaker_thresholds", "_client_ca", b"_client_ca", "_client_ca_file", b"_client_ca_file", "_client_ca_key_pair_id", b"_client_ca_key_pair_id", "_cluster_id", b"_cluster_id", "_codec_type", b"_codec_type", "_cookie_domain", b"_cookie_domain", "_cookie_expire", b"_cookie_expire", "_cookie_http_only", b"_cookie_http_only", "_cookie_name", b"_cookie_name", "_cookie_same_site", b"_cookie_same_site", "_cookie_secret", b"_cookie_secret", "_cookie_secure", b"_cookie_secure", "_darkmode_primary_color", b"_darkmode_primary_color", "_darkmode_secondary_color", b"_darkmode_secondary_color", "_databroker_service_url", b"_databroker_service_url", "_default_upstream_timeout", b"_default_upstream_timeout", "_dns_failure_refresh_rate", b"_dns_failure_refresh_rate", "_dns_lookup_family", b"_dns_lookup_family", "_dns_query_timeout", b"_dns_query_timeout", "_dns_query_tries", b"_dns_query_tries", "_dns_refresh_rate", b"_dns_refresh_rate", "_dns_udp_max_queries", b"_dns_udp_max_queries", "_dns_use_tcp", b"_dns_use_tcp", "_envoy_dynamic_extensions", b"_envoy_dynamic_extensions", "_error_message_first_paragraph", b"_error_message_first_paragraph", "_favicon_url", b"_favicon_url", "_google_cloud_serverless_authentication_service_account", b"_google_cloud_serverless_authentication_service_account", "_grpc_address", b"_grpc_address", "_grpc_insecure", b"_grpc_insecure", "_headers_with_underscores_action", b"_headers_with_underscores_action", "_http_redirect_addr", b"_http_redirect_addr", "_identity_provider", b"_identity_provider", "_identity_provider_options", b"_identity_provider_options", "_identity_provider_refresh_interval", b"_identity_provider_refresh_interval", "_identity_provider_refresh_timeout", b"_identity_provider_refresh_timeout", "_idp_access_token_allowed_audiences", b"_idp_access_token_allowed_audiences", "_idp_client_id", b"_idp_client_id", "_idp_client_secret", b"_idp_client_secret", "_idp_provider", b"_idp_provider", "_idp_provider_url", b"_idp_provider_url", "_idp_refresh_directory_interval", b"_idp_refresh_directory_interval", "_idp_refresh_directory_timeout", b"_idp_refresh_directory_timeout", "_idp_service_account", b"_idp_service_account", "_insecure_server", b"_insecure_server", "_installation_id", b"_installation_id", "_jwt_issuer_format", b"_jwt_issuer_format", "_log_level", b"_log_level", "_logo_url", b"_logo_url", "_mcp_allowed_as_metadata_domains", b"_mcp_allowed_as_metadata_domains", "_mcp_allowed_client_id_domains", b"_mcp_allowed_client_id_domains", "_merge_slashes", b"_merge_slashes", "_metrics_address", b"_metrics_address", "_normalize_path", b"_normalize_path", "_otel_attribute_value_length_limit", b"_otel_attribute_value_length_limit", "_otel_bsp_max_export_batch_size", b"_otel_bsp_max_export_batch_size", "_otel_bsp_schedule_delay", b"_otel_bsp_schedule_delay", "_otel_exporter_otlp_endpoint", b"_otel_exporter_otlp_endpoint", "_otel_exporter_otlp_protocol", b"_otel_exporter_otlp_protocol", "_otel_exporter_otlp_timeout", b"_otel_exporter_otlp_timeout", "_otel_exporter_otlp_traces_endpoint", b"_otel_exporter_otlp_traces_endpoint", "_otel_exporter_otlp_traces_protocol", b"_otel_exporter_otlp_traces_protocol", "_otel_exporter_otlp_traces_timeout", b"_otel_exporter_otlp_traces_timeout", "_otel_log_level", b"_otel_log_level", "_otel_traces_exporter", b"_otel_traces_exporter", "_otel_traces_sampler_arg", b"_otel_traces_sampler_arg", "_pass_identity_headers", b"_pass_identity_headers", "_path_with_escaped_slashes_action", b"_path_with_escaped_slashes_action", "_primary_color", b"_primary_color", "_proxy_log_level", b"_proxy_log_level", "_secondary_color", b"_secondary_color", "_services", b"_services", "_session_recording_concurrency", b"_session_recording_concurrency", "_session_recording_enabled", b"_session_recording_enabled", "_shared_secret", b"_shared_secret", "_skip_xff_append", b"_skip_xff_append", "_ssh_address", b"_ssh_address", "_ssh_host_key_files", b"_ssh_host_key_files", "_ssh_host_keys", b"_ssh_host_keys", "_ssh_user_ca_key", b"_ssh_user_ca_key", "_ssh_user_ca_key_file", b"_ssh_user_ca_key_file", "_timeout_idle", b"_timeout_idle", "_timeout_read", b"_timeout_read", "_timeout_write", b"_timeout_write", "access_log_fields", b"access_log_fields", "address", b"address", "allow_upgrades", b"allow_upgrades", "authenticate_service_url", b"authenticate_service_url", "authorize_log_fields", b"authorize_log_fields", "authorize_service_url", b"authorize_service_url", "auto_apply_changesets", b"auto_apply_changesets", "autocert", b"autocert", "autocert_dir", b"autocert_dir", "autocert_must_staple", b"autocert_must_staple", "autocert_use_staging", b"autocert_use_staging", "bearer_token_format", b"bearer_token_format", "blob_storage", b"blob_storage", "cache_service_url", b"cache_service_url", "certificate_authority", b"certificate_authority", "certificate_authority_file", b"certificate_authority_file", "certificate_authority_key_pair_id", b"certificate_authority_key_pair_id", "circuit_breaker_thresholds", b"circuit_breaker_thresholds", "client_ca", b"client_ca", "client_ca_file", b"client_ca_file", "client_ca_key_pair_id", b"client_ca_key_pair_id", "cluster_id", b"cluster_id", "codec_type", b"codec_type", "cookie_domain", b"cookie_domain", "cookie_expire", b"cookie_expire", "cookie_http_only", b"cookie_http_only", "cookie_name", b"cookie_name", "cookie_same_site", b"cookie_same_site", "cookie_secret", b"cookie_secret", "cookie_secure", b"cookie_secure", "darkmode_primary_color", b"darkmode_primary_color", "darkmode_secondary_color", b"darkmode_secondary_color", "databroker_service_url", b"databroker_service_url", "default_upstream_timeout", b"default_upstream_timeout", "dns_failure_refresh_rate", b"dns_failure_refresh_rate", "dns_lookup_family", b"dns_lookup_family", "dns_query_timeout", b"dns_query_timeout", "dns_query_tries", b"dns_query_tries", "dns_refresh_rate", b"dns_refresh_rate", "dns_udp_max_queries", b"dns_udp_max_queries", "dns_use_tcp", b"dns_use_tcp", "envoy_dynamic_extensions", b"envoy_dynamic_extensions", "error_message_first_paragraph", b"error_message_first_paragraph", "favicon_url", b"favicon_url", "google_cloud_serverless_authentication_service_account", b"google_cloud_serverless_authentication_service_account", "grpc_address", b"grpc_address", "grpc_insecure", b"grpc_insecure", "headers_with_underscores_action", b"headers_with_underscores_action", "http_redirect_addr", b"http_redirect_addr", "identity_provider", b"identity_provider", "identity_provider_options", b"identity_provider_options", "identity_provider_refresh_interval", b"identity_provider_refresh_interval", "identity_provider_refresh_timeout", b"identity_provider_refresh_timeout", "idp_access_token_allowed_audiences", b"idp_access_token_allowed_audiences", "idp_client_id", b"idp_client_id", "idp_client_secret", b"idp_client_secret", "idp_provider", b"idp_provider", "idp_provider_url", b"idp_provider_url", "idp_refresh_directory_interval", b"idp_refresh_directory_interval", "idp_refresh_directory_timeout", b"idp_refresh_directory_timeout", "idp_service_account", b"idp_service_account", "insecure_server", b"insecure_server", "installation_id", b"installation_id", "jwt_groups_filter", b"jwt_groups_filter", "jwt_issuer_format", b"jwt_issuer_format", "log_level", b"log_level", "logo_url", b"logo_url", "mcp_allowed_as_metadata_domains", b"mcp_allowed_as_metadata_domains", "mcp_allowed_client_id_domains", b"mcp_allowed_client_id_domains", "merge_slashes", b"merge_slashes", "metrics_address", b"metrics_address", "modified_at", b"modified_at", "normalize_path", b"normalize_path", "otel_attribute_value_length_limit", b"otel_attribute_value_length_limit", "otel_bsp_max_export_batch_size", b"otel_bsp_max_export_batch_size", "otel_bsp_schedule_delay", b"otel_bsp_schedule_delay", "otel_exporter_otlp_endpoint", b"otel_exporter_otlp_endpoint", "otel_exporter_otlp_protocol", b"otel_exporter_otlp_protocol", "otel_exporter_otlp_timeout", b"otel_exporter_otlp_timeout", "otel_exporter_otlp_traces_endpoint", b"otel_exporter_otlp_traces_endpoint", "otel_exporter_otlp_traces_protocol", b"otel_exporter_otlp_traces_protocol", "otel_exporter_otlp_traces_timeout", b"otel_exporter_otlp_traces_timeout", "otel_log_level", b"otel_log_level", "otel_traces_exporter", b"otel_traces_exporter", "otel_traces_sampler_arg", b"otel_traces_sampler_arg", "pass_identity_headers", b"pass_identity_headers", "path_with_escaped_slashes_action", b"path_with_escaped_slashes_action", "primary_color", b"primary_color", "proxy_log_level", b"proxy_log_level", "secondary_color", b"secondary_color", "services", b"services", "session_recording_concurrency", b"session_recording_concurrency", "session_recording_enabled", b"session_recording_enabled", "shared_secret", b"shared_secret", "skip_xff_append", b"skip_xff_append", "ssh_address", b"ssh_address", "ssh_host_key_files", b"ssh_host_key_files", "ssh_host_keys", b"ssh_host_keys", "ssh_user_ca_key", b"ssh_user_ca_key", "ssh_user_ca_key_file", b"ssh_user_ca_key_file", "timeout_idle", b"timeout_idle", "timeout_read", b"timeout_read", "timeout_write", b"timeout_write"]) -> builtins.bool: ... - def ClearField(self, field_name: typing.Literal["_access_log_fields", b"_access_log_fields", "_address", b"_address", "_allow_upgrades", b"_allow_upgrades", "_authenticate_service_url", b"_authenticate_service_url", "_authorize_log_fields", b"_authorize_log_fields", "_authorize_service_url", b"_authorize_service_url", "_auto_apply_changesets", b"_auto_apply_changesets", "_autocert", b"_autocert", "_autocert_dir", b"_autocert_dir", "_autocert_must_staple", b"_autocert_must_staple", "_autocert_use_staging", b"_autocert_use_staging", "_bearer_token_format", b"_bearer_token_format", "_blob_storage", b"_blob_storage", "_cache_service_url", b"_cache_service_url", "_certificate_authority", b"_certificate_authority", "_certificate_authority_file", b"_certificate_authority_file", "_certificate_authority_key_pair_id", b"_certificate_authority_key_pair_id", "_circuit_breaker_thresholds", b"_circuit_breaker_thresholds", "_client_ca", b"_client_ca", "_client_ca_file", b"_client_ca_file", "_client_ca_key_pair_id", b"_client_ca_key_pair_id", "_cluster_id", b"_cluster_id", "_codec_type", b"_codec_type", "_cookie_domain", b"_cookie_domain", "_cookie_expire", b"_cookie_expire", "_cookie_http_only", b"_cookie_http_only", "_cookie_name", b"_cookie_name", "_cookie_same_site", b"_cookie_same_site", "_cookie_secret", b"_cookie_secret", "_cookie_secure", b"_cookie_secure", "_darkmode_primary_color", b"_darkmode_primary_color", "_darkmode_secondary_color", b"_darkmode_secondary_color", "_databroker_service_url", b"_databroker_service_url", "_default_upstream_timeout", b"_default_upstream_timeout", "_dns_failure_refresh_rate", b"_dns_failure_refresh_rate", "_dns_lookup_family", b"_dns_lookup_family", "_dns_query_timeout", b"_dns_query_timeout", "_dns_query_tries", b"_dns_query_tries", "_dns_refresh_rate", b"_dns_refresh_rate", "_dns_udp_max_queries", b"_dns_udp_max_queries", "_dns_use_tcp", b"_dns_use_tcp", "_envoy_dynamic_extensions", b"_envoy_dynamic_extensions", "_error_message_first_paragraph", b"_error_message_first_paragraph", "_favicon_url", b"_favicon_url", "_google_cloud_serverless_authentication_service_account", b"_google_cloud_serverless_authentication_service_account", "_grpc_address", b"_grpc_address", "_grpc_insecure", b"_grpc_insecure", "_headers_with_underscores_action", b"_headers_with_underscores_action", "_http_redirect_addr", b"_http_redirect_addr", "_identity_provider", b"_identity_provider", "_identity_provider_options", b"_identity_provider_options", "_identity_provider_refresh_interval", b"_identity_provider_refresh_interval", "_identity_provider_refresh_timeout", b"_identity_provider_refresh_timeout", "_idp_access_token_allowed_audiences", b"_idp_access_token_allowed_audiences", "_idp_client_id", b"_idp_client_id", "_idp_client_secret", b"_idp_client_secret", "_idp_provider", b"_idp_provider", "_idp_provider_url", b"_idp_provider_url", "_idp_refresh_directory_interval", b"_idp_refresh_directory_interval", "_idp_refresh_directory_timeout", b"_idp_refresh_directory_timeout", "_idp_service_account", b"_idp_service_account", "_insecure_server", b"_insecure_server", "_installation_id", b"_installation_id", "_jwt_issuer_format", b"_jwt_issuer_format", "_log_level", b"_log_level", "_logo_url", b"_logo_url", "_mcp_allowed_as_metadata_domains", b"_mcp_allowed_as_metadata_domains", "_mcp_allowed_client_id_domains", b"_mcp_allowed_client_id_domains", "_merge_slashes", b"_merge_slashes", "_metrics_address", b"_metrics_address", "_normalize_path", b"_normalize_path", "_otel_attribute_value_length_limit", b"_otel_attribute_value_length_limit", "_otel_bsp_max_export_batch_size", b"_otel_bsp_max_export_batch_size", "_otel_bsp_schedule_delay", b"_otel_bsp_schedule_delay", "_otel_exporter_otlp_endpoint", b"_otel_exporter_otlp_endpoint", "_otel_exporter_otlp_protocol", b"_otel_exporter_otlp_protocol", "_otel_exporter_otlp_timeout", b"_otel_exporter_otlp_timeout", "_otel_exporter_otlp_traces_endpoint", b"_otel_exporter_otlp_traces_endpoint", "_otel_exporter_otlp_traces_protocol", b"_otel_exporter_otlp_traces_protocol", "_otel_exporter_otlp_traces_timeout", b"_otel_exporter_otlp_traces_timeout", "_otel_log_level", b"_otel_log_level", "_otel_traces_exporter", b"_otel_traces_exporter", "_otel_traces_sampler_arg", b"_otel_traces_sampler_arg", "_pass_identity_headers", b"_pass_identity_headers", "_path_with_escaped_slashes_action", b"_path_with_escaped_slashes_action", "_primary_color", b"_primary_color", "_proxy_log_level", b"_proxy_log_level", "_secondary_color", b"_secondary_color", "_services", b"_services", "_session_recording_concurrency", b"_session_recording_concurrency", "_session_recording_enabled", b"_session_recording_enabled", "_shared_secret", b"_shared_secret", "_skip_xff_append", b"_skip_xff_append", "_ssh_address", b"_ssh_address", "_ssh_host_key_files", b"_ssh_host_key_files", "_ssh_host_keys", b"_ssh_host_keys", "_ssh_user_ca_key", b"_ssh_user_ca_key", "_ssh_user_ca_key_file", b"_ssh_user_ca_key_file", "_timeout_idle", b"_timeout_idle", "_timeout_read", b"_timeout_read", "_timeout_write", b"_timeout_write", "access_log_fields", b"access_log_fields", "address", b"address", "allow_upgrades", b"allow_upgrades", "authenticate_service_url", b"authenticate_service_url", "authorize_log_fields", b"authorize_log_fields", "authorize_service_url", b"authorize_service_url", "auto_apply_changesets", b"auto_apply_changesets", "autocert", b"autocert", "autocert_dir", b"autocert_dir", "autocert_must_staple", b"autocert_must_staple", "autocert_use_staging", b"autocert_use_staging", "bearer_token_format", b"bearer_token_format", "blob_storage", b"blob_storage", "cache_service_url", b"cache_service_url", "certificate_authority", b"certificate_authority", "certificate_authority_file", b"certificate_authority_file", "certificate_authority_key_pair_id", b"certificate_authority_key_pair_id", "certificates", b"certificates", "circuit_breaker_thresholds", b"circuit_breaker_thresholds", "client_ca", b"client_ca", "client_ca_file", b"client_ca_file", "client_ca_key_pair_id", b"client_ca_key_pair_id", "cluster_id", b"cluster_id", "codec_type", b"codec_type", "cookie_domain", b"cookie_domain", "cookie_expire", b"cookie_expire", "cookie_http_only", b"cookie_http_only", "cookie_name", b"cookie_name", "cookie_same_site", b"cookie_same_site", "cookie_secret", b"cookie_secret", "cookie_secure", b"cookie_secure", "darkmode_primary_color", b"darkmode_primary_color", "darkmode_secondary_color", b"darkmode_secondary_color", "databroker_service_url", b"databroker_service_url", "default_upstream_timeout", b"default_upstream_timeout", "dns_failure_refresh_rate", b"dns_failure_refresh_rate", "dns_lookup_family", b"dns_lookup_family", "dns_query_timeout", b"dns_query_timeout", "dns_query_tries", b"dns_query_tries", "dns_refresh_rate", b"dns_refresh_rate", "dns_udp_max_queries", b"dns_udp_max_queries", "dns_use_tcp", b"dns_use_tcp", "envoy_dynamic_extensions", b"envoy_dynamic_extensions", "error_message_first_paragraph", b"error_message_first_paragraph", "favicon_url", b"favicon_url", "google_cloud_serverless_authentication_service_account", b"google_cloud_serverless_authentication_service_account", "grpc_address", b"grpc_address", "grpc_insecure", b"grpc_insecure", "headers_with_underscores_action", b"headers_with_underscores_action", "http_redirect_addr", b"http_redirect_addr", "id", b"id", "identity_provider", b"identity_provider", "identity_provider_options", b"identity_provider_options", "identity_provider_refresh_interval", b"identity_provider_refresh_interval", "identity_provider_refresh_timeout", b"identity_provider_refresh_timeout", "idp_access_token_allowed_audiences", b"idp_access_token_allowed_audiences", "idp_client_id", b"idp_client_id", "idp_client_secret", b"idp_client_secret", "idp_provider", b"idp_provider", "idp_provider_url", b"idp_provider_url", "idp_refresh_directory_interval", b"idp_refresh_directory_interval", "idp_refresh_directory_timeout", b"idp_refresh_directory_timeout", "idp_service_account", b"idp_service_account", "insecure_server", b"insecure_server", "installation_id", b"installation_id", "jwt_claims_headers", b"jwt_claims_headers", "jwt_groups_filter", b"jwt_groups_filter", "jwt_issuer_format", b"jwt_issuer_format", "log_level", b"log_level", "logo_url", b"logo_url", "mcp_allowed_as_metadata_domains", b"mcp_allowed_as_metadata_domains", "mcp_allowed_client_id_domains", b"mcp_allowed_client_id_domains", "merge_slashes", b"merge_slashes", "metrics_address", b"metrics_address", "modified_at", b"modified_at", "normalize_path", b"normalize_path", "originator_id", b"originator_id", "otel_attribute_value_length_limit", b"otel_attribute_value_length_limit", "otel_bsp_max_export_batch_size", b"otel_bsp_max_export_batch_size", "otel_bsp_schedule_delay", b"otel_bsp_schedule_delay", "otel_exporter_otlp_endpoint", b"otel_exporter_otlp_endpoint", "otel_exporter_otlp_headers", b"otel_exporter_otlp_headers", "otel_exporter_otlp_protocol", b"otel_exporter_otlp_protocol", "otel_exporter_otlp_timeout", b"otel_exporter_otlp_timeout", "otel_exporter_otlp_traces_endpoint", b"otel_exporter_otlp_traces_endpoint", "otel_exporter_otlp_traces_headers", b"otel_exporter_otlp_traces_headers", "otel_exporter_otlp_traces_protocol", b"otel_exporter_otlp_traces_protocol", "otel_exporter_otlp_traces_timeout", b"otel_exporter_otlp_traces_timeout", "otel_log_level", b"otel_log_level", "otel_resource_attributes", b"otel_resource_attributes", "otel_traces_exporter", b"otel_traces_exporter", "otel_traces_sampler_arg", b"otel_traces_sampler_arg", "pass_identity_headers", b"pass_identity_headers", "path_with_escaped_slashes_action", b"path_with_escaped_slashes_action", "primary_color", b"primary_color", "proxy_log_level", b"proxy_log_level", "request_params", b"request_params", "scopes", b"scopes", "secondary_color", b"secondary_color", "services", b"services", "session_recording_concurrency", b"session_recording_concurrency", "session_recording_enabled", b"session_recording_enabled", "set_response_headers", b"set_response_headers", "shared_secret", b"shared_secret", "skip_xff_append", b"skip_xff_append", "ssh_address", b"ssh_address", "ssh_host_key_files", b"ssh_host_key_files", "ssh_host_keys", b"ssh_host_keys", "ssh_user_ca_key", b"ssh_user_ca_key", "ssh_user_ca_key_file", b"ssh_user_ca_key_file", "timeout_idle", b"timeout_idle", "timeout_read", b"timeout_read", "timeout_write", b"timeout_write"]) -> None: ... + def ClearField(self, field_name: typing.Literal["_access_log_fields", b"_access_log_fields", "_address", b"_address", "_allow_upgrades", b"_allow_upgrades", "_authenticate_service_url", b"_authenticate_service_url", "_authorize_log_fields", b"_authorize_log_fields", "_authorize_service_url", b"_authorize_service_url", "_auto_apply_changesets", b"_auto_apply_changesets", "_autocert", b"_autocert", "_autocert_dir", b"_autocert_dir", "_autocert_must_staple", b"_autocert_must_staple", "_autocert_use_staging", b"_autocert_use_staging", "_bearer_token_format", b"_bearer_token_format", "_blob_storage", b"_blob_storage", "_cache_service_url", b"_cache_service_url", "_certificate_authority", b"_certificate_authority", "_certificate_authority_file", b"_certificate_authority_file", "_certificate_authority_key_pair_id", b"_certificate_authority_key_pair_id", "_circuit_breaker_thresholds", b"_circuit_breaker_thresholds", "_client_ca", b"_client_ca", "_client_ca_file", b"_client_ca_file", "_client_ca_key_pair_id", b"_client_ca_key_pair_id", "_cluster_id", b"_cluster_id", "_codec_type", b"_codec_type", "_cookie_domain", b"_cookie_domain", "_cookie_expire", b"_cookie_expire", "_cookie_http_only", b"_cookie_http_only", "_cookie_name", b"_cookie_name", "_cookie_same_site", b"_cookie_same_site", "_cookie_secret", b"_cookie_secret", "_cookie_secure", b"_cookie_secure", "_darkmode_primary_color", b"_darkmode_primary_color", "_darkmode_secondary_color", b"_darkmode_secondary_color", "_databroker_service_url", b"_databroker_service_url", "_default_upstream_timeout", b"_default_upstream_timeout", "_dns_failure_refresh_rate", b"_dns_failure_refresh_rate", "_dns_lookup_family", b"_dns_lookup_family", "_dns_query_timeout", b"_dns_query_timeout", "_dns_query_tries", b"_dns_query_tries", "_dns_refresh_rate", b"_dns_refresh_rate", "_dns_udp_max_queries", b"_dns_udp_max_queries", "_dns_use_tcp", b"_dns_use_tcp", "_envoy_dynamic_extensions", b"_envoy_dynamic_extensions", "_error_message_first_paragraph", b"_error_message_first_paragraph", "_favicon_url", b"_favicon_url", "_google_cloud_serverless_authentication_service_account", b"_google_cloud_serverless_authentication_service_account", "_grpc_address", b"_grpc_address", "_grpc_insecure", b"_grpc_insecure", "_headers_with_underscores_action", b"_headers_with_underscores_action", "_http_redirect_addr", b"_http_redirect_addr", "_identity_provider", b"_identity_provider", "_identity_provider_options", b"_identity_provider_options", "_identity_provider_refresh_interval", b"_identity_provider_refresh_interval", "_identity_provider_refresh_timeout", b"_identity_provider_refresh_timeout", "_idp_access_token_allowed_audiences", b"_idp_access_token_allowed_audiences", "_idp_client_id", b"_idp_client_id", "_idp_client_secret", b"_idp_client_secret", "_idp_provider", b"_idp_provider", "_idp_provider_url", b"_idp_provider_url", "_idp_refresh_directory_interval", b"_idp_refresh_directory_interval", "_idp_refresh_directory_timeout", b"_idp_refresh_directory_timeout", "_idp_service_account", b"_idp_service_account", "_insecure_server", b"_insecure_server", "_installation_id", b"_installation_id", "_jwt_issuer_format", b"_jwt_issuer_format", "_log_level", b"_log_level", "_logo_url", b"_logo_url", "_mcp_allowed_as_metadata_domains", b"_mcp_allowed_as_metadata_domains", "_mcp_allowed_client_id_domains", b"_mcp_allowed_client_id_domains", "_merge_slashes", b"_merge_slashes", "_metrics_address", b"_metrics_address", "_normalize_path", b"_normalize_path", "_otel_attribute_value_length_limit", b"_otel_attribute_value_length_limit", "_otel_bsp_max_export_batch_size", b"_otel_bsp_max_export_batch_size", "_otel_bsp_schedule_delay", b"_otel_bsp_schedule_delay", "_otel_exporter_otlp_endpoint", b"_otel_exporter_otlp_endpoint", "_otel_exporter_otlp_protocol", b"_otel_exporter_otlp_protocol", "_otel_exporter_otlp_timeout", b"_otel_exporter_otlp_timeout", "_otel_exporter_otlp_traces_endpoint", b"_otel_exporter_otlp_traces_endpoint", "_otel_exporter_otlp_traces_protocol", b"_otel_exporter_otlp_traces_protocol", "_otel_exporter_otlp_traces_timeout", b"_otel_exporter_otlp_traces_timeout", "_otel_log_level", b"_otel_log_level", "_otel_traces_exporter", b"_otel_traces_exporter", "_otel_traces_sampler_arg", b"_otel_traces_sampler_arg", "_pass_identity_headers", b"_pass_identity_headers", "_path_with_escaped_slashes_action", b"_path_with_escaped_slashes_action", "_primary_color", b"_primary_color", "_proxy_log_level", b"_proxy_log_level", "_secondary_color", b"_secondary_color", "_services", b"_services", "_session_recording_concurrency", b"_session_recording_concurrency", "_session_recording_enabled", b"_session_recording_enabled", "_shared_secret", b"_shared_secret", "_skip_xff_append", b"_skip_xff_append", "_ssh_address", b"_ssh_address", "_ssh_host_key_files", b"_ssh_host_key_files", "_ssh_host_keys", b"_ssh_host_keys", "_ssh_user_ca_key", b"_ssh_user_ca_key", "_ssh_user_ca_key_file", b"_ssh_user_ca_key_file", "_timeout_idle", b"_timeout_idle", "_timeout_read", b"_timeout_read", "_timeout_write", b"_timeout_write", "access_log_fields", b"access_log_fields", "address", b"address", "allow_upgrades", b"allow_upgrades", "authenticate_service_url", b"authenticate_service_url", "authorize_log_fields", b"authorize_log_fields", "authorize_service_url", b"authorize_service_url", "auto_apply_changesets", b"auto_apply_changesets", "autocert", b"autocert", "autocert_dir", b"autocert_dir", "autocert_must_staple", b"autocert_must_staple", "autocert_use_staging", b"autocert_use_staging", "bearer_token_format", b"bearer_token_format", "blob_storage", b"blob_storage", "cache_service_url", b"cache_service_url", "certificate_authority", b"certificate_authority", "certificate_authority_file", b"certificate_authority_file", "certificate_authority_key_pair_id", b"certificate_authority_key_pair_id", "certificates", b"certificates", "circuit_breaker_thresholds", b"circuit_breaker_thresholds", "client_ca", b"client_ca", "client_ca_file", b"client_ca_file", "client_ca_key_pair_id", b"client_ca_key_pair_id", "cluster_id", b"cluster_id", "codec_type", b"codec_type", "cookie_domain", b"cookie_domain", "cookie_expire", b"cookie_expire", "cookie_http_only", b"cookie_http_only", "cookie_name", b"cookie_name", "cookie_same_site", b"cookie_same_site", "cookie_secret", b"cookie_secret", "cookie_secure", b"cookie_secure", "darkmode_primary_color", b"darkmode_primary_color", "darkmode_secondary_color", b"darkmode_secondary_color", "databroker_service_url", b"databroker_service_url", "default_upstream_timeout", b"default_upstream_timeout", "dns_failure_refresh_rate", b"dns_failure_refresh_rate", "dns_lookup_family", b"dns_lookup_family", "dns_query_timeout", b"dns_query_timeout", "dns_query_tries", b"dns_query_tries", "dns_refresh_rate", b"dns_refresh_rate", "dns_udp_max_queries", b"dns_udp_max_queries", "dns_use_tcp", b"dns_use_tcp", "envoy_dynamic_extensions", b"envoy_dynamic_extensions", "error_message_first_paragraph", b"error_message_first_paragraph", "favicon_url", b"favicon_url", "google_cloud_serverless_authentication_service_account", b"google_cloud_serverless_authentication_service_account", "grpc_address", b"grpc_address", "grpc_insecure", b"grpc_insecure", "headers_with_underscores_action", b"headers_with_underscores_action", "http_redirect_addr", b"http_redirect_addr", "id", b"id", "identity_provider", b"identity_provider", "identity_provider_options", b"identity_provider_options", "identity_provider_refresh_interval", b"identity_provider_refresh_interval", "identity_provider_refresh_timeout", b"identity_provider_refresh_timeout", "identity_providers", b"identity_providers", "idp_access_token_allowed_audiences", b"idp_access_token_allowed_audiences", "idp_client_id", b"idp_client_id", "idp_client_secret", b"idp_client_secret", "idp_provider", b"idp_provider", "idp_provider_url", b"idp_provider_url", "idp_refresh_directory_interval", b"idp_refresh_directory_interval", "idp_refresh_directory_timeout", b"idp_refresh_directory_timeout", "idp_service_account", b"idp_service_account", "insecure_server", b"insecure_server", "installation_id", b"installation_id", "jwt_claims_headers", b"jwt_claims_headers", "jwt_groups_filter", b"jwt_groups_filter", "jwt_issuer_format", b"jwt_issuer_format", "log_level", b"log_level", "logo_url", b"logo_url", "mcp_allowed_as_metadata_domains", b"mcp_allowed_as_metadata_domains", "mcp_allowed_client_id_domains", b"mcp_allowed_client_id_domains", "merge_slashes", b"merge_slashes", "metrics_address", b"metrics_address", "modified_at", b"modified_at", "normalize_path", b"normalize_path", "originator_id", b"originator_id", "otel_attribute_value_length_limit", b"otel_attribute_value_length_limit", "otel_bsp_max_export_batch_size", b"otel_bsp_max_export_batch_size", "otel_bsp_schedule_delay", b"otel_bsp_schedule_delay", "otel_exporter_otlp_endpoint", b"otel_exporter_otlp_endpoint", "otel_exporter_otlp_headers", b"otel_exporter_otlp_headers", "otel_exporter_otlp_protocol", b"otel_exporter_otlp_protocol", "otel_exporter_otlp_timeout", b"otel_exporter_otlp_timeout", "otel_exporter_otlp_traces_endpoint", b"otel_exporter_otlp_traces_endpoint", "otel_exporter_otlp_traces_headers", b"otel_exporter_otlp_traces_headers", "otel_exporter_otlp_traces_protocol", b"otel_exporter_otlp_traces_protocol", "otel_exporter_otlp_traces_timeout", b"otel_exporter_otlp_traces_timeout", "otel_log_level", b"otel_log_level", "otel_resource_attributes", b"otel_resource_attributes", "otel_traces_exporter", b"otel_traces_exporter", "otel_traces_sampler_arg", b"otel_traces_sampler_arg", "pass_identity_headers", b"pass_identity_headers", "path_with_escaped_slashes_action", b"path_with_escaped_slashes_action", "primary_color", b"primary_color", "proxy_log_level", b"proxy_log_level", "request_params", b"request_params", "scopes", b"scopes", "secondary_color", b"secondary_color", "services", b"services", "session_recording_concurrency", b"session_recording_concurrency", "session_recording_enabled", b"session_recording_enabled", "set_response_headers", b"set_response_headers", "shared_secret", b"shared_secret", "skip_xff_append", b"skip_xff_append", "ssh_address", b"ssh_address", "ssh_host_key_files", b"ssh_host_key_files", "ssh_host_keys", b"ssh_host_keys", "ssh_user_ca_key", b"ssh_user_ca_key", "ssh_user_ca_key_file", b"ssh_user_ca_key_file", "timeout_idle", b"timeout_idle", "timeout_read", b"timeout_read", "timeout_write", b"timeout_write"]) -> None: ... @typing.overload def WhichOneof(self, oneof_group: typing.Literal["_access_log_fields", b"_access_log_fields"]) -> typing.Literal["access_log_fields"] | None: ... @typing.overload