@mochabug/adaptkit 1.0.0-rc.55 → 1.0.0-rc.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/genproto/mochabugapis/adapt/plugins/v1/compound_services_pb.d.ts +2 -78
- package/bin/genproto/mochabugapis/adapt/plugins/v1/compound_services_pb.d.ts.map +1 -1
- package/bin/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.d.ts +14 -580
- package/bin/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.d.ts.map +1 -1
- package/bin/genproto/mochabugapis/adapt/plugins/v1/manifest_pb.d.ts +15 -0
- package/bin/genproto/mochabugapis/adapt/plugins/v1/manifest_pb.d.ts.map +1 -1
- package/bin/genproto/mochabugapis/adapt/plugins/v1/oauth2_service_pb.d.ts +0 -448
- package/bin/genproto/mochabugapis/adapt/plugins/v1/oauth2_service_pb.d.ts.map +1 -1
- package/bin/genproto/mochabugapis/adapt/plugins/v1/state_contract_pb.d.ts +107 -0
- package/bin/genproto/mochabugapis/adapt/plugins/v1/state_contract_pb.d.ts.map +1 -0
- package/bin/genproto/mochabugapis/adapt/plugins/v1/variable_service_pb.d.ts +0 -61
- package/bin/genproto/mochabugapis/adapt/plugins/v1/variable_service_pb.d.ts.map +1 -1
- package/bin/genproto/mochabugapis/adapt/plugins/v1/vertex_pb.d.ts +31 -0
- package/bin/genproto/mochabugapis/adapt/plugins/v1/vertex_pb.d.ts.map +1 -1
- package/bin/index.js +30 -58
- package/bin/index.js.map +3 -3
- package/bin/init.d.ts.map +1 -1
- package/bin/utils.d.ts.map +1 -1
- package/bin/vertices.d.ts.map +1 -1
- package/package.json +4 -4
- package/bin/genproto/mochabugapis/adapt/plugins/v1/service_settings_pb.d.ts +0 -539
- package/bin/genproto/mochabugapis/adapt/plugins/v1/service_settings_pb.d.ts.map +0 -1
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
|
|
2
|
-
import type { File, FileJson } from "./file_pb";
|
|
3
2
|
import type { Message } from "@bufbuild/protobuf";
|
|
4
3
|
/**
|
|
5
4
|
* Describes the file mochabugapis/adapt/plugins/v1/http_proxy_service.proto.
|
|
@@ -171,7 +170,7 @@ export type HttpProxyDefinition = Message<"mochabugapis.adapt.plugins.v1.HttpPro
|
|
|
171
170
|
/**
|
|
172
171
|
* When true: the user defines which hosts this proxy connects to.
|
|
173
172
|
* - Definition's allowed_hosts become optional defaults shown in the UI.
|
|
174
|
-
* - User's hosts in
|
|
173
|
+
* - User's hosts in the pluginservices HTTP proxy config REPLACE the entire list.
|
|
175
174
|
* - If user provides no hosts and definition has no defaults, the service is not configured.
|
|
176
175
|
*
|
|
177
176
|
* When false or unset (default): current behavior.
|
|
@@ -348,7 +347,7 @@ export type HttpProxyDefinitionJson = {
|
|
|
348
347
|
/**
|
|
349
348
|
* When true: the user defines which hosts this proxy connects to.
|
|
350
349
|
* - Definition's allowed_hosts become optional defaults shown in the UI.
|
|
351
|
-
* - User's hosts in
|
|
350
|
+
* - User's hosts in the pluginservices HTTP proxy config REPLACE the entire list.
|
|
352
351
|
* - If user provides no hosts and definition has no defaults, the service is not configured.
|
|
353
352
|
*
|
|
354
353
|
* When false or unset (default): current behavior.
|
|
@@ -566,12 +565,13 @@ export declare const HeaderTemplateSchema: GenMessage<HeaderTemplate, {
|
|
|
566
565
|
/**
|
|
567
566
|
* TLS configuration defining the security requirements for upstream connections.
|
|
568
567
|
*
|
|
569
|
-
* Supports two authentication modes
|
|
568
|
+
* Supports two authentication modes. CA bundles live in runtime config because
|
|
569
|
+
* HTTP proxy settings use bindings to reference user-scoped certificate material.
|
|
570
570
|
*
|
|
571
571
|
* ## Security Model
|
|
572
572
|
*
|
|
573
|
-
* -
|
|
574
|
-
* - Private keys and client certificates: MUST be in config
|
|
573
|
+
* - CA bundles: MUST be in config
|
|
574
|
+
* - Private keys and client certificates: MUST be in config
|
|
575
575
|
*
|
|
576
576
|
* ## Mode Descriptions
|
|
577
577
|
*
|
|
@@ -635,67 +635,17 @@ export type TlsDefinition = Message<"mochabugapis.adapt.plugins.v1.TlsDefinition
|
|
|
635
635
|
* @generated from field: optional string certificate_host = 2;
|
|
636
636
|
*/
|
|
637
637
|
certificateHost?: string | undefined;
|
|
638
|
-
/**
|
|
639
|
-
* Optional CA bundle for server certificate validation.
|
|
640
|
-
*
|
|
641
|
-
* ## Why CA Bundle in Definition?
|
|
642
|
-
*
|
|
643
|
-
* CA bundles contain PUBLIC certificates (not secrets), so they can be safely
|
|
644
|
-
* embedded in the plugin definition. This reduces configuration burden on users
|
|
645
|
-
* when the CA bundle is known ahead of time.
|
|
646
|
-
*
|
|
647
|
-
* ## When to Use This Field
|
|
648
|
-
*
|
|
649
|
-
* Set the CA bundle in the definition when:
|
|
650
|
-
* - The upstream service uses a self-signed certificate
|
|
651
|
-
* - The upstream uses a private/internal Certificate Authority
|
|
652
|
-
* - You want to pin specific CA certificates for security
|
|
653
|
-
* - The CA bundle is static and known at plugin authoring time
|
|
654
|
-
*
|
|
655
|
-
* ## When to Use TlsConfig.ca_bundle Instead
|
|
656
|
-
*
|
|
657
|
-
* Leave this empty and use TlsConfig.ca_bundle when:
|
|
658
|
-
* - Different users need different CA bundles
|
|
659
|
-
* - The CA bundle is dynamic or environment-specific
|
|
660
|
-
* - Users want to override the plugin's default CA bundle
|
|
661
|
-
*
|
|
662
|
-
* ## Configuration Rules
|
|
663
|
-
*
|
|
664
|
-
* For MODE_SERVER_ONLY:
|
|
665
|
-
* - At least one CA bundle must be provided (either here OR in TlsConfig)
|
|
666
|
-
* - If set here: users don't need to provide TlsConfig.ca_bundle
|
|
667
|
-
* - If NOT set here: users MUST provide TlsConfig.ca_bundle
|
|
668
|
-
*
|
|
669
|
-
* For MODE_MTLS:
|
|
670
|
-
* - Same CA bundle rules as MODE_SERVER_ONLY
|
|
671
|
-
* - Users must ALSO provide client certificate and private_key in TlsConfig
|
|
672
|
-
*
|
|
673
|
-
* ## Precedence
|
|
674
|
-
*
|
|
675
|
-
* If CA bundle is provided in both the definition AND TlsConfig:
|
|
676
|
-
* - TlsConfig.ca_bundle takes precedence (config overrides definition)
|
|
677
|
-
* - This allows users to override the plugin's default CA bundle if needed
|
|
678
|
-
*
|
|
679
|
-
* ## Format
|
|
680
|
-
*
|
|
681
|
-
* The CA bundle must be in PEM format (same as TlsConfig.ca_bundle).
|
|
682
|
-
* If a certificate chain is presented, the root CA must be included.
|
|
683
|
-
*
|
|
684
|
-
* IF this points to a file on the disk, then it will be loaded from there.
|
|
685
|
-
*
|
|
686
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File ca_bundle = 3;
|
|
687
|
-
*/
|
|
688
|
-
caBundle?: File | undefined;
|
|
689
638
|
};
|
|
690
639
|
/**
|
|
691
640
|
* TLS configuration defining the security requirements for upstream connections.
|
|
692
641
|
*
|
|
693
|
-
* Supports two authentication modes
|
|
642
|
+
* Supports two authentication modes. CA bundles live in runtime config because
|
|
643
|
+
* HTTP proxy settings use bindings to reference user-scoped certificate material.
|
|
694
644
|
*
|
|
695
645
|
* ## Security Model
|
|
696
646
|
*
|
|
697
|
-
* -
|
|
698
|
-
* - Private keys and client certificates: MUST be in config
|
|
647
|
+
* - CA bundles: MUST be in config
|
|
648
|
+
* - Private keys and client certificates: MUST be in config
|
|
699
649
|
*
|
|
700
650
|
* ## Mode Descriptions
|
|
701
651
|
*
|
|
@@ -759,57 +709,6 @@ export type TlsDefinitionJson = {
|
|
|
759
709
|
* @generated from field: optional string certificate_host = 2;
|
|
760
710
|
*/
|
|
761
711
|
certificateHost?: string;
|
|
762
|
-
/**
|
|
763
|
-
* Optional CA bundle for server certificate validation.
|
|
764
|
-
*
|
|
765
|
-
* ## Why CA Bundle in Definition?
|
|
766
|
-
*
|
|
767
|
-
* CA bundles contain PUBLIC certificates (not secrets), so they can be safely
|
|
768
|
-
* embedded in the plugin definition. This reduces configuration burden on users
|
|
769
|
-
* when the CA bundle is known ahead of time.
|
|
770
|
-
*
|
|
771
|
-
* ## When to Use This Field
|
|
772
|
-
*
|
|
773
|
-
* Set the CA bundle in the definition when:
|
|
774
|
-
* - The upstream service uses a self-signed certificate
|
|
775
|
-
* - The upstream uses a private/internal Certificate Authority
|
|
776
|
-
* - You want to pin specific CA certificates for security
|
|
777
|
-
* - The CA bundle is static and known at plugin authoring time
|
|
778
|
-
*
|
|
779
|
-
* ## When to Use TlsConfig.ca_bundle Instead
|
|
780
|
-
*
|
|
781
|
-
* Leave this empty and use TlsConfig.ca_bundle when:
|
|
782
|
-
* - Different users need different CA bundles
|
|
783
|
-
* - The CA bundle is dynamic or environment-specific
|
|
784
|
-
* - Users want to override the plugin's default CA bundle
|
|
785
|
-
*
|
|
786
|
-
* ## Configuration Rules
|
|
787
|
-
*
|
|
788
|
-
* For MODE_SERVER_ONLY:
|
|
789
|
-
* - At least one CA bundle must be provided (either here OR in TlsConfig)
|
|
790
|
-
* - If set here: users don't need to provide TlsConfig.ca_bundle
|
|
791
|
-
* - If NOT set here: users MUST provide TlsConfig.ca_bundle
|
|
792
|
-
*
|
|
793
|
-
* For MODE_MTLS:
|
|
794
|
-
* - Same CA bundle rules as MODE_SERVER_ONLY
|
|
795
|
-
* - Users must ALSO provide client certificate and private_key in TlsConfig
|
|
796
|
-
*
|
|
797
|
-
* ## Precedence
|
|
798
|
-
*
|
|
799
|
-
* If CA bundle is provided in both the definition AND TlsConfig:
|
|
800
|
-
* - TlsConfig.ca_bundle takes precedence (config overrides definition)
|
|
801
|
-
* - This allows users to override the plugin's default CA bundle if needed
|
|
802
|
-
*
|
|
803
|
-
* ## Format
|
|
804
|
-
*
|
|
805
|
-
* The CA bundle must be in PEM format (same as TlsConfig.ca_bundle).
|
|
806
|
-
* If a certificate chain is presented, the root CA must be included.
|
|
807
|
-
*
|
|
808
|
-
* IF this points to a file on the disk, then it will be loaded from there.
|
|
809
|
-
*
|
|
810
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File ca_bundle = 3;
|
|
811
|
-
*/
|
|
812
|
-
caBundle?: FileJson;
|
|
813
712
|
};
|
|
814
713
|
/**
|
|
815
714
|
* Describes the message mochabugapis.adapt.plugins.v1.TlsDefinition.
|
|
@@ -834,9 +733,9 @@ export declare enum TlsDefinition_Mode {
|
|
|
834
733
|
* Mutual TLS: Both client and server authenticate each other.
|
|
835
734
|
*
|
|
836
735
|
* Configuration requirements:
|
|
837
|
-
* - CA bundle:
|
|
838
|
-
* - Client certificate: REQUIRED in
|
|
839
|
-
* - Client private key: REQUIRED in
|
|
736
|
+
* - CA bundle: REQUIRED in pluginservices runtime TLS state
|
|
737
|
+
* - Client certificate: REQUIRED in pluginservices runtime TLS state
|
|
738
|
+
* - Client private key: REQUIRED in pluginservices runtime TLS state
|
|
840
739
|
*
|
|
841
740
|
* Use when:
|
|
842
741
|
* - Upstream service requires client certificate authentication
|
|
@@ -850,7 +749,7 @@ export declare enum TlsDefinition_Mode {
|
|
|
850
749
|
* Server-only validation: Client verifies server identity.
|
|
851
750
|
*
|
|
852
751
|
* Configuration requirements:
|
|
853
|
-
* - CA bundle:
|
|
752
|
+
* - CA bundle: REQUIRED in pluginservices runtime TLS state
|
|
854
753
|
* - Client certificate: NOT used
|
|
855
754
|
* - Client private key: NOT used
|
|
856
755
|
*
|
|
@@ -874,469 +773,4 @@ export type TlsDefinition_ModeJson = "MODE_UNSPECIFIED" | "MODE_MTLS" | "MODE_SE
|
|
|
874
773
|
* Describes the enum mochabugapis.adapt.plugins.v1.TlsDefinition.Mode.
|
|
875
774
|
*/
|
|
876
775
|
export declare const TlsDefinition_ModeSchema: GenEnum<TlsDefinition_Mode, TlsDefinition_ModeJson>;
|
|
877
|
-
/**
|
|
878
|
-
* The actual TLS configuration containing runtime secrets.
|
|
879
|
-
*
|
|
880
|
-
* This provides the secret/dynamic parts of the TLS configuration that cannot
|
|
881
|
-
* be embedded in the plugin definition (private keys, user-specific certificates).
|
|
882
|
-
*
|
|
883
|
-
* ## Relationship to TlsDefinition
|
|
884
|
-
*
|
|
885
|
-
* - TlsDefinition: Defines the TLS mode and optionally includes the CA bundle (public cert)
|
|
886
|
-
* - TlsConfig: Provides runtime secrets (private keys, client certificates)
|
|
887
|
-
*
|
|
888
|
-
* ## Configuration Requirements
|
|
889
|
-
*
|
|
890
|
-
* For MODE_SERVER_ONLY:
|
|
891
|
-
* - ca_bundle: Required if NOT provided in TlsDefinition.ca_bundle
|
|
892
|
-
* - certificate: NOT used
|
|
893
|
-
* - private_key: NOT used
|
|
894
|
-
*
|
|
895
|
-
* For MODE_MTLS:
|
|
896
|
-
* - ca_bundle: Required if NOT provided in TlsDefinition.ca_bundle
|
|
897
|
-
* - certificate: REQUIRED (client certificate for mutual TLS)
|
|
898
|
-
* - private_key: REQUIRED (client private key for mutual TLS)
|
|
899
|
-
*
|
|
900
|
-
* @generated from message mochabugapis.adapt.plugins.v1.TlsConfig
|
|
901
|
-
*/
|
|
902
|
-
export type TlsConfig = Message<"mochabugapis.adapt.plugins.v1.TlsConfig"> & {
|
|
903
|
-
/**
|
|
904
|
-
* Optional CA bundle for server certificate validation.
|
|
905
|
-
*
|
|
906
|
-
* The CA bundle in PEM format containing one or more trusted Certificate Authorities.
|
|
907
|
-
* The content of the file must be PEM format after decoding.
|
|
908
|
-
* If a certificate chain is presented, the root CA must be included.
|
|
909
|
-
*
|
|
910
|
-
* ## When to Provide This
|
|
911
|
-
*
|
|
912
|
-
* REQUIRED if TlsDefinition.ca_bundle is NOT set.
|
|
913
|
-
* OPTIONAL if TlsDefinition.ca_bundle is set (this will override the definition's CA bundle).
|
|
914
|
-
*
|
|
915
|
-
* ## Override Behavior
|
|
916
|
-
*
|
|
917
|
-
* If both TlsDefinition.ca_bundle and TlsConfig.ca_bundle are provided:
|
|
918
|
-
* - This config value takes precedence
|
|
919
|
-
* - Allows users to override the plugin author's default CA bundle
|
|
920
|
-
*
|
|
921
|
-
* ## Use Cases for Override
|
|
922
|
-
*
|
|
923
|
-
* - User's organization has different root CAs
|
|
924
|
-
* - Testing with different certificate chains
|
|
925
|
-
* - Environment-specific CA requirements
|
|
926
|
-
*
|
|
927
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File ca_bundle = 1;
|
|
928
|
-
*/
|
|
929
|
-
caBundle?: File | undefined;
|
|
930
|
-
/**
|
|
931
|
-
* Optional client certificate for mutual TLS authentication.
|
|
932
|
-
*
|
|
933
|
-
* The certificate in PEM format used to authenticate the client to the server.
|
|
934
|
-
* The content of the file must be PEM format after decoding.
|
|
935
|
-
* If a certificate chain is presented, the client certificate must be the first one.
|
|
936
|
-
*
|
|
937
|
-
* REQUIRED if TlsDefinition.mode is MODE_MTLS.
|
|
938
|
-
* MUST NOT be provided if TlsDefinition.mode is MODE_SERVER_ONLY.
|
|
939
|
-
*
|
|
940
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File certificate = 2;
|
|
941
|
-
*/
|
|
942
|
-
certificate?: File | undefined;
|
|
943
|
-
/**
|
|
944
|
-
* Optional client private key for mutual TLS authentication.
|
|
945
|
-
*
|
|
946
|
-
* The private key in PEM format corresponding to the client certificate.
|
|
947
|
-
* The content of the file must be PEM format after decoding.
|
|
948
|
-
* The content must contain a PRIVATE KEY block.
|
|
949
|
-
*
|
|
950
|
-
* REQUIRED if TlsDefinition.mode is MODE_MTLS.
|
|
951
|
-
* MUST NOT be provided if TlsDefinition.mode is MODE_SERVER_ONLY.
|
|
952
|
-
*
|
|
953
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File private_key = 3;
|
|
954
|
-
*/
|
|
955
|
-
privateKey?: File | undefined;
|
|
956
|
-
};
|
|
957
|
-
/**
|
|
958
|
-
* The actual TLS configuration containing runtime secrets.
|
|
959
|
-
*
|
|
960
|
-
* This provides the secret/dynamic parts of the TLS configuration that cannot
|
|
961
|
-
* be embedded in the plugin definition (private keys, user-specific certificates).
|
|
962
|
-
*
|
|
963
|
-
* ## Relationship to TlsDefinition
|
|
964
|
-
*
|
|
965
|
-
* - TlsDefinition: Defines the TLS mode and optionally includes the CA bundle (public cert)
|
|
966
|
-
* - TlsConfig: Provides runtime secrets (private keys, client certificates)
|
|
967
|
-
*
|
|
968
|
-
* ## Configuration Requirements
|
|
969
|
-
*
|
|
970
|
-
* For MODE_SERVER_ONLY:
|
|
971
|
-
* - ca_bundle: Required if NOT provided in TlsDefinition.ca_bundle
|
|
972
|
-
* - certificate: NOT used
|
|
973
|
-
* - private_key: NOT used
|
|
974
|
-
*
|
|
975
|
-
* For MODE_MTLS:
|
|
976
|
-
* - ca_bundle: Required if NOT provided in TlsDefinition.ca_bundle
|
|
977
|
-
* - certificate: REQUIRED (client certificate for mutual TLS)
|
|
978
|
-
* - private_key: REQUIRED (client private key for mutual TLS)
|
|
979
|
-
*
|
|
980
|
-
* @generated from message mochabugapis.adapt.plugins.v1.TlsConfig
|
|
981
|
-
*/
|
|
982
|
-
export type TlsConfigJson = {
|
|
983
|
-
/**
|
|
984
|
-
* Optional CA bundle for server certificate validation.
|
|
985
|
-
*
|
|
986
|
-
* The CA bundle in PEM format containing one or more trusted Certificate Authorities.
|
|
987
|
-
* The content of the file must be PEM format after decoding.
|
|
988
|
-
* If a certificate chain is presented, the root CA must be included.
|
|
989
|
-
*
|
|
990
|
-
* ## When to Provide This
|
|
991
|
-
*
|
|
992
|
-
* REQUIRED if TlsDefinition.ca_bundle is NOT set.
|
|
993
|
-
* OPTIONAL if TlsDefinition.ca_bundle is set (this will override the definition's CA bundle).
|
|
994
|
-
*
|
|
995
|
-
* ## Override Behavior
|
|
996
|
-
*
|
|
997
|
-
* If both TlsDefinition.ca_bundle and TlsConfig.ca_bundle are provided:
|
|
998
|
-
* - This config value takes precedence
|
|
999
|
-
* - Allows users to override the plugin author's default CA bundle
|
|
1000
|
-
*
|
|
1001
|
-
* ## Use Cases for Override
|
|
1002
|
-
*
|
|
1003
|
-
* - User's organization has different root CAs
|
|
1004
|
-
* - Testing with different certificate chains
|
|
1005
|
-
* - Environment-specific CA requirements
|
|
1006
|
-
*
|
|
1007
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File ca_bundle = 1;
|
|
1008
|
-
*/
|
|
1009
|
-
caBundle?: FileJson;
|
|
1010
|
-
/**
|
|
1011
|
-
* Optional client certificate for mutual TLS authentication.
|
|
1012
|
-
*
|
|
1013
|
-
* The certificate in PEM format used to authenticate the client to the server.
|
|
1014
|
-
* The content of the file must be PEM format after decoding.
|
|
1015
|
-
* If a certificate chain is presented, the client certificate must be the first one.
|
|
1016
|
-
*
|
|
1017
|
-
* REQUIRED if TlsDefinition.mode is MODE_MTLS.
|
|
1018
|
-
* MUST NOT be provided if TlsDefinition.mode is MODE_SERVER_ONLY.
|
|
1019
|
-
*
|
|
1020
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File certificate = 2;
|
|
1021
|
-
*/
|
|
1022
|
-
certificate?: FileJson;
|
|
1023
|
-
/**
|
|
1024
|
-
* Optional client private key for mutual TLS authentication.
|
|
1025
|
-
*
|
|
1026
|
-
* The private key in PEM format corresponding to the client certificate.
|
|
1027
|
-
* The content of the file must be PEM format after decoding.
|
|
1028
|
-
* The content must contain a PRIVATE KEY block.
|
|
1029
|
-
*
|
|
1030
|
-
* REQUIRED if TlsDefinition.mode is MODE_MTLS.
|
|
1031
|
-
* MUST NOT be provided if TlsDefinition.mode is MODE_SERVER_ONLY.
|
|
1032
|
-
*
|
|
1033
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.File private_key = 3;
|
|
1034
|
-
*/
|
|
1035
|
-
privateKey?: FileJson;
|
|
1036
|
-
};
|
|
1037
|
-
/**
|
|
1038
|
-
* Describes the message mochabugapis.adapt.plugins.v1.TlsConfig.
|
|
1039
|
-
* Use `create(TlsConfigSchema)` to create a new message.
|
|
1040
|
-
*/
|
|
1041
|
-
export declare const TlsConfigSchema: GenMessage<TlsConfig, {
|
|
1042
|
-
jsonType: TlsConfigJson;
|
|
1043
|
-
}>;
|
|
1044
|
-
/**
|
|
1045
|
-
* The actual HTTP proxy configuration containing runtime values
|
|
1046
|
-
*
|
|
1047
|
-
* This message provides the actual configuration values for the HTTP proxy service,
|
|
1048
|
-
* including TLS certificates and template variable values for header injection.
|
|
1049
|
-
*
|
|
1050
|
-
* ## Relationship to HttpProxyDefinition
|
|
1051
|
-
*
|
|
1052
|
-
* - HttpProxyDefinition: Defines the schema (which headers to inject, template syntax, TLS mode)
|
|
1053
|
-
* - HttpProxyConfig: Provides the actual values (certificates, variable values)
|
|
1054
|
-
*
|
|
1055
|
-
* ## Example
|
|
1056
|
-
*
|
|
1057
|
-
* Given a definition with:
|
|
1058
|
-
* - inject_headers["Authorization"].template.template = "Bearer %ACCESS_TOKEN%"
|
|
1059
|
-
* - tls.mode = MODE_SERVER_ONLY
|
|
1060
|
-
*
|
|
1061
|
-
* The config would provide:
|
|
1062
|
-
* - tls_config.ca_bundle = <actual CA certificate>
|
|
1063
|
-
* - template_variables["ACCESS_TOKEN"] = "eyJhbGci..." (the actual token)
|
|
1064
|
-
*
|
|
1065
|
-
* @generated from message mochabugapis.adapt.plugins.v1.HttpProxyConfig
|
|
1066
|
-
*/
|
|
1067
|
-
export type HttpProxyConfig = Message<"mochabugapis.adapt.plugins.v1.HttpProxyConfig"> & {
|
|
1068
|
-
/**
|
|
1069
|
-
* The actual TLS configuration with certificates and private keys.
|
|
1070
|
-
*
|
|
1071
|
-
* REQUIRED if HttpProxyDefinition.tls is set.
|
|
1072
|
-
* MUST NOT be set if HttpProxyDefinition.tls is not set.
|
|
1073
|
-
*
|
|
1074
|
-
* For MODE_SERVER_ONLY:
|
|
1075
|
-
* - Provide only ca_bundle
|
|
1076
|
-
* - Leave certificate and private_key empty
|
|
1077
|
-
*
|
|
1078
|
-
* For MODE_MTLS:
|
|
1079
|
-
* - Provide ca_bundle, certificate, AND private_key
|
|
1080
|
-
*
|
|
1081
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.TlsConfig tls_config = 1;
|
|
1082
|
-
*/
|
|
1083
|
-
tlsConfig?: TlsConfig | undefined;
|
|
1084
|
-
/**
|
|
1085
|
-
* Template variable values for dynamic header injection, organized by header name.
|
|
1086
|
-
*
|
|
1087
|
-
* This provides the actual values for template variables used in HttpProxyDefinition.inject_headers.
|
|
1088
|
-
* Each header that uses template variables needs its variables resolved here.
|
|
1089
|
-
*
|
|
1090
|
-
* ## Structure
|
|
1091
|
-
*
|
|
1092
|
-
* Outer map key: HTTP header name (must match a key in HttpProxyDefinition.inject_headers)
|
|
1093
|
-
* Outer map value: Map of variable names to their actual values for that specific header
|
|
1094
|
-
*
|
|
1095
|
-
* This structure mirrors HttpProxyDefinition.inject_headers, making it clear
|
|
1096
|
-
* which variables belong to which header template.
|
|
1097
|
-
*
|
|
1098
|
-
* ## Variable Name Requirements
|
|
1099
|
-
*
|
|
1100
|
-
* Variable names must match the %VARIABLE% patterns used in the header's template:
|
|
1101
|
-
* - Start with a letter or underscore
|
|
1102
|
-
* - Contain only letters, numbers, and underscores
|
|
1103
|
-
* - Case-sensitive (e.g., %ACCESS_TOKEN% requires variable name "ACCESS_TOKEN")
|
|
1104
|
-
*
|
|
1105
|
-
* ## Examples
|
|
1106
|
-
*
|
|
1107
|
-
* Given a definition with:
|
|
1108
|
-
* - inject_headers["Authorization"].template = "Bearer %ACCESS_TOKEN%"
|
|
1109
|
-
* - inject_headers["X-Correlation"].template = "%TENANT_ID%:%USER_ID%"
|
|
1110
|
-
*
|
|
1111
|
-
* The config must provide:
|
|
1112
|
-
* - header_variables["Authorization"]["ACCESS_TOKEN"] = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9..."
|
|
1113
|
-
* - header_variables["X-Correlation"]["TENANT_ID"] = "org_123"
|
|
1114
|
-
* - header_variables["X-Correlation"]["USER_ID"] = "user_456"
|
|
1115
|
-
*
|
|
1116
|
-
* ## Security
|
|
1117
|
-
*
|
|
1118
|
-
* All values are stored securely and encrypted at rest.
|
|
1119
|
-
* The HeaderTemplate.plaintext flag (in the definition) controls whether
|
|
1120
|
-
* the variable value is treated as a secret or shown in logs/UI.
|
|
1121
|
-
*
|
|
1122
|
-
* ## Variable Resolution Process
|
|
1123
|
-
*
|
|
1124
|
-
* Users of the plugin are prompted to provide values for all template variables.
|
|
1125
|
-
* For system services, the plugin author provides the values programmatically.
|
|
1126
|
-
*
|
|
1127
|
-
* During configuration, it is fully transparent to users:
|
|
1128
|
-
* - Which hostname the request will be sent to (from allowed_hosts)
|
|
1129
|
-
* - Which headers are being injected
|
|
1130
|
-
* - What template variables are required
|
|
1131
|
-
* - Whether each variable is a secret or plaintext
|
|
1132
|
-
*
|
|
1133
|
-
* Users see exactly what data they are providing and where it will be sent.
|
|
1134
|
-
*
|
|
1135
|
-
* ## Runtime Behavior
|
|
1136
|
-
*
|
|
1137
|
-
* If a variable referenced in a header template is missing from this config,
|
|
1138
|
-
* the header injection will fail at runtime and the request will not be sent.
|
|
1139
|
-
*
|
|
1140
|
-
* ## Validation
|
|
1141
|
-
*
|
|
1142
|
-
* - Header names in this map MUST match headers in HttpProxyDefinition.inject_headers
|
|
1143
|
-
* - All variables referenced in each header's template must be provided
|
|
1144
|
-
* - Extra variables (not referenced in the template) are ignored
|
|
1145
|
-
*
|
|
1146
|
-
* @generated from field: map<string, mochabugapis.adapt.plugins.v1.HeaderVariables> header_variables = 2;
|
|
1147
|
-
*/
|
|
1148
|
-
headerVariables: {
|
|
1149
|
-
[key: string]: HeaderVariables;
|
|
1150
|
-
};
|
|
1151
|
-
/**
|
|
1152
|
-
* User-defined allowed hosts. Only valid when the corresponding
|
|
1153
|
-
* HttpProxyDefinition has user_defined_hosts = true.
|
|
1154
|
-
*
|
|
1155
|
-
* When provided, this list REPLACES the definition's allowed_hosts entirely.
|
|
1156
|
-
* When empty, the definition's allowed_hosts are used as defaults.
|
|
1157
|
-
*
|
|
1158
|
-
* Each entry follows the same format as definition allowed_hosts:
|
|
1159
|
-
* - "api.example.com" exact host, any port
|
|
1160
|
-
* - "*.example.com" wildcard subdomain (any depth), any port
|
|
1161
|
-
* - "api.example.com:8443" exact host, specific port
|
|
1162
|
-
* - "*.example.com:8443" wildcard subdomain, specific port
|
|
1163
|
-
*
|
|
1164
|
-
* @generated from field: repeated string allowed_hosts = 3;
|
|
1165
|
-
*/
|
|
1166
|
-
allowedHosts: string[];
|
|
1167
|
-
};
|
|
1168
|
-
/**
|
|
1169
|
-
* The actual HTTP proxy configuration containing runtime values
|
|
1170
|
-
*
|
|
1171
|
-
* This message provides the actual configuration values for the HTTP proxy service,
|
|
1172
|
-
* including TLS certificates and template variable values for header injection.
|
|
1173
|
-
*
|
|
1174
|
-
* ## Relationship to HttpProxyDefinition
|
|
1175
|
-
*
|
|
1176
|
-
* - HttpProxyDefinition: Defines the schema (which headers to inject, template syntax, TLS mode)
|
|
1177
|
-
* - HttpProxyConfig: Provides the actual values (certificates, variable values)
|
|
1178
|
-
*
|
|
1179
|
-
* ## Example
|
|
1180
|
-
*
|
|
1181
|
-
* Given a definition with:
|
|
1182
|
-
* - inject_headers["Authorization"].template.template = "Bearer %ACCESS_TOKEN%"
|
|
1183
|
-
* - tls.mode = MODE_SERVER_ONLY
|
|
1184
|
-
*
|
|
1185
|
-
* The config would provide:
|
|
1186
|
-
* - tls_config.ca_bundle = <actual CA certificate>
|
|
1187
|
-
* - template_variables["ACCESS_TOKEN"] = "eyJhbGci..." (the actual token)
|
|
1188
|
-
*
|
|
1189
|
-
* @generated from message mochabugapis.adapt.plugins.v1.HttpProxyConfig
|
|
1190
|
-
*/
|
|
1191
|
-
export type HttpProxyConfigJson = {
|
|
1192
|
-
/**
|
|
1193
|
-
* The actual TLS configuration with certificates and private keys.
|
|
1194
|
-
*
|
|
1195
|
-
* REQUIRED if HttpProxyDefinition.tls is set.
|
|
1196
|
-
* MUST NOT be set if HttpProxyDefinition.tls is not set.
|
|
1197
|
-
*
|
|
1198
|
-
* For MODE_SERVER_ONLY:
|
|
1199
|
-
* - Provide only ca_bundle
|
|
1200
|
-
* - Leave certificate and private_key empty
|
|
1201
|
-
*
|
|
1202
|
-
* For MODE_MTLS:
|
|
1203
|
-
* - Provide ca_bundle, certificate, AND private_key
|
|
1204
|
-
*
|
|
1205
|
-
* @generated from field: optional mochabugapis.adapt.plugins.v1.TlsConfig tls_config = 1;
|
|
1206
|
-
*/
|
|
1207
|
-
tlsConfig?: TlsConfigJson;
|
|
1208
|
-
/**
|
|
1209
|
-
* Template variable values for dynamic header injection, organized by header name.
|
|
1210
|
-
*
|
|
1211
|
-
* This provides the actual values for template variables used in HttpProxyDefinition.inject_headers.
|
|
1212
|
-
* Each header that uses template variables needs its variables resolved here.
|
|
1213
|
-
*
|
|
1214
|
-
* ## Structure
|
|
1215
|
-
*
|
|
1216
|
-
* Outer map key: HTTP header name (must match a key in HttpProxyDefinition.inject_headers)
|
|
1217
|
-
* Outer map value: Map of variable names to their actual values for that specific header
|
|
1218
|
-
*
|
|
1219
|
-
* This structure mirrors HttpProxyDefinition.inject_headers, making it clear
|
|
1220
|
-
* which variables belong to which header template.
|
|
1221
|
-
*
|
|
1222
|
-
* ## Variable Name Requirements
|
|
1223
|
-
*
|
|
1224
|
-
* Variable names must match the %VARIABLE% patterns used in the header's template:
|
|
1225
|
-
* - Start with a letter or underscore
|
|
1226
|
-
* - Contain only letters, numbers, and underscores
|
|
1227
|
-
* - Case-sensitive (e.g., %ACCESS_TOKEN% requires variable name "ACCESS_TOKEN")
|
|
1228
|
-
*
|
|
1229
|
-
* ## Examples
|
|
1230
|
-
*
|
|
1231
|
-
* Given a definition with:
|
|
1232
|
-
* - inject_headers["Authorization"].template = "Bearer %ACCESS_TOKEN%"
|
|
1233
|
-
* - inject_headers["X-Correlation"].template = "%TENANT_ID%:%USER_ID%"
|
|
1234
|
-
*
|
|
1235
|
-
* The config must provide:
|
|
1236
|
-
* - header_variables["Authorization"]["ACCESS_TOKEN"] = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9..."
|
|
1237
|
-
* - header_variables["X-Correlation"]["TENANT_ID"] = "org_123"
|
|
1238
|
-
* - header_variables["X-Correlation"]["USER_ID"] = "user_456"
|
|
1239
|
-
*
|
|
1240
|
-
* ## Security
|
|
1241
|
-
*
|
|
1242
|
-
* All values are stored securely and encrypted at rest.
|
|
1243
|
-
* The HeaderTemplate.plaintext flag (in the definition) controls whether
|
|
1244
|
-
* the variable value is treated as a secret or shown in logs/UI.
|
|
1245
|
-
*
|
|
1246
|
-
* ## Variable Resolution Process
|
|
1247
|
-
*
|
|
1248
|
-
* Users of the plugin are prompted to provide values for all template variables.
|
|
1249
|
-
* For system services, the plugin author provides the values programmatically.
|
|
1250
|
-
*
|
|
1251
|
-
* During configuration, it is fully transparent to users:
|
|
1252
|
-
* - Which hostname the request will be sent to (from allowed_hosts)
|
|
1253
|
-
* - Which headers are being injected
|
|
1254
|
-
* - What template variables are required
|
|
1255
|
-
* - Whether each variable is a secret or plaintext
|
|
1256
|
-
*
|
|
1257
|
-
* Users see exactly what data they are providing and where it will be sent.
|
|
1258
|
-
*
|
|
1259
|
-
* ## Runtime Behavior
|
|
1260
|
-
*
|
|
1261
|
-
* If a variable referenced in a header template is missing from this config,
|
|
1262
|
-
* the header injection will fail at runtime and the request will not be sent.
|
|
1263
|
-
*
|
|
1264
|
-
* ## Validation
|
|
1265
|
-
*
|
|
1266
|
-
* - Header names in this map MUST match headers in HttpProxyDefinition.inject_headers
|
|
1267
|
-
* - All variables referenced in each header's template must be provided
|
|
1268
|
-
* - Extra variables (not referenced in the template) are ignored
|
|
1269
|
-
*
|
|
1270
|
-
* @generated from field: map<string, mochabugapis.adapt.plugins.v1.HeaderVariables> header_variables = 2;
|
|
1271
|
-
*/
|
|
1272
|
-
headerVariables?: {
|
|
1273
|
-
[key: string]: HeaderVariablesJson;
|
|
1274
|
-
};
|
|
1275
|
-
/**
|
|
1276
|
-
* User-defined allowed hosts. Only valid when the corresponding
|
|
1277
|
-
* HttpProxyDefinition has user_defined_hosts = true.
|
|
1278
|
-
*
|
|
1279
|
-
* When provided, this list REPLACES the definition's allowed_hosts entirely.
|
|
1280
|
-
* When empty, the definition's allowed_hosts are used as defaults.
|
|
1281
|
-
*
|
|
1282
|
-
* Each entry follows the same format as definition allowed_hosts:
|
|
1283
|
-
* - "api.example.com" exact host, any port
|
|
1284
|
-
* - "*.example.com" wildcard subdomain (any depth), any port
|
|
1285
|
-
* - "api.example.com:8443" exact host, specific port
|
|
1286
|
-
* - "*.example.com:8443" wildcard subdomain, specific port
|
|
1287
|
-
*
|
|
1288
|
-
* @generated from field: repeated string allowed_hosts = 3;
|
|
1289
|
-
*/
|
|
1290
|
-
allowedHosts?: string[];
|
|
1291
|
-
};
|
|
1292
|
-
/**
|
|
1293
|
-
* Describes the message mochabugapis.adapt.plugins.v1.HttpProxyConfig.
|
|
1294
|
-
* Use `create(HttpProxyConfigSchema)` to create a new message.
|
|
1295
|
-
*/
|
|
1296
|
-
export declare const HttpProxyConfigSchema: GenMessage<HttpProxyConfig, {
|
|
1297
|
-
jsonType: HttpProxyConfigJson;
|
|
1298
|
-
}>;
|
|
1299
|
-
/**
|
|
1300
|
-
* Variable values for a specific header's template substitution.
|
|
1301
|
-
*
|
|
1302
|
-
* @generated from message mochabugapis.adapt.plugins.v1.HeaderVariables
|
|
1303
|
-
*/
|
|
1304
|
-
export type HeaderVariables = Message<"mochabugapis.adapt.plugins.v1.HeaderVariables"> & {
|
|
1305
|
-
/**
|
|
1306
|
-
* Map of variable name to value.
|
|
1307
|
-
*
|
|
1308
|
-
* Key: Variable name matching %VAR_NAME% in the header's template
|
|
1309
|
-
* Value: The actual value to substitute
|
|
1310
|
-
*
|
|
1311
|
-
* @generated from field: map<string, string> variables = 1;
|
|
1312
|
-
*/
|
|
1313
|
-
variables: {
|
|
1314
|
-
[key: string]: string;
|
|
1315
|
-
};
|
|
1316
|
-
};
|
|
1317
|
-
/**
|
|
1318
|
-
* Variable values for a specific header's template substitution.
|
|
1319
|
-
*
|
|
1320
|
-
* @generated from message mochabugapis.adapt.plugins.v1.HeaderVariables
|
|
1321
|
-
*/
|
|
1322
|
-
export type HeaderVariablesJson = {
|
|
1323
|
-
/**
|
|
1324
|
-
* Map of variable name to value.
|
|
1325
|
-
*
|
|
1326
|
-
* Key: Variable name matching %VAR_NAME% in the header's template
|
|
1327
|
-
* Value: The actual value to substitute
|
|
1328
|
-
*
|
|
1329
|
-
* @generated from field: map<string, string> variables = 1;
|
|
1330
|
-
*/
|
|
1331
|
-
variables?: {
|
|
1332
|
-
[key: string]: string;
|
|
1333
|
-
};
|
|
1334
|
-
};
|
|
1335
|
-
/**
|
|
1336
|
-
* Describes the message mochabugapis.adapt.plugins.v1.HeaderVariables.
|
|
1337
|
-
* Use `create(HeaderVariablesSchema)` to create a new message.
|
|
1338
|
-
*/
|
|
1339
|
-
export declare const HeaderVariablesSchema: GenMessage<HeaderVariables, {
|
|
1340
|
-
jsonType: HeaderVariablesJson;
|
|
1341
|
-
}>;
|
|
1342
776
|
//# sourceMappingURL=http_proxy_service_pb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http_proxy_service_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAGjF,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"http_proxy_service_pb.d.ts","sourceRoot":"","sources":["../../../../../../src/genproto/mochabugapis/adapt/plugins/v1/http_proxy_service_pb.ts"],"names":[],"mappings":"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"}
|