pulumi-gcp 8.11.0a1734348982__py3-none-any.whl → 8.12.0__py3-none-any.whl
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.
- pulumi_gcp/__init__.py +123 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +6 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +6 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +6 -0
- pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +6 -0
- pulumi_gcp/apigee/app_group.py +7 -7
- pulumi_gcp/applicationintegration/client.py +8 -6
- pulumi_gcp/artifactregistry/_inputs.py +24 -15
- pulumi_gcp/artifactregistry/get_repository_iam_policy.py +12 -4
- pulumi_gcp/artifactregistry/outputs.py +32 -20
- pulumi_gcp/artifactregistry/repository.py +214 -39
- pulumi_gcp/artifactregistry/repository_iam_binding.py +42 -14
- pulumi_gcp/artifactregistry/repository_iam_member.py +42 -14
- pulumi_gcp/artifactregistry/repository_iam_policy.py +42 -14
- pulumi_gcp/assuredworkloads/workload.py +7 -7
- pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
- pulumi_gcp/backupdisasterrecovery/backup_plan.py +2 -2
- pulumi_gcp/backupdisasterrecovery/backup_vault.py +12 -8
- pulumi_gcp/backupdisasterrecovery/get_backup.py +153 -0
- pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +415 -0
- pulumi_gcp/backupdisasterrecovery/outputs.py +63 -0
- pulumi_gcp/bigquery/app_profile.py +75 -0
- pulumi_gcp/billing/_inputs.py +6 -6
- pulumi_gcp/billing/outputs.py +4 -4
- pulumi_gcp/certificateauthority/_inputs.py +9 -9
- pulumi_gcp/certificateauthority/outputs.py +8 -8
- pulumi_gcp/cloudbuild/_inputs.py +53 -0
- pulumi_gcp/cloudbuild/outputs.py +50 -0
- pulumi_gcp/cloudbuild/worker_pool.py +47 -0
- pulumi_gcp/clouddeploy/_inputs.py +254 -0
- pulumi_gcp/clouddeploy/outputs.py +211 -0
- pulumi_gcp/clouddeploy/target.py +47 -0
- pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -6
- pulumi_gcp/cloudfunctionsv2/outputs.py +8 -8
- pulumi_gcp/cloudrunv2/job.py +4 -4
- pulumi_gcp/cloudrunv2/service.py +4 -4
- pulumi_gcp/composer/get_user_workloads_config_map.py +4 -0
- pulumi_gcp/composer/get_user_workloads_secret.py +4 -0
- pulumi_gcp/composer/user_workloads_config_map.py +14 -0
- pulumi_gcp/composer/user_workloads_secret.py +6 -0
- pulumi_gcp/compute/_inputs.py +566 -25
- pulumi_gcp/compute/disk.py +21 -7
- pulumi_gcp/compute/firewall_policy_rule.py +12 -0
- pulumi_gcp/compute/get_forwarding_rules.py +2 -2
- pulumi_gcp/compute/get_global_forwarding_rule.py +23 -1
- pulumi_gcp/compute/get_instance_group_manager.py +12 -1
- pulumi_gcp/compute/get_network.py +35 -1
- pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
- pulumi_gcp/compute/get_region_network_endpoint_group.py +12 -1
- pulumi_gcp/compute/global_forwarding_rule.py +142 -2
- pulumi_gcp/compute/instance_group_manager.py +28 -0
- pulumi_gcp/compute/network.py +75 -0
- pulumi_gcp/compute/outputs.py +655 -26
- pulumi_gcp/compute/project_cloud_armor_tier.py +7 -7
- pulumi_gcp/compute/region_health_check.py +28 -0
- pulumi_gcp/compute/region_instance_group_manager.py +28 -0
- pulumi_gcp/compute/region_network_endpoint.py +28 -0
- pulumi_gcp/compute/region_network_endpoint_group.py +70 -2
- pulumi_gcp/compute/subnetwork.py +30 -2
- pulumi_gcp/compute/url_map.py +7 -7
- pulumi_gcp/config/__init__.pyi +2 -0
- pulumi_gcp/config/vars.py +4 -0
- pulumi_gcp/container/_inputs.py +201 -3
- pulumi_gcp/container/cluster.py +68 -14
- pulumi_gcp/container/get_cluster.py +12 -1
- pulumi_gcp/container/outputs.py +249 -3
- pulumi_gcp/dataproc/_inputs.py +209 -1
- pulumi_gcp/dataproc/batch.py +76 -0
- pulumi_gcp/dataproc/outputs.py +169 -3
- pulumi_gcp/diagflow/_inputs.py +3 -3
- pulumi_gcp/diagflow/outputs.py +2 -2
- pulumi_gcp/discoveryengine/search_engine.py +7 -7
- pulumi_gcp/firebase/_inputs.py +99 -0
- pulumi_gcp/firebase/database_instance.py +24 -6
- pulumi_gcp/firebase/hosting_version.py +96 -0
- pulumi_gcp/firebase/outputs.py +59 -0
- pulumi_gcp/firebase/project.py +6 -6
- pulumi_gcp/firebaserules/release.py +76 -0
- pulumi_gcp/firestore/field.py +4 -4
- pulumi_gcp/gemini/__init__.py +15 -0
- pulumi_gcp/gemini/_inputs.py +183 -0
- pulumi_gcp/gemini/code_repository_index.py +659 -0
- pulumi_gcp/gemini/get_repository_group_iam_policy.py +171 -0
- pulumi_gcp/gemini/outputs.py +130 -0
- pulumi_gcp/gemini/repository_group.py +586 -0
- pulumi_gcp/gemini/repository_group_iam_binding.py +604 -0
- pulumi_gcp/gemini/repository_group_iam_member.py +604 -0
- pulumi_gcp/gemini/repository_group_iam_policy.py +443 -0
- pulumi_gcp/gkehub/_inputs.py +30 -10
- pulumi_gcp/gkehub/membership_binding.py +6 -6
- pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
- pulumi_gcp/gkehub/namespace.py +4 -4
- pulumi_gcp/gkehub/outputs.py +21 -7
- pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
- pulumi_gcp/iam/__init__.py +1 -0
- pulumi_gcp/iam/_inputs.py +137 -0
- pulumi_gcp/iam/folders_policy_binding.py +16 -0
- pulumi_gcp/iam/organizations_policy_binding.py +16 -0
- pulumi_gcp/iam/outputs.py +99 -0
- pulumi_gcp/iam/principal_access_boundary_policy.py +16 -0
- pulumi_gcp/iam/projects_policy_binding.py +917 -0
- pulumi_gcp/iap/tunnel_dest_group.py +2 -2
- pulumi_gcp/identityplatform/_inputs.py +6 -6
- pulumi_gcp/identityplatform/config.py +2 -2
- pulumi_gcp/identityplatform/outputs.py +4 -4
- pulumi_gcp/integrationconnectors/_inputs.py +15 -15
- pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
- pulumi_gcp/integrationconnectors/outputs.py +10 -10
- pulumi_gcp/looker/instance.py +35 -14
- pulumi_gcp/monitoring/_inputs.py +13 -6
- pulumi_gcp/monitoring/outputs.py +10 -4
- pulumi_gcp/netapp/_inputs.py +3 -3
- pulumi_gcp/netapp/active_directory.py +7 -7
- pulumi_gcp/netapp/outputs.py +2 -2
- pulumi_gcp/netapp/volume.py +11 -11
- pulumi_gcp/networkconnectivity/_inputs.py +10 -12
- pulumi_gcp/networkconnectivity/outputs.py +6 -8
- pulumi_gcp/networkconnectivity/spoke.py +10 -10
- pulumi_gcp/networksecurity/__init__.py +7 -0
- pulumi_gcp/networksecurity/_inputs.py +2018 -0
- pulumi_gcp/networksecurity/authz_policy.py +1008 -0
- pulumi_gcp/networksecurity/intercept_deployment.py +846 -0
- pulumi_gcp/networksecurity/intercept_deployment_group.py +752 -0
- pulumi_gcp/networksecurity/mirroring_deployment.py +848 -0
- pulumi_gcp/networksecurity/mirroring_deployment_group.py +752 -0
- pulumi_gcp/networksecurity/mirroring_endpoint_group.py +737 -0
- pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +840 -0
- pulumi_gcp/networksecurity/outputs.py +1463 -0
- pulumi_gcp/networkservices/__init__.py +1 -0
- pulumi_gcp/networkservices/authz_extension.py +1080 -0
- pulumi_gcp/oracledatabase/autonomous_database.py +46 -8
- pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +42 -4
- pulumi_gcp/oracledatabase/cloud_vm_cluster.py +50 -8
- pulumi_gcp/oracledatabase/get_autonomous_database.py +12 -1
- pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +12 -1
- pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +12 -1
- pulumi_gcp/oracledatabase/outputs.py +21 -0
- pulumi_gcp/orgpolicy/_inputs.py +40 -0
- pulumi_gcp/orgpolicy/outputs.py +24 -0
- pulumi_gcp/orgpolicy/policy.py +66 -10
- pulumi_gcp/parallelstore/instance.py +4 -0
- pulumi_gcp/provider.py +20 -0
- pulumi_gcp/pubsub/subscription.py +6 -6
- pulumi_gcp/pulumi-plugin.json +1 -1
- pulumi_gcp/redis/_inputs.py +435 -3
- pulumi_gcp/redis/cluster.py +287 -16
- pulumi_gcp/redis/outputs.py +304 -2
- pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
- pulumi_gcp/serviceaccount/get_account_key.py +2 -2
- pulumi_gcp/sql/_inputs.py +3 -3
- pulumi_gcp/sql/database_instance.py +14 -14
- pulumi_gcp/sql/outputs.py +2 -2
- pulumi_gcp/storage/_inputs.py +53 -6
- pulumi_gcp/storage/get_bucket.py +2 -2
- pulumi_gcp/storage/get_bucket_object_content.py +2 -2
- pulumi_gcp/storage/outputs.py +33 -4
- pulumi_gcp/tpu/__init__.py +1 -0
- pulumi_gcp/tpu/_inputs.py +214 -24
- pulumi_gcp/tpu/outputs.py +182 -16
- pulumi_gcp/tpu/v2_queued_resource.py +434 -0
- pulumi_gcp/tpu/v2_vm.py +63 -0
- pulumi_gcp/vertex/ai_endpoint.py +4 -4
- pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
- pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/METADATA +1 -1
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/RECORD +168 -147
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/WHEEL +0 -0
- {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/top_level.txt +0 -0
@@ -27,6 +27,52 @@ __all__ = [
|
|
27
27
|
'AuthorizationPolicyRuleDestinationHttpHeaderMatchArgsDict',
|
28
28
|
'AuthorizationPolicyRuleSourceArgs',
|
29
29
|
'AuthorizationPolicyRuleSourceArgsDict',
|
30
|
+
'AuthzPolicyCustomProviderArgs',
|
31
|
+
'AuthzPolicyCustomProviderArgsDict',
|
32
|
+
'AuthzPolicyCustomProviderAuthzExtensionArgs',
|
33
|
+
'AuthzPolicyCustomProviderAuthzExtensionArgsDict',
|
34
|
+
'AuthzPolicyCustomProviderCloudIapArgs',
|
35
|
+
'AuthzPolicyCustomProviderCloudIapArgsDict',
|
36
|
+
'AuthzPolicyHttpRuleArgs',
|
37
|
+
'AuthzPolicyHttpRuleArgsDict',
|
38
|
+
'AuthzPolicyHttpRuleFromArgs',
|
39
|
+
'AuthzPolicyHttpRuleFromArgsDict',
|
40
|
+
'AuthzPolicyHttpRuleFromNotSourceArgs',
|
41
|
+
'AuthzPolicyHttpRuleFromNotSourceArgsDict',
|
42
|
+
'AuthzPolicyHttpRuleFromNotSourcePrincipalArgs',
|
43
|
+
'AuthzPolicyHttpRuleFromNotSourcePrincipalArgsDict',
|
44
|
+
'AuthzPolicyHttpRuleFromNotSourceResourceArgs',
|
45
|
+
'AuthzPolicyHttpRuleFromNotSourceResourceArgsDict',
|
46
|
+
'AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgs',
|
47
|
+
'AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgsDict',
|
48
|
+
'AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgs',
|
49
|
+
'AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgsDict',
|
50
|
+
'AuthzPolicyHttpRuleFromSourceArgs',
|
51
|
+
'AuthzPolicyHttpRuleFromSourceArgsDict',
|
52
|
+
'AuthzPolicyHttpRuleFromSourcePrincipalArgs',
|
53
|
+
'AuthzPolicyHttpRuleFromSourcePrincipalArgsDict',
|
54
|
+
'AuthzPolicyHttpRuleFromSourceResourceArgs',
|
55
|
+
'AuthzPolicyHttpRuleFromSourceResourceArgsDict',
|
56
|
+
'AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgs',
|
57
|
+
'AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgsDict',
|
58
|
+
'AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgs',
|
59
|
+
'AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgsDict',
|
60
|
+
'AuthzPolicyHttpRuleToArgs',
|
61
|
+
'AuthzPolicyHttpRuleToArgsDict',
|
62
|
+
'AuthzPolicyHttpRuleToOperationArgs',
|
63
|
+
'AuthzPolicyHttpRuleToOperationArgsDict',
|
64
|
+
'AuthzPolicyHttpRuleToOperationHeaderSetArgs',
|
65
|
+
'AuthzPolicyHttpRuleToOperationHeaderSetArgsDict',
|
66
|
+
'AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgs',
|
67
|
+
'AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgsDict',
|
68
|
+
'AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgs',
|
69
|
+
'AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgsDict',
|
70
|
+
'AuthzPolicyHttpRuleToOperationHostArgs',
|
71
|
+
'AuthzPolicyHttpRuleToOperationHostArgsDict',
|
72
|
+
'AuthzPolicyHttpRuleToOperationPathArgs',
|
73
|
+
'AuthzPolicyHttpRuleToOperationPathArgsDict',
|
74
|
+
'AuthzPolicyTargetArgs',
|
75
|
+
'AuthzPolicyTargetArgsDict',
|
30
76
|
'ClientTlsPolicyClientCertificateArgs',
|
31
77
|
'ClientTlsPolicyClientCertificateArgsDict',
|
32
78
|
'ClientTlsPolicyClientCertificateCertificateProviderInstanceArgs',
|
@@ -39,6 +85,12 @@ __all__ = [
|
|
39
85
|
'ClientTlsPolicyServerValidationCaCertificateProviderInstanceArgsDict',
|
40
86
|
'ClientTlsPolicyServerValidationCaGrpcEndpointArgs',
|
41
87
|
'ClientTlsPolicyServerValidationCaGrpcEndpointArgsDict',
|
88
|
+
'InterceptDeploymentGroupConnectedEndpointGroupArgs',
|
89
|
+
'InterceptDeploymentGroupConnectedEndpointGroupArgsDict',
|
90
|
+
'MirroringDeploymentGroupConnectedEndpointGroupArgs',
|
91
|
+
'MirroringDeploymentGroupConnectedEndpointGroupArgsDict',
|
92
|
+
'MirroringEndpointGroupAssociationLocationsDetailArgs',
|
93
|
+
'MirroringEndpointGroupAssociationLocationsDetailArgsDict',
|
42
94
|
'SecurityProfileThreatPreventionProfileArgs',
|
43
95
|
'SecurityProfileThreatPreventionProfileArgsDict',
|
44
96
|
'SecurityProfileThreatPreventionProfileSeverityOverrideArgs',
|
@@ -424,6 +476,1826 @@ class AuthorizationPolicyRuleSourceArgs:
|
|
424
476
|
pulumi.set(self, "principals", value)
|
425
477
|
|
426
478
|
|
479
|
+
if not MYPY:
|
480
|
+
class AuthzPolicyCustomProviderArgsDict(TypedDict):
|
481
|
+
authz_extension: NotRequired[pulumi.Input['AuthzPolicyCustomProviderAuthzExtensionArgsDict']]
|
482
|
+
"""
|
483
|
+
Delegate authorization decision to user authored Service Extension. Only one of cloudIap or authzExtension can be specified.
|
484
|
+
Structure is documented below.
|
485
|
+
"""
|
486
|
+
cloud_iap: NotRequired[pulumi.Input['AuthzPolicyCustomProviderCloudIapArgsDict']]
|
487
|
+
"""
|
488
|
+
Delegates authorization decisions to Cloud IAP. Applicable only for managed load balancers. Enabling Cloud IAP at the AuthzPolicy level is not compatible with Cloud IAP settings in the BackendService. Enabling IAP in both places will result in request failure. Ensure that IAP is enabled in either the AuthzPolicy or the BackendService but not in both places.
|
489
|
+
Structure is documented below.
|
490
|
+
"""
|
491
|
+
elif False:
|
492
|
+
AuthzPolicyCustomProviderArgsDict: TypeAlias = Mapping[str, Any]
|
493
|
+
|
494
|
+
@pulumi.input_type
|
495
|
+
class AuthzPolicyCustomProviderArgs:
|
496
|
+
def __init__(__self__, *,
|
497
|
+
authz_extension: Optional[pulumi.Input['AuthzPolicyCustomProviderAuthzExtensionArgs']] = None,
|
498
|
+
cloud_iap: Optional[pulumi.Input['AuthzPolicyCustomProviderCloudIapArgs']] = None):
|
499
|
+
"""
|
500
|
+
:param pulumi.Input['AuthzPolicyCustomProviderAuthzExtensionArgs'] authz_extension: Delegate authorization decision to user authored Service Extension. Only one of cloudIap or authzExtension can be specified.
|
501
|
+
Structure is documented below.
|
502
|
+
:param pulumi.Input['AuthzPolicyCustomProviderCloudIapArgs'] cloud_iap: Delegates authorization decisions to Cloud IAP. Applicable only for managed load balancers. Enabling Cloud IAP at the AuthzPolicy level is not compatible with Cloud IAP settings in the BackendService. Enabling IAP in both places will result in request failure. Ensure that IAP is enabled in either the AuthzPolicy or the BackendService but not in both places.
|
503
|
+
Structure is documented below.
|
504
|
+
"""
|
505
|
+
if authz_extension is not None:
|
506
|
+
pulumi.set(__self__, "authz_extension", authz_extension)
|
507
|
+
if cloud_iap is not None:
|
508
|
+
pulumi.set(__self__, "cloud_iap", cloud_iap)
|
509
|
+
|
510
|
+
@property
|
511
|
+
@pulumi.getter(name="authzExtension")
|
512
|
+
def authz_extension(self) -> Optional[pulumi.Input['AuthzPolicyCustomProviderAuthzExtensionArgs']]:
|
513
|
+
"""
|
514
|
+
Delegate authorization decision to user authored Service Extension. Only one of cloudIap or authzExtension can be specified.
|
515
|
+
Structure is documented below.
|
516
|
+
"""
|
517
|
+
return pulumi.get(self, "authz_extension")
|
518
|
+
|
519
|
+
@authz_extension.setter
|
520
|
+
def authz_extension(self, value: Optional[pulumi.Input['AuthzPolicyCustomProviderAuthzExtensionArgs']]):
|
521
|
+
pulumi.set(self, "authz_extension", value)
|
522
|
+
|
523
|
+
@property
|
524
|
+
@pulumi.getter(name="cloudIap")
|
525
|
+
def cloud_iap(self) -> Optional[pulumi.Input['AuthzPolicyCustomProviderCloudIapArgs']]:
|
526
|
+
"""
|
527
|
+
Delegates authorization decisions to Cloud IAP. Applicable only for managed load balancers. Enabling Cloud IAP at the AuthzPolicy level is not compatible with Cloud IAP settings in the BackendService. Enabling IAP in both places will result in request failure. Ensure that IAP is enabled in either the AuthzPolicy or the BackendService but not in both places.
|
528
|
+
Structure is documented below.
|
529
|
+
"""
|
530
|
+
return pulumi.get(self, "cloud_iap")
|
531
|
+
|
532
|
+
@cloud_iap.setter
|
533
|
+
def cloud_iap(self, value: Optional[pulumi.Input['AuthzPolicyCustomProviderCloudIapArgs']]):
|
534
|
+
pulumi.set(self, "cloud_iap", value)
|
535
|
+
|
536
|
+
|
537
|
+
if not MYPY:
|
538
|
+
class AuthzPolicyCustomProviderAuthzExtensionArgsDict(TypedDict):
|
539
|
+
resources: pulumi.Input[Sequence[pulumi.Input[str]]]
|
540
|
+
"""
|
541
|
+
A list of references to authorization extensions that will be invoked for requests matching this policy. Limited to 1 custom provider.
|
542
|
+
"""
|
543
|
+
elif False:
|
544
|
+
AuthzPolicyCustomProviderAuthzExtensionArgsDict: TypeAlias = Mapping[str, Any]
|
545
|
+
|
546
|
+
@pulumi.input_type
|
547
|
+
class AuthzPolicyCustomProviderAuthzExtensionArgs:
|
548
|
+
def __init__(__self__, *,
|
549
|
+
resources: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
550
|
+
"""
|
551
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] resources: A list of references to authorization extensions that will be invoked for requests matching this policy. Limited to 1 custom provider.
|
552
|
+
"""
|
553
|
+
pulumi.set(__self__, "resources", resources)
|
554
|
+
|
555
|
+
@property
|
556
|
+
@pulumi.getter
|
557
|
+
def resources(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
558
|
+
"""
|
559
|
+
A list of references to authorization extensions that will be invoked for requests matching this policy. Limited to 1 custom provider.
|
560
|
+
"""
|
561
|
+
return pulumi.get(self, "resources")
|
562
|
+
|
563
|
+
@resources.setter
|
564
|
+
def resources(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
565
|
+
pulumi.set(self, "resources", value)
|
566
|
+
|
567
|
+
|
568
|
+
if not MYPY:
|
569
|
+
class AuthzPolicyCustomProviderCloudIapArgsDict(TypedDict):
|
570
|
+
enabled: pulumi.Input[bool]
|
571
|
+
"""
|
572
|
+
Enable Cloud IAP at the AuthzPolicy level.
|
573
|
+
"""
|
574
|
+
elif False:
|
575
|
+
AuthzPolicyCustomProviderCloudIapArgsDict: TypeAlias = Mapping[str, Any]
|
576
|
+
|
577
|
+
@pulumi.input_type
|
578
|
+
class AuthzPolicyCustomProviderCloudIapArgs:
|
579
|
+
def __init__(__self__, *,
|
580
|
+
enabled: pulumi.Input[bool]):
|
581
|
+
"""
|
582
|
+
:param pulumi.Input[bool] enabled: Enable Cloud IAP at the AuthzPolicy level.
|
583
|
+
"""
|
584
|
+
pulumi.set(__self__, "enabled", enabled)
|
585
|
+
|
586
|
+
@property
|
587
|
+
@pulumi.getter
|
588
|
+
def enabled(self) -> pulumi.Input[bool]:
|
589
|
+
"""
|
590
|
+
Enable Cloud IAP at the AuthzPolicy level.
|
591
|
+
"""
|
592
|
+
return pulumi.get(self, "enabled")
|
593
|
+
|
594
|
+
@enabled.setter
|
595
|
+
def enabled(self, value: pulumi.Input[bool]):
|
596
|
+
pulumi.set(self, "enabled", value)
|
597
|
+
|
598
|
+
|
599
|
+
if not MYPY:
|
600
|
+
class AuthzPolicyHttpRuleArgsDict(TypedDict):
|
601
|
+
from_: NotRequired[pulumi.Input['AuthzPolicyHttpRuleFromArgsDict']]
|
602
|
+
"""
|
603
|
+
Describes properties of one or more sources of a request.
|
604
|
+
Structure is documented below.
|
605
|
+
"""
|
606
|
+
to: NotRequired[pulumi.Input['AuthzPolicyHttpRuleToArgsDict']]
|
607
|
+
"""
|
608
|
+
Describes properties of one or more targets of a request
|
609
|
+
Structure is documented below.
|
610
|
+
"""
|
611
|
+
when: NotRequired[pulumi.Input[str]]
|
612
|
+
"""
|
613
|
+
CEL expression that describes the conditions to be satisfied for the action. The result of the CEL expression is ANDed with the from and to. Refer to the CEL language reference for a list of available attributes.
|
614
|
+
"""
|
615
|
+
elif False:
|
616
|
+
AuthzPolicyHttpRuleArgsDict: TypeAlias = Mapping[str, Any]
|
617
|
+
|
618
|
+
@pulumi.input_type
|
619
|
+
class AuthzPolicyHttpRuleArgs:
|
620
|
+
def __init__(__self__, *,
|
621
|
+
from_: Optional[pulumi.Input['AuthzPolicyHttpRuleFromArgs']] = None,
|
622
|
+
to: Optional[pulumi.Input['AuthzPolicyHttpRuleToArgs']] = None,
|
623
|
+
when: Optional[pulumi.Input[str]] = None):
|
624
|
+
"""
|
625
|
+
:param pulumi.Input['AuthzPolicyHttpRuleFromArgs'] from_: Describes properties of one or more sources of a request.
|
626
|
+
Structure is documented below.
|
627
|
+
:param pulumi.Input['AuthzPolicyHttpRuleToArgs'] to: Describes properties of one or more targets of a request
|
628
|
+
Structure is documented below.
|
629
|
+
:param pulumi.Input[str] when: CEL expression that describes the conditions to be satisfied for the action. The result of the CEL expression is ANDed with the from and to. Refer to the CEL language reference for a list of available attributes.
|
630
|
+
"""
|
631
|
+
if from_ is not None:
|
632
|
+
pulumi.set(__self__, "from_", from_)
|
633
|
+
if to is not None:
|
634
|
+
pulumi.set(__self__, "to", to)
|
635
|
+
if when is not None:
|
636
|
+
pulumi.set(__self__, "when", when)
|
637
|
+
|
638
|
+
@property
|
639
|
+
@pulumi.getter(name="from")
|
640
|
+
def from_(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleFromArgs']]:
|
641
|
+
"""
|
642
|
+
Describes properties of one or more sources of a request.
|
643
|
+
Structure is documented below.
|
644
|
+
"""
|
645
|
+
return pulumi.get(self, "from_")
|
646
|
+
|
647
|
+
@from_.setter
|
648
|
+
def from_(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleFromArgs']]):
|
649
|
+
pulumi.set(self, "from_", value)
|
650
|
+
|
651
|
+
@property
|
652
|
+
@pulumi.getter
|
653
|
+
def to(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleToArgs']]:
|
654
|
+
"""
|
655
|
+
Describes properties of one or more targets of a request
|
656
|
+
Structure is documented below.
|
657
|
+
"""
|
658
|
+
return pulumi.get(self, "to")
|
659
|
+
|
660
|
+
@to.setter
|
661
|
+
def to(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleToArgs']]):
|
662
|
+
pulumi.set(self, "to", value)
|
663
|
+
|
664
|
+
@property
|
665
|
+
@pulumi.getter
|
666
|
+
def when(self) -> Optional[pulumi.Input[str]]:
|
667
|
+
"""
|
668
|
+
CEL expression that describes the conditions to be satisfied for the action. The result of the CEL expression is ANDed with the from and to. Refer to the CEL language reference for a list of available attributes.
|
669
|
+
"""
|
670
|
+
return pulumi.get(self, "when")
|
671
|
+
|
672
|
+
@when.setter
|
673
|
+
def when(self, value: Optional[pulumi.Input[str]]):
|
674
|
+
pulumi.set(self, "when", value)
|
675
|
+
|
676
|
+
|
677
|
+
if not MYPY:
|
678
|
+
class AuthzPolicyHttpRuleFromArgsDict(TypedDict):
|
679
|
+
not_sources: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceArgsDict']]]]
|
680
|
+
"""
|
681
|
+
Describes the properties of a request's sources. At least one of sources or notSources must be specified. Limited to 5 sources. A match occurs when ANY source (in sources or notSources) matches the request. Within a single source, the match follows AND semantics across fields and OR semantics within a single field, i.e. a match occurs when ANY principal matches AND ANY ipBlocks match.
|
682
|
+
Structure is documented below.
|
683
|
+
"""
|
684
|
+
sources: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceArgsDict']]]]
|
685
|
+
"""
|
686
|
+
Describes the properties of a request's sources. At least one of sources or notSources must be specified. Limited to 5 sources. A match occurs when ANY source (in sources or notSources) matches the request. Within a single source, the match follows AND semantics across fields and OR semantics within a single field, i.e. a match occurs when ANY principal matches AND ANY ipBlocks match.
|
687
|
+
Structure is documented below.
|
688
|
+
"""
|
689
|
+
elif False:
|
690
|
+
AuthzPolicyHttpRuleFromArgsDict: TypeAlias = Mapping[str, Any]
|
691
|
+
|
692
|
+
@pulumi.input_type
|
693
|
+
class AuthzPolicyHttpRuleFromArgs:
|
694
|
+
def __init__(__self__, *,
|
695
|
+
not_sources: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceArgs']]]] = None,
|
696
|
+
sources: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceArgs']]]] = None):
|
697
|
+
"""
|
698
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceArgs']]] not_sources: Describes the properties of a request's sources. At least one of sources or notSources must be specified. Limited to 5 sources. A match occurs when ANY source (in sources or notSources) matches the request. Within a single source, the match follows AND semantics across fields and OR semantics within a single field, i.e. a match occurs when ANY principal matches AND ANY ipBlocks match.
|
699
|
+
Structure is documented below.
|
700
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceArgs']]] sources: Describes the properties of a request's sources. At least one of sources or notSources must be specified. Limited to 5 sources. A match occurs when ANY source (in sources or notSources) matches the request. Within a single source, the match follows AND semantics across fields and OR semantics within a single field, i.e. a match occurs when ANY principal matches AND ANY ipBlocks match.
|
701
|
+
Structure is documented below.
|
702
|
+
"""
|
703
|
+
if not_sources is not None:
|
704
|
+
pulumi.set(__self__, "not_sources", not_sources)
|
705
|
+
if sources is not None:
|
706
|
+
pulumi.set(__self__, "sources", sources)
|
707
|
+
|
708
|
+
@property
|
709
|
+
@pulumi.getter(name="notSources")
|
710
|
+
def not_sources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceArgs']]]]:
|
711
|
+
"""
|
712
|
+
Describes the properties of a request's sources. At least one of sources or notSources must be specified. Limited to 5 sources. A match occurs when ANY source (in sources or notSources) matches the request. Within a single source, the match follows AND semantics across fields and OR semantics within a single field, i.e. a match occurs when ANY principal matches AND ANY ipBlocks match.
|
713
|
+
Structure is documented below.
|
714
|
+
"""
|
715
|
+
return pulumi.get(self, "not_sources")
|
716
|
+
|
717
|
+
@not_sources.setter
|
718
|
+
def not_sources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceArgs']]]]):
|
719
|
+
pulumi.set(self, "not_sources", value)
|
720
|
+
|
721
|
+
@property
|
722
|
+
@pulumi.getter
|
723
|
+
def sources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceArgs']]]]:
|
724
|
+
"""
|
725
|
+
Describes the properties of a request's sources. At least one of sources or notSources must be specified. Limited to 5 sources. A match occurs when ANY source (in sources or notSources) matches the request. Within a single source, the match follows AND semantics across fields and OR semantics within a single field, i.e. a match occurs when ANY principal matches AND ANY ipBlocks match.
|
726
|
+
Structure is documented below.
|
727
|
+
"""
|
728
|
+
return pulumi.get(self, "sources")
|
729
|
+
|
730
|
+
@sources.setter
|
731
|
+
def sources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceArgs']]]]):
|
732
|
+
pulumi.set(self, "sources", value)
|
733
|
+
|
734
|
+
|
735
|
+
if not MYPY:
|
736
|
+
class AuthzPolicyHttpRuleFromNotSourceArgsDict(TypedDict):
|
737
|
+
principals: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourcePrincipalArgsDict']]]]
|
738
|
+
"""
|
739
|
+
A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
|
740
|
+
Limited to 5 principals.
|
741
|
+
Structure is documented below.
|
742
|
+
"""
|
743
|
+
resources: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceArgsDict']]]]
|
744
|
+
"""
|
745
|
+
A list of resources to match against the resource of the source VM of a request.
|
746
|
+
Limited to 5 resources.
|
747
|
+
Structure is documented below.
|
748
|
+
"""
|
749
|
+
elif False:
|
750
|
+
AuthzPolicyHttpRuleFromNotSourceArgsDict: TypeAlias = Mapping[str, Any]
|
751
|
+
|
752
|
+
@pulumi.input_type
|
753
|
+
class AuthzPolicyHttpRuleFromNotSourceArgs:
|
754
|
+
def __init__(__self__, *,
|
755
|
+
principals: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourcePrincipalArgs']]]] = None,
|
756
|
+
resources: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceArgs']]]] = None):
|
757
|
+
"""
|
758
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourcePrincipalArgs']]] principals: A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
|
759
|
+
Limited to 5 principals.
|
760
|
+
Structure is documented below.
|
761
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceArgs']]] resources: A list of resources to match against the resource of the source VM of a request.
|
762
|
+
Limited to 5 resources.
|
763
|
+
Structure is documented below.
|
764
|
+
"""
|
765
|
+
if principals is not None:
|
766
|
+
pulumi.set(__self__, "principals", principals)
|
767
|
+
if resources is not None:
|
768
|
+
pulumi.set(__self__, "resources", resources)
|
769
|
+
|
770
|
+
@property
|
771
|
+
@pulumi.getter
|
772
|
+
def principals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourcePrincipalArgs']]]]:
|
773
|
+
"""
|
774
|
+
A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
|
775
|
+
Limited to 5 principals.
|
776
|
+
Structure is documented below.
|
777
|
+
"""
|
778
|
+
return pulumi.get(self, "principals")
|
779
|
+
|
780
|
+
@principals.setter
|
781
|
+
def principals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourcePrincipalArgs']]]]):
|
782
|
+
pulumi.set(self, "principals", value)
|
783
|
+
|
784
|
+
@property
|
785
|
+
@pulumi.getter
|
786
|
+
def resources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceArgs']]]]:
|
787
|
+
"""
|
788
|
+
A list of resources to match against the resource of the source VM of a request.
|
789
|
+
Limited to 5 resources.
|
790
|
+
Structure is documented below.
|
791
|
+
"""
|
792
|
+
return pulumi.get(self, "resources")
|
793
|
+
|
794
|
+
@resources.setter
|
795
|
+
def resources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceArgs']]]]):
|
796
|
+
pulumi.set(self, "resources", value)
|
797
|
+
|
798
|
+
|
799
|
+
if not MYPY:
|
800
|
+
class AuthzPolicyHttpRuleFromNotSourcePrincipalArgsDict(TypedDict):
|
801
|
+
contains: NotRequired[pulumi.Input[str]]
|
802
|
+
"""
|
803
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
804
|
+
Examples:
|
805
|
+
* abc matches the value xyz.abc.def
|
806
|
+
"""
|
807
|
+
exact: NotRequired[pulumi.Input[str]]
|
808
|
+
"""
|
809
|
+
The input string must match exactly the string specified here.
|
810
|
+
Examples:
|
811
|
+
* abc only matches the value abc.
|
812
|
+
"""
|
813
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
814
|
+
"""
|
815
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
816
|
+
"""
|
817
|
+
prefix: NotRequired[pulumi.Input[str]]
|
818
|
+
"""
|
819
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
820
|
+
Examples:
|
821
|
+
* abc matches the value abc.xyz
|
822
|
+
"""
|
823
|
+
suffix: NotRequired[pulumi.Input[str]]
|
824
|
+
"""
|
825
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
826
|
+
Examples:
|
827
|
+
* abc matches the value xyz.abc
|
828
|
+
"""
|
829
|
+
elif False:
|
830
|
+
AuthzPolicyHttpRuleFromNotSourcePrincipalArgsDict: TypeAlias = Mapping[str, Any]
|
831
|
+
|
832
|
+
@pulumi.input_type
|
833
|
+
class AuthzPolicyHttpRuleFromNotSourcePrincipalArgs:
|
834
|
+
def __init__(__self__, *,
|
835
|
+
contains: Optional[pulumi.Input[str]] = None,
|
836
|
+
exact: Optional[pulumi.Input[str]] = None,
|
837
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
838
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
839
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
840
|
+
"""
|
841
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
842
|
+
Examples:
|
843
|
+
* abc matches the value xyz.abc.def
|
844
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
845
|
+
Examples:
|
846
|
+
* abc only matches the value abc.
|
847
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
848
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
849
|
+
Examples:
|
850
|
+
* abc matches the value abc.xyz
|
851
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
852
|
+
Examples:
|
853
|
+
* abc matches the value xyz.abc
|
854
|
+
"""
|
855
|
+
if contains is not None:
|
856
|
+
pulumi.set(__self__, "contains", contains)
|
857
|
+
if exact is not None:
|
858
|
+
pulumi.set(__self__, "exact", exact)
|
859
|
+
if ignore_case is not None:
|
860
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
861
|
+
if prefix is not None:
|
862
|
+
pulumi.set(__self__, "prefix", prefix)
|
863
|
+
if suffix is not None:
|
864
|
+
pulumi.set(__self__, "suffix", suffix)
|
865
|
+
|
866
|
+
@property
|
867
|
+
@pulumi.getter
|
868
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
869
|
+
"""
|
870
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
871
|
+
Examples:
|
872
|
+
* abc matches the value xyz.abc.def
|
873
|
+
"""
|
874
|
+
return pulumi.get(self, "contains")
|
875
|
+
|
876
|
+
@contains.setter
|
877
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
878
|
+
pulumi.set(self, "contains", value)
|
879
|
+
|
880
|
+
@property
|
881
|
+
@pulumi.getter
|
882
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
883
|
+
"""
|
884
|
+
The input string must match exactly the string specified here.
|
885
|
+
Examples:
|
886
|
+
* abc only matches the value abc.
|
887
|
+
"""
|
888
|
+
return pulumi.get(self, "exact")
|
889
|
+
|
890
|
+
@exact.setter
|
891
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
892
|
+
pulumi.set(self, "exact", value)
|
893
|
+
|
894
|
+
@property
|
895
|
+
@pulumi.getter(name="ignoreCase")
|
896
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
897
|
+
"""
|
898
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
899
|
+
"""
|
900
|
+
return pulumi.get(self, "ignore_case")
|
901
|
+
|
902
|
+
@ignore_case.setter
|
903
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
904
|
+
pulumi.set(self, "ignore_case", value)
|
905
|
+
|
906
|
+
@property
|
907
|
+
@pulumi.getter
|
908
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
909
|
+
"""
|
910
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
911
|
+
Examples:
|
912
|
+
* abc matches the value abc.xyz
|
913
|
+
"""
|
914
|
+
return pulumi.get(self, "prefix")
|
915
|
+
|
916
|
+
@prefix.setter
|
917
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
918
|
+
pulumi.set(self, "prefix", value)
|
919
|
+
|
920
|
+
@property
|
921
|
+
@pulumi.getter
|
922
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
923
|
+
"""
|
924
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
925
|
+
Examples:
|
926
|
+
* abc matches the value xyz.abc
|
927
|
+
"""
|
928
|
+
return pulumi.get(self, "suffix")
|
929
|
+
|
930
|
+
@suffix.setter
|
931
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
932
|
+
pulumi.set(self, "suffix", value)
|
933
|
+
|
934
|
+
|
935
|
+
if not MYPY:
|
936
|
+
class AuthzPolicyHttpRuleFromNotSourceResourceArgsDict(TypedDict):
|
937
|
+
iam_service_account: NotRequired[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgsDict']]
|
938
|
+
"""
|
939
|
+
An IAM service account to match against the source service account of the VM sending the request.
|
940
|
+
Structure is documented below.
|
941
|
+
"""
|
942
|
+
tag_value_id_set: NotRequired[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgsDict']]
|
943
|
+
"""
|
944
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request.
|
945
|
+
Structure is documented below.
|
946
|
+
"""
|
947
|
+
elif False:
|
948
|
+
AuthzPolicyHttpRuleFromNotSourceResourceArgsDict: TypeAlias = Mapping[str, Any]
|
949
|
+
|
950
|
+
@pulumi.input_type
|
951
|
+
class AuthzPolicyHttpRuleFromNotSourceResourceArgs:
|
952
|
+
def __init__(__self__, *,
|
953
|
+
iam_service_account: Optional[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgs']] = None,
|
954
|
+
tag_value_id_set: Optional[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgs']] = None):
|
955
|
+
"""
|
956
|
+
:param pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgs'] iam_service_account: An IAM service account to match against the source service account of the VM sending the request.
|
957
|
+
Structure is documented below.
|
958
|
+
:param pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgs'] tag_value_id_set: A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request.
|
959
|
+
Structure is documented below.
|
960
|
+
"""
|
961
|
+
if iam_service_account is not None:
|
962
|
+
pulumi.set(__self__, "iam_service_account", iam_service_account)
|
963
|
+
if tag_value_id_set is not None:
|
964
|
+
pulumi.set(__self__, "tag_value_id_set", tag_value_id_set)
|
965
|
+
|
966
|
+
@property
|
967
|
+
@pulumi.getter(name="iamServiceAccount")
|
968
|
+
def iam_service_account(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgs']]:
|
969
|
+
"""
|
970
|
+
An IAM service account to match against the source service account of the VM sending the request.
|
971
|
+
Structure is documented below.
|
972
|
+
"""
|
973
|
+
return pulumi.get(self, "iam_service_account")
|
974
|
+
|
975
|
+
@iam_service_account.setter
|
976
|
+
def iam_service_account(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgs']]):
|
977
|
+
pulumi.set(self, "iam_service_account", value)
|
978
|
+
|
979
|
+
@property
|
980
|
+
@pulumi.getter(name="tagValueIdSet")
|
981
|
+
def tag_value_id_set(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgs']]:
|
982
|
+
"""
|
983
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request.
|
984
|
+
Structure is documented below.
|
985
|
+
"""
|
986
|
+
return pulumi.get(self, "tag_value_id_set")
|
987
|
+
|
988
|
+
@tag_value_id_set.setter
|
989
|
+
def tag_value_id_set(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgs']]):
|
990
|
+
pulumi.set(self, "tag_value_id_set", value)
|
991
|
+
|
992
|
+
|
993
|
+
if not MYPY:
|
994
|
+
class AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgsDict(TypedDict):
|
995
|
+
contains: NotRequired[pulumi.Input[str]]
|
996
|
+
"""
|
997
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
998
|
+
Examples:
|
999
|
+
* abc matches the value xyz.abc.def
|
1000
|
+
"""
|
1001
|
+
exact: NotRequired[pulumi.Input[str]]
|
1002
|
+
"""
|
1003
|
+
The input string must match exactly the string specified here.
|
1004
|
+
Examples:
|
1005
|
+
* abc only matches the value abc.
|
1006
|
+
"""
|
1007
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
1008
|
+
"""
|
1009
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1010
|
+
"""
|
1011
|
+
prefix: NotRequired[pulumi.Input[str]]
|
1012
|
+
"""
|
1013
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1014
|
+
Examples:
|
1015
|
+
* abc matches the value abc.xyz
|
1016
|
+
"""
|
1017
|
+
suffix: NotRequired[pulumi.Input[str]]
|
1018
|
+
"""
|
1019
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1020
|
+
Examples:
|
1021
|
+
* abc matches the value xyz.abc
|
1022
|
+
"""
|
1023
|
+
elif False:
|
1024
|
+
AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgsDict: TypeAlias = Mapping[str, Any]
|
1025
|
+
|
1026
|
+
@pulumi.input_type
|
1027
|
+
class AuthzPolicyHttpRuleFromNotSourceResourceIamServiceAccountArgs:
|
1028
|
+
def __init__(__self__, *,
|
1029
|
+
contains: Optional[pulumi.Input[str]] = None,
|
1030
|
+
exact: Optional[pulumi.Input[str]] = None,
|
1031
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
1032
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
1033
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
1034
|
+
"""
|
1035
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1036
|
+
Examples:
|
1037
|
+
* abc matches the value xyz.abc.def
|
1038
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
1039
|
+
Examples:
|
1040
|
+
* abc only matches the value abc.
|
1041
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1042
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1043
|
+
Examples:
|
1044
|
+
* abc matches the value abc.xyz
|
1045
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1046
|
+
Examples:
|
1047
|
+
* abc matches the value xyz.abc
|
1048
|
+
"""
|
1049
|
+
if contains is not None:
|
1050
|
+
pulumi.set(__self__, "contains", contains)
|
1051
|
+
if exact is not None:
|
1052
|
+
pulumi.set(__self__, "exact", exact)
|
1053
|
+
if ignore_case is not None:
|
1054
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
1055
|
+
if prefix is not None:
|
1056
|
+
pulumi.set(__self__, "prefix", prefix)
|
1057
|
+
if suffix is not None:
|
1058
|
+
pulumi.set(__self__, "suffix", suffix)
|
1059
|
+
|
1060
|
+
@property
|
1061
|
+
@pulumi.getter
|
1062
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
1063
|
+
"""
|
1064
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1065
|
+
Examples:
|
1066
|
+
* abc matches the value xyz.abc.def
|
1067
|
+
"""
|
1068
|
+
return pulumi.get(self, "contains")
|
1069
|
+
|
1070
|
+
@contains.setter
|
1071
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
1072
|
+
pulumi.set(self, "contains", value)
|
1073
|
+
|
1074
|
+
@property
|
1075
|
+
@pulumi.getter
|
1076
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
1077
|
+
"""
|
1078
|
+
The input string must match exactly the string specified here.
|
1079
|
+
Examples:
|
1080
|
+
* abc only matches the value abc.
|
1081
|
+
"""
|
1082
|
+
return pulumi.get(self, "exact")
|
1083
|
+
|
1084
|
+
@exact.setter
|
1085
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
1086
|
+
pulumi.set(self, "exact", value)
|
1087
|
+
|
1088
|
+
@property
|
1089
|
+
@pulumi.getter(name="ignoreCase")
|
1090
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
1091
|
+
"""
|
1092
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1093
|
+
"""
|
1094
|
+
return pulumi.get(self, "ignore_case")
|
1095
|
+
|
1096
|
+
@ignore_case.setter
|
1097
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
1098
|
+
pulumi.set(self, "ignore_case", value)
|
1099
|
+
|
1100
|
+
@property
|
1101
|
+
@pulumi.getter
|
1102
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
1103
|
+
"""
|
1104
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1105
|
+
Examples:
|
1106
|
+
* abc matches the value abc.xyz
|
1107
|
+
"""
|
1108
|
+
return pulumi.get(self, "prefix")
|
1109
|
+
|
1110
|
+
@prefix.setter
|
1111
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
1112
|
+
pulumi.set(self, "prefix", value)
|
1113
|
+
|
1114
|
+
@property
|
1115
|
+
@pulumi.getter
|
1116
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
1117
|
+
"""
|
1118
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1119
|
+
Examples:
|
1120
|
+
* abc matches the value xyz.abc
|
1121
|
+
"""
|
1122
|
+
return pulumi.get(self, "suffix")
|
1123
|
+
|
1124
|
+
@suffix.setter
|
1125
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
1126
|
+
pulumi.set(self, "suffix", value)
|
1127
|
+
|
1128
|
+
|
1129
|
+
if not MYPY:
|
1130
|
+
class AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgsDict(TypedDict):
|
1131
|
+
ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
1132
|
+
"""
|
1133
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request. The match follows AND semantics which means all the ids must match.
|
1134
|
+
Limited to 5 matches.
|
1135
|
+
"""
|
1136
|
+
elif False:
|
1137
|
+
AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgsDict: TypeAlias = Mapping[str, Any]
|
1138
|
+
|
1139
|
+
@pulumi.input_type
|
1140
|
+
class AuthzPolicyHttpRuleFromNotSourceResourceTagValueIdSetArgs:
|
1141
|
+
def __init__(__self__, *,
|
1142
|
+
ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
1143
|
+
"""
|
1144
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ids: A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request. The match follows AND semantics which means all the ids must match.
|
1145
|
+
Limited to 5 matches.
|
1146
|
+
"""
|
1147
|
+
if ids is not None:
|
1148
|
+
pulumi.set(__self__, "ids", ids)
|
1149
|
+
|
1150
|
+
@property
|
1151
|
+
@pulumi.getter
|
1152
|
+
def ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
1153
|
+
"""
|
1154
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request. The match follows AND semantics which means all the ids must match.
|
1155
|
+
Limited to 5 matches.
|
1156
|
+
"""
|
1157
|
+
return pulumi.get(self, "ids")
|
1158
|
+
|
1159
|
+
@ids.setter
|
1160
|
+
def ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
1161
|
+
pulumi.set(self, "ids", value)
|
1162
|
+
|
1163
|
+
|
1164
|
+
if not MYPY:
|
1165
|
+
class AuthzPolicyHttpRuleFromSourceArgsDict(TypedDict):
|
1166
|
+
principals: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourcePrincipalArgsDict']]]]
|
1167
|
+
"""
|
1168
|
+
A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
|
1169
|
+
Limited to 5 principals.
|
1170
|
+
Structure is documented below.
|
1171
|
+
"""
|
1172
|
+
resources: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceArgsDict']]]]
|
1173
|
+
"""
|
1174
|
+
A list of resources to match against the resource of the source VM of a request.
|
1175
|
+
Limited to 5 resources.
|
1176
|
+
Structure is documented below.
|
1177
|
+
"""
|
1178
|
+
elif False:
|
1179
|
+
AuthzPolicyHttpRuleFromSourceArgsDict: TypeAlias = Mapping[str, Any]
|
1180
|
+
|
1181
|
+
@pulumi.input_type
|
1182
|
+
class AuthzPolicyHttpRuleFromSourceArgs:
|
1183
|
+
def __init__(__self__, *,
|
1184
|
+
principals: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourcePrincipalArgs']]]] = None,
|
1185
|
+
resources: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceArgs']]]] = None):
|
1186
|
+
"""
|
1187
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourcePrincipalArgs']]] principals: A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
|
1188
|
+
Limited to 5 principals.
|
1189
|
+
Structure is documented below.
|
1190
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceArgs']]] resources: A list of resources to match against the resource of the source VM of a request.
|
1191
|
+
Limited to 5 resources.
|
1192
|
+
Structure is documented below.
|
1193
|
+
"""
|
1194
|
+
if principals is not None:
|
1195
|
+
pulumi.set(__self__, "principals", principals)
|
1196
|
+
if resources is not None:
|
1197
|
+
pulumi.set(__self__, "resources", resources)
|
1198
|
+
|
1199
|
+
@property
|
1200
|
+
@pulumi.getter
|
1201
|
+
def principals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourcePrincipalArgs']]]]:
|
1202
|
+
"""
|
1203
|
+
A list of identities derived from the client's certificate. This field will not match on a request unless mutual TLS is enabled for the Forwarding rule or Gateway. Each identity is a string whose value is matched against the URI SAN, or DNS SAN or the subject field in the client's certificate. The match can be exact, prefix, suffix or a substring match. One of exact, prefix, suffix or contains must be specified.
|
1204
|
+
Limited to 5 principals.
|
1205
|
+
Structure is documented below.
|
1206
|
+
"""
|
1207
|
+
return pulumi.get(self, "principals")
|
1208
|
+
|
1209
|
+
@principals.setter
|
1210
|
+
def principals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourcePrincipalArgs']]]]):
|
1211
|
+
pulumi.set(self, "principals", value)
|
1212
|
+
|
1213
|
+
@property
|
1214
|
+
@pulumi.getter
|
1215
|
+
def resources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceArgs']]]]:
|
1216
|
+
"""
|
1217
|
+
A list of resources to match against the resource of the source VM of a request.
|
1218
|
+
Limited to 5 resources.
|
1219
|
+
Structure is documented below.
|
1220
|
+
"""
|
1221
|
+
return pulumi.get(self, "resources")
|
1222
|
+
|
1223
|
+
@resources.setter
|
1224
|
+
def resources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceArgs']]]]):
|
1225
|
+
pulumi.set(self, "resources", value)
|
1226
|
+
|
1227
|
+
|
1228
|
+
if not MYPY:
|
1229
|
+
class AuthzPolicyHttpRuleFromSourcePrincipalArgsDict(TypedDict):
|
1230
|
+
contains: NotRequired[pulumi.Input[str]]
|
1231
|
+
"""
|
1232
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1233
|
+
Examples:
|
1234
|
+
* abc matches the value xyz.abc.def
|
1235
|
+
"""
|
1236
|
+
exact: NotRequired[pulumi.Input[str]]
|
1237
|
+
"""
|
1238
|
+
The input string must match exactly the string specified here.
|
1239
|
+
Examples:
|
1240
|
+
* abc only matches the value abc.
|
1241
|
+
"""
|
1242
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
1243
|
+
"""
|
1244
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1245
|
+
"""
|
1246
|
+
prefix: NotRequired[pulumi.Input[str]]
|
1247
|
+
"""
|
1248
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1249
|
+
Examples:
|
1250
|
+
* abc matches the value abc.xyz
|
1251
|
+
"""
|
1252
|
+
suffix: NotRequired[pulumi.Input[str]]
|
1253
|
+
"""
|
1254
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1255
|
+
Examples:
|
1256
|
+
* abc matches the value xyz.abc
|
1257
|
+
"""
|
1258
|
+
elif False:
|
1259
|
+
AuthzPolicyHttpRuleFromSourcePrincipalArgsDict: TypeAlias = Mapping[str, Any]
|
1260
|
+
|
1261
|
+
@pulumi.input_type
|
1262
|
+
class AuthzPolicyHttpRuleFromSourcePrincipalArgs:
|
1263
|
+
def __init__(__self__, *,
|
1264
|
+
contains: Optional[pulumi.Input[str]] = None,
|
1265
|
+
exact: Optional[pulumi.Input[str]] = None,
|
1266
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
1267
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
1268
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
1269
|
+
"""
|
1270
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1271
|
+
Examples:
|
1272
|
+
* abc matches the value xyz.abc.def
|
1273
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
1274
|
+
Examples:
|
1275
|
+
* abc only matches the value abc.
|
1276
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1277
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1278
|
+
Examples:
|
1279
|
+
* abc matches the value abc.xyz
|
1280
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1281
|
+
Examples:
|
1282
|
+
* abc matches the value xyz.abc
|
1283
|
+
"""
|
1284
|
+
if contains is not None:
|
1285
|
+
pulumi.set(__self__, "contains", contains)
|
1286
|
+
if exact is not None:
|
1287
|
+
pulumi.set(__self__, "exact", exact)
|
1288
|
+
if ignore_case is not None:
|
1289
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
1290
|
+
if prefix is not None:
|
1291
|
+
pulumi.set(__self__, "prefix", prefix)
|
1292
|
+
if suffix is not None:
|
1293
|
+
pulumi.set(__self__, "suffix", suffix)
|
1294
|
+
|
1295
|
+
@property
|
1296
|
+
@pulumi.getter
|
1297
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
1298
|
+
"""
|
1299
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1300
|
+
Examples:
|
1301
|
+
* abc matches the value xyz.abc.def
|
1302
|
+
"""
|
1303
|
+
return pulumi.get(self, "contains")
|
1304
|
+
|
1305
|
+
@contains.setter
|
1306
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
1307
|
+
pulumi.set(self, "contains", value)
|
1308
|
+
|
1309
|
+
@property
|
1310
|
+
@pulumi.getter
|
1311
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
1312
|
+
"""
|
1313
|
+
The input string must match exactly the string specified here.
|
1314
|
+
Examples:
|
1315
|
+
* abc only matches the value abc.
|
1316
|
+
"""
|
1317
|
+
return pulumi.get(self, "exact")
|
1318
|
+
|
1319
|
+
@exact.setter
|
1320
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
1321
|
+
pulumi.set(self, "exact", value)
|
1322
|
+
|
1323
|
+
@property
|
1324
|
+
@pulumi.getter(name="ignoreCase")
|
1325
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
1326
|
+
"""
|
1327
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1328
|
+
"""
|
1329
|
+
return pulumi.get(self, "ignore_case")
|
1330
|
+
|
1331
|
+
@ignore_case.setter
|
1332
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
1333
|
+
pulumi.set(self, "ignore_case", value)
|
1334
|
+
|
1335
|
+
@property
|
1336
|
+
@pulumi.getter
|
1337
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
1338
|
+
"""
|
1339
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1340
|
+
Examples:
|
1341
|
+
* abc matches the value abc.xyz
|
1342
|
+
"""
|
1343
|
+
return pulumi.get(self, "prefix")
|
1344
|
+
|
1345
|
+
@prefix.setter
|
1346
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
1347
|
+
pulumi.set(self, "prefix", value)
|
1348
|
+
|
1349
|
+
@property
|
1350
|
+
@pulumi.getter
|
1351
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
1352
|
+
"""
|
1353
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1354
|
+
Examples:
|
1355
|
+
* abc matches the value xyz.abc
|
1356
|
+
"""
|
1357
|
+
return pulumi.get(self, "suffix")
|
1358
|
+
|
1359
|
+
@suffix.setter
|
1360
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
1361
|
+
pulumi.set(self, "suffix", value)
|
1362
|
+
|
1363
|
+
|
1364
|
+
if not MYPY:
|
1365
|
+
class AuthzPolicyHttpRuleFromSourceResourceArgsDict(TypedDict):
|
1366
|
+
iam_service_account: NotRequired[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgsDict']]
|
1367
|
+
"""
|
1368
|
+
An IAM service account to match against the source service account of the VM sending the request.
|
1369
|
+
Structure is documented below.
|
1370
|
+
"""
|
1371
|
+
tag_value_id_set: NotRequired[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgsDict']]
|
1372
|
+
"""
|
1373
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request.
|
1374
|
+
Structure is documented below.
|
1375
|
+
"""
|
1376
|
+
elif False:
|
1377
|
+
AuthzPolicyHttpRuleFromSourceResourceArgsDict: TypeAlias = Mapping[str, Any]
|
1378
|
+
|
1379
|
+
@pulumi.input_type
|
1380
|
+
class AuthzPolicyHttpRuleFromSourceResourceArgs:
|
1381
|
+
def __init__(__self__, *,
|
1382
|
+
iam_service_account: Optional[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgs']] = None,
|
1383
|
+
tag_value_id_set: Optional[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgs']] = None):
|
1384
|
+
"""
|
1385
|
+
:param pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgs'] iam_service_account: An IAM service account to match against the source service account of the VM sending the request.
|
1386
|
+
Structure is documented below.
|
1387
|
+
:param pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgs'] tag_value_id_set: A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request.
|
1388
|
+
Structure is documented below.
|
1389
|
+
"""
|
1390
|
+
if iam_service_account is not None:
|
1391
|
+
pulumi.set(__self__, "iam_service_account", iam_service_account)
|
1392
|
+
if tag_value_id_set is not None:
|
1393
|
+
pulumi.set(__self__, "tag_value_id_set", tag_value_id_set)
|
1394
|
+
|
1395
|
+
@property
|
1396
|
+
@pulumi.getter(name="iamServiceAccount")
|
1397
|
+
def iam_service_account(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgs']]:
|
1398
|
+
"""
|
1399
|
+
An IAM service account to match against the source service account of the VM sending the request.
|
1400
|
+
Structure is documented below.
|
1401
|
+
"""
|
1402
|
+
return pulumi.get(self, "iam_service_account")
|
1403
|
+
|
1404
|
+
@iam_service_account.setter
|
1405
|
+
def iam_service_account(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgs']]):
|
1406
|
+
pulumi.set(self, "iam_service_account", value)
|
1407
|
+
|
1408
|
+
@property
|
1409
|
+
@pulumi.getter(name="tagValueIdSet")
|
1410
|
+
def tag_value_id_set(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgs']]:
|
1411
|
+
"""
|
1412
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request.
|
1413
|
+
Structure is documented below.
|
1414
|
+
"""
|
1415
|
+
return pulumi.get(self, "tag_value_id_set")
|
1416
|
+
|
1417
|
+
@tag_value_id_set.setter
|
1418
|
+
def tag_value_id_set(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgs']]):
|
1419
|
+
pulumi.set(self, "tag_value_id_set", value)
|
1420
|
+
|
1421
|
+
|
1422
|
+
if not MYPY:
|
1423
|
+
class AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgsDict(TypedDict):
|
1424
|
+
contains: NotRequired[pulumi.Input[str]]
|
1425
|
+
"""
|
1426
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1427
|
+
Examples:
|
1428
|
+
* abc matches the value xyz.abc.def
|
1429
|
+
"""
|
1430
|
+
exact: NotRequired[pulumi.Input[str]]
|
1431
|
+
"""
|
1432
|
+
The input string must match exactly the string specified here.
|
1433
|
+
Examples:
|
1434
|
+
* abc only matches the value abc.
|
1435
|
+
"""
|
1436
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
1437
|
+
"""
|
1438
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1439
|
+
"""
|
1440
|
+
prefix: NotRequired[pulumi.Input[str]]
|
1441
|
+
"""
|
1442
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1443
|
+
Examples:
|
1444
|
+
* abc matches the value abc.xyz
|
1445
|
+
"""
|
1446
|
+
suffix: NotRequired[pulumi.Input[str]]
|
1447
|
+
"""
|
1448
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1449
|
+
Examples:
|
1450
|
+
* abc matches the value xyz.abc
|
1451
|
+
"""
|
1452
|
+
elif False:
|
1453
|
+
AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgsDict: TypeAlias = Mapping[str, Any]
|
1454
|
+
|
1455
|
+
@pulumi.input_type
|
1456
|
+
class AuthzPolicyHttpRuleFromSourceResourceIamServiceAccountArgs:
|
1457
|
+
def __init__(__self__, *,
|
1458
|
+
contains: Optional[pulumi.Input[str]] = None,
|
1459
|
+
exact: Optional[pulumi.Input[str]] = None,
|
1460
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
1461
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
1462
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
1463
|
+
"""
|
1464
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1465
|
+
Examples:
|
1466
|
+
* abc matches the value xyz.abc.def
|
1467
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
1468
|
+
Examples:
|
1469
|
+
* abc only matches the value abc.
|
1470
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1471
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1472
|
+
Examples:
|
1473
|
+
* abc matches the value abc.xyz
|
1474
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1475
|
+
Examples:
|
1476
|
+
* abc matches the value xyz.abc
|
1477
|
+
"""
|
1478
|
+
if contains is not None:
|
1479
|
+
pulumi.set(__self__, "contains", contains)
|
1480
|
+
if exact is not None:
|
1481
|
+
pulumi.set(__self__, "exact", exact)
|
1482
|
+
if ignore_case is not None:
|
1483
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
1484
|
+
if prefix is not None:
|
1485
|
+
pulumi.set(__self__, "prefix", prefix)
|
1486
|
+
if suffix is not None:
|
1487
|
+
pulumi.set(__self__, "suffix", suffix)
|
1488
|
+
|
1489
|
+
@property
|
1490
|
+
@pulumi.getter
|
1491
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
1492
|
+
"""
|
1493
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1494
|
+
Examples:
|
1495
|
+
* abc matches the value xyz.abc.def
|
1496
|
+
"""
|
1497
|
+
return pulumi.get(self, "contains")
|
1498
|
+
|
1499
|
+
@contains.setter
|
1500
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
1501
|
+
pulumi.set(self, "contains", value)
|
1502
|
+
|
1503
|
+
@property
|
1504
|
+
@pulumi.getter
|
1505
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
1506
|
+
"""
|
1507
|
+
The input string must match exactly the string specified here.
|
1508
|
+
Examples:
|
1509
|
+
* abc only matches the value abc.
|
1510
|
+
"""
|
1511
|
+
return pulumi.get(self, "exact")
|
1512
|
+
|
1513
|
+
@exact.setter
|
1514
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
1515
|
+
pulumi.set(self, "exact", value)
|
1516
|
+
|
1517
|
+
@property
|
1518
|
+
@pulumi.getter(name="ignoreCase")
|
1519
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
1520
|
+
"""
|
1521
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1522
|
+
"""
|
1523
|
+
return pulumi.get(self, "ignore_case")
|
1524
|
+
|
1525
|
+
@ignore_case.setter
|
1526
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
1527
|
+
pulumi.set(self, "ignore_case", value)
|
1528
|
+
|
1529
|
+
@property
|
1530
|
+
@pulumi.getter
|
1531
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
1532
|
+
"""
|
1533
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1534
|
+
Examples:
|
1535
|
+
* abc matches the value abc.xyz
|
1536
|
+
"""
|
1537
|
+
return pulumi.get(self, "prefix")
|
1538
|
+
|
1539
|
+
@prefix.setter
|
1540
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
1541
|
+
pulumi.set(self, "prefix", value)
|
1542
|
+
|
1543
|
+
@property
|
1544
|
+
@pulumi.getter
|
1545
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
1546
|
+
"""
|
1547
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1548
|
+
Examples:
|
1549
|
+
* abc matches the value xyz.abc
|
1550
|
+
"""
|
1551
|
+
return pulumi.get(self, "suffix")
|
1552
|
+
|
1553
|
+
@suffix.setter
|
1554
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
1555
|
+
pulumi.set(self, "suffix", value)
|
1556
|
+
|
1557
|
+
|
1558
|
+
if not MYPY:
|
1559
|
+
class AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgsDict(TypedDict):
|
1560
|
+
ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
1561
|
+
"""
|
1562
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request. The match follows AND semantics which means all the ids must match.
|
1563
|
+
Limited to 5 matches.
|
1564
|
+
"""
|
1565
|
+
elif False:
|
1566
|
+
AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgsDict: TypeAlias = Mapping[str, Any]
|
1567
|
+
|
1568
|
+
@pulumi.input_type
|
1569
|
+
class AuthzPolicyHttpRuleFromSourceResourceTagValueIdSetArgs:
|
1570
|
+
def __init__(__self__, *,
|
1571
|
+
ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
1572
|
+
"""
|
1573
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ids: A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request. The match follows AND semantics which means all the ids must match.
|
1574
|
+
Limited to 5 matches.
|
1575
|
+
"""
|
1576
|
+
if ids is not None:
|
1577
|
+
pulumi.set(__self__, "ids", ids)
|
1578
|
+
|
1579
|
+
@property
|
1580
|
+
@pulumi.getter
|
1581
|
+
def ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
1582
|
+
"""
|
1583
|
+
A list of resource tag value permanent IDs to match against the resource manager tags value associated with the source VM of a request. The match follows AND semantics which means all the ids must match.
|
1584
|
+
Limited to 5 matches.
|
1585
|
+
"""
|
1586
|
+
return pulumi.get(self, "ids")
|
1587
|
+
|
1588
|
+
@ids.setter
|
1589
|
+
def ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
1590
|
+
pulumi.set(self, "ids", value)
|
1591
|
+
|
1592
|
+
|
1593
|
+
if not MYPY:
|
1594
|
+
class AuthzPolicyHttpRuleToArgsDict(TypedDict):
|
1595
|
+
operations: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationArgsDict']]]]
|
1596
|
+
"""
|
1597
|
+
Describes properties of one or more targets of a request. At least one of operations or notOperations must be specified. Limited to 5 operations. A match occurs when ANY operation (in operations or notOperations) matches. Within an operation, the match follows AND semantics across fields and OR semantics within a field, i.e. a match occurs when ANY path matches AND ANY header matches and ANY method matches.
|
1598
|
+
Structure is documented below.
|
1599
|
+
"""
|
1600
|
+
elif False:
|
1601
|
+
AuthzPolicyHttpRuleToArgsDict: TypeAlias = Mapping[str, Any]
|
1602
|
+
|
1603
|
+
@pulumi.input_type
|
1604
|
+
class AuthzPolicyHttpRuleToArgs:
|
1605
|
+
def __init__(__self__, *,
|
1606
|
+
operations: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationArgs']]]] = None):
|
1607
|
+
"""
|
1608
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationArgs']]] operations: Describes properties of one or more targets of a request. At least one of operations or notOperations must be specified. Limited to 5 operations. A match occurs when ANY operation (in operations or notOperations) matches. Within an operation, the match follows AND semantics across fields and OR semantics within a field, i.e. a match occurs when ANY path matches AND ANY header matches and ANY method matches.
|
1609
|
+
Structure is documented below.
|
1610
|
+
"""
|
1611
|
+
if operations is not None:
|
1612
|
+
pulumi.set(__self__, "operations", operations)
|
1613
|
+
|
1614
|
+
@property
|
1615
|
+
@pulumi.getter
|
1616
|
+
def operations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationArgs']]]]:
|
1617
|
+
"""
|
1618
|
+
Describes properties of one or more targets of a request. At least one of operations or notOperations must be specified. Limited to 5 operations. A match occurs when ANY operation (in operations or notOperations) matches. Within an operation, the match follows AND semantics across fields and OR semantics within a field, i.e. a match occurs when ANY path matches AND ANY header matches and ANY method matches.
|
1619
|
+
Structure is documented below.
|
1620
|
+
"""
|
1621
|
+
return pulumi.get(self, "operations")
|
1622
|
+
|
1623
|
+
@operations.setter
|
1624
|
+
def operations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationArgs']]]]):
|
1625
|
+
pulumi.set(self, "operations", value)
|
1626
|
+
|
1627
|
+
|
1628
|
+
if not MYPY:
|
1629
|
+
class AuthzPolicyHttpRuleToOperationArgsDict(TypedDict):
|
1630
|
+
header_set: NotRequired[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetArgsDict']]
|
1631
|
+
"""
|
1632
|
+
A list of headers to match against in http header.
|
1633
|
+
Structure is documented below.
|
1634
|
+
"""
|
1635
|
+
hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHostArgsDict']]]]
|
1636
|
+
"""
|
1637
|
+
A list of HTTP Hosts to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set.
|
1638
|
+
Limited to 5 matches.
|
1639
|
+
Structure is documented below.
|
1640
|
+
"""
|
1641
|
+
methods: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
1642
|
+
"""
|
1643
|
+
A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive.
|
1644
|
+
"""
|
1645
|
+
paths: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationPathArgsDict']]]]
|
1646
|
+
"""
|
1647
|
+
A list of paths to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set.
|
1648
|
+
Limited to 5 matches.
|
1649
|
+
Note that this path match includes the query parameters. For gRPC services, this should be a fully-qualified name of the form /package.service/method.
|
1650
|
+
Structure is documented below.
|
1651
|
+
"""
|
1652
|
+
elif False:
|
1653
|
+
AuthzPolicyHttpRuleToOperationArgsDict: TypeAlias = Mapping[str, Any]
|
1654
|
+
|
1655
|
+
@pulumi.input_type
|
1656
|
+
class AuthzPolicyHttpRuleToOperationArgs:
|
1657
|
+
def __init__(__self__, *,
|
1658
|
+
header_set: Optional[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetArgs']] = None,
|
1659
|
+
hosts: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHostArgs']]]] = None,
|
1660
|
+
methods: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
1661
|
+
paths: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationPathArgs']]]] = None):
|
1662
|
+
"""
|
1663
|
+
:param pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetArgs'] header_set: A list of headers to match against in http header.
|
1664
|
+
Structure is documented below.
|
1665
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHostArgs']]] hosts: A list of HTTP Hosts to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set.
|
1666
|
+
Limited to 5 matches.
|
1667
|
+
Structure is documented below.
|
1668
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] methods: A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive.
|
1669
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationPathArgs']]] paths: A list of paths to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set.
|
1670
|
+
Limited to 5 matches.
|
1671
|
+
Note that this path match includes the query parameters. For gRPC services, this should be a fully-qualified name of the form /package.service/method.
|
1672
|
+
Structure is documented below.
|
1673
|
+
"""
|
1674
|
+
if header_set is not None:
|
1675
|
+
pulumi.set(__self__, "header_set", header_set)
|
1676
|
+
if hosts is not None:
|
1677
|
+
pulumi.set(__self__, "hosts", hosts)
|
1678
|
+
if methods is not None:
|
1679
|
+
pulumi.set(__self__, "methods", methods)
|
1680
|
+
if paths is not None:
|
1681
|
+
pulumi.set(__self__, "paths", paths)
|
1682
|
+
|
1683
|
+
@property
|
1684
|
+
@pulumi.getter(name="headerSet")
|
1685
|
+
def header_set(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetArgs']]:
|
1686
|
+
"""
|
1687
|
+
A list of headers to match against in http header.
|
1688
|
+
Structure is documented below.
|
1689
|
+
"""
|
1690
|
+
return pulumi.get(self, "header_set")
|
1691
|
+
|
1692
|
+
@header_set.setter
|
1693
|
+
def header_set(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetArgs']]):
|
1694
|
+
pulumi.set(self, "header_set", value)
|
1695
|
+
|
1696
|
+
@property
|
1697
|
+
@pulumi.getter
|
1698
|
+
def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHostArgs']]]]:
|
1699
|
+
"""
|
1700
|
+
A list of HTTP Hosts to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set.
|
1701
|
+
Limited to 5 matches.
|
1702
|
+
Structure is documented below.
|
1703
|
+
"""
|
1704
|
+
return pulumi.get(self, "hosts")
|
1705
|
+
|
1706
|
+
@hosts.setter
|
1707
|
+
def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHostArgs']]]]):
|
1708
|
+
pulumi.set(self, "hosts", value)
|
1709
|
+
|
1710
|
+
@property
|
1711
|
+
@pulumi.getter
|
1712
|
+
def methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
1713
|
+
"""
|
1714
|
+
A list of HTTP methods to match against. Each entry must be a valid HTTP method name (GET, PUT, POST, HEAD, PATCH, DELETE, OPTIONS). It only allows exact match and is always case sensitive.
|
1715
|
+
"""
|
1716
|
+
return pulumi.get(self, "methods")
|
1717
|
+
|
1718
|
+
@methods.setter
|
1719
|
+
def methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
1720
|
+
pulumi.set(self, "methods", value)
|
1721
|
+
|
1722
|
+
@property
|
1723
|
+
@pulumi.getter
|
1724
|
+
def paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationPathArgs']]]]:
|
1725
|
+
"""
|
1726
|
+
A list of paths to match against. The match can be one of exact, prefix, suffix, or contains (substring match). Matches are always case sensitive unless the ignoreCase is set.
|
1727
|
+
Limited to 5 matches.
|
1728
|
+
Note that this path match includes the query parameters. For gRPC services, this should be a fully-qualified name of the form /package.service/method.
|
1729
|
+
Structure is documented below.
|
1730
|
+
"""
|
1731
|
+
return pulumi.get(self, "paths")
|
1732
|
+
|
1733
|
+
@paths.setter
|
1734
|
+
def paths(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationPathArgs']]]]):
|
1735
|
+
pulumi.set(self, "paths", value)
|
1736
|
+
|
1737
|
+
|
1738
|
+
if not MYPY:
|
1739
|
+
class AuthzPolicyHttpRuleToOperationHeaderSetArgsDict(TypedDict):
|
1740
|
+
headers: NotRequired[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgsDict']]]]
|
1741
|
+
"""
|
1742
|
+
A list of headers to match against in http header. The match can be one of exact, prefix, suffix, or contains (substring match). The match follows AND semantics which means all the headers must match. Matches are always case sensitive unless the ignoreCase is set. Limited to 5 matches.
|
1743
|
+
Structure is documented below.
|
1744
|
+
"""
|
1745
|
+
elif False:
|
1746
|
+
AuthzPolicyHttpRuleToOperationHeaderSetArgsDict: TypeAlias = Mapping[str, Any]
|
1747
|
+
|
1748
|
+
@pulumi.input_type
|
1749
|
+
class AuthzPolicyHttpRuleToOperationHeaderSetArgs:
|
1750
|
+
def __init__(__self__, *,
|
1751
|
+
headers: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgs']]]] = None):
|
1752
|
+
"""
|
1753
|
+
:param pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgs']]] headers: A list of headers to match against in http header. The match can be one of exact, prefix, suffix, or contains (substring match). The match follows AND semantics which means all the headers must match. Matches are always case sensitive unless the ignoreCase is set. Limited to 5 matches.
|
1754
|
+
Structure is documented below.
|
1755
|
+
"""
|
1756
|
+
if headers is not None:
|
1757
|
+
pulumi.set(__self__, "headers", headers)
|
1758
|
+
|
1759
|
+
@property
|
1760
|
+
@pulumi.getter
|
1761
|
+
def headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgs']]]]:
|
1762
|
+
"""
|
1763
|
+
A list of headers to match against in http header. The match can be one of exact, prefix, suffix, or contains (substring match). The match follows AND semantics which means all the headers must match. Matches are always case sensitive unless the ignoreCase is set. Limited to 5 matches.
|
1764
|
+
Structure is documented below.
|
1765
|
+
"""
|
1766
|
+
return pulumi.get(self, "headers")
|
1767
|
+
|
1768
|
+
@headers.setter
|
1769
|
+
def headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgs']]]]):
|
1770
|
+
pulumi.set(self, "headers", value)
|
1771
|
+
|
1772
|
+
|
1773
|
+
if not MYPY:
|
1774
|
+
class AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgsDict(TypedDict):
|
1775
|
+
name: NotRequired[pulumi.Input[str]]
|
1776
|
+
"""
|
1777
|
+
Specifies the name of the header in the request.
|
1778
|
+
"""
|
1779
|
+
value: NotRequired[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgsDict']]
|
1780
|
+
"""
|
1781
|
+
Specifies how the header match will be performed.
|
1782
|
+
Structure is documented below.
|
1783
|
+
"""
|
1784
|
+
elif False:
|
1785
|
+
AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgsDict: TypeAlias = Mapping[str, Any]
|
1786
|
+
|
1787
|
+
@pulumi.input_type
|
1788
|
+
class AuthzPolicyHttpRuleToOperationHeaderSetHeaderArgs:
|
1789
|
+
def __init__(__self__, *,
|
1790
|
+
name: Optional[pulumi.Input[str]] = None,
|
1791
|
+
value: Optional[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgs']] = None):
|
1792
|
+
"""
|
1793
|
+
:param pulumi.Input[str] name: Specifies the name of the header in the request.
|
1794
|
+
:param pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgs'] value: Specifies how the header match will be performed.
|
1795
|
+
Structure is documented below.
|
1796
|
+
"""
|
1797
|
+
if name is not None:
|
1798
|
+
pulumi.set(__self__, "name", name)
|
1799
|
+
if value is not None:
|
1800
|
+
pulumi.set(__self__, "value", value)
|
1801
|
+
|
1802
|
+
@property
|
1803
|
+
@pulumi.getter
|
1804
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
1805
|
+
"""
|
1806
|
+
Specifies the name of the header in the request.
|
1807
|
+
"""
|
1808
|
+
return pulumi.get(self, "name")
|
1809
|
+
|
1810
|
+
@name.setter
|
1811
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
1812
|
+
pulumi.set(self, "name", value)
|
1813
|
+
|
1814
|
+
@property
|
1815
|
+
@pulumi.getter
|
1816
|
+
def value(self) -> Optional[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgs']]:
|
1817
|
+
"""
|
1818
|
+
Specifies how the header match will be performed.
|
1819
|
+
Structure is documented below.
|
1820
|
+
"""
|
1821
|
+
return pulumi.get(self, "value")
|
1822
|
+
|
1823
|
+
@value.setter
|
1824
|
+
def value(self, value: Optional[pulumi.Input['AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgs']]):
|
1825
|
+
pulumi.set(self, "value", value)
|
1826
|
+
|
1827
|
+
|
1828
|
+
if not MYPY:
|
1829
|
+
class AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgsDict(TypedDict):
|
1830
|
+
contains: NotRequired[pulumi.Input[str]]
|
1831
|
+
"""
|
1832
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1833
|
+
Examples:
|
1834
|
+
* abc matches the value xyz.abc.def
|
1835
|
+
"""
|
1836
|
+
exact: NotRequired[pulumi.Input[str]]
|
1837
|
+
"""
|
1838
|
+
The input string must match exactly the string specified here.
|
1839
|
+
Examples:
|
1840
|
+
* abc only matches the value abc.
|
1841
|
+
"""
|
1842
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
1843
|
+
"""
|
1844
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1845
|
+
"""
|
1846
|
+
prefix: NotRequired[pulumi.Input[str]]
|
1847
|
+
"""
|
1848
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1849
|
+
Examples:
|
1850
|
+
* abc matches the value abc.xyz
|
1851
|
+
"""
|
1852
|
+
suffix: NotRequired[pulumi.Input[str]]
|
1853
|
+
"""
|
1854
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1855
|
+
Examples:
|
1856
|
+
* abc matches the value xyz.abc
|
1857
|
+
"""
|
1858
|
+
elif False:
|
1859
|
+
AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgsDict: TypeAlias = Mapping[str, Any]
|
1860
|
+
|
1861
|
+
@pulumi.input_type
|
1862
|
+
class AuthzPolicyHttpRuleToOperationHeaderSetHeaderValueArgs:
|
1863
|
+
def __init__(__self__, *,
|
1864
|
+
contains: Optional[pulumi.Input[str]] = None,
|
1865
|
+
exact: Optional[pulumi.Input[str]] = None,
|
1866
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
1867
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
1868
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
1869
|
+
"""
|
1870
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1871
|
+
Examples:
|
1872
|
+
* abc matches the value xyz.abc.def
|
1873
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
1874
|
+
Examples:
|
1875
|
+
* abc only matches the value abc.
|
1876
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1877
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1878
|
+
Examples:
|
1879
|
+
* abc matches the value abc.xyz
|
1880
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1881
|
+
Examples:
|
1882
|
+
* abc matches the value xyz.abc
|
1883
|
+
"""
|
1884
|
+
if contains is not None:
|
1885
|
+
pulumi.set(__self__, "contains", contains)
|
1886
|
+
if exact is not None:
|
1887
|
+
pulumi.set(__self__, "exact", exact)
|
1888
|
+
if ignore_case is not None:
|
1889
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
1890
|
+
if prefix is not None:
|
1891
|
+
pulumi.set(__self__, "prefix", prefix)
|
1892
|
+
if suffix is not None:
|
1893
|
+
pulumi.set(__self__, "suffix", suffix)
|
1894
|
+
|
1895
|
+
@property
|
1896
|
+
@pulumi.getter
|
1897
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
1898
|
+
"""
|
1899
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1900
|
+
Examples:
|
1901
|
+
* abc matches the value xyz.abc.def
|
1902
|
+
"""
|
1903
|
+
return pulumi.get(self, "contains")
|
1904
|
+
|
1905
|
+
@contains.setter
|
1906
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
1907
|
+
pulumi.set(self, "contains", value)
|
1908
|
+
|
1909
|
+
@property
|
1910
|
+
@pulumi.getter
|
1911
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
1912
|
+
"""
|
1913
|
+
The input string must match exactly the string specified here.
|
1914
|
+
Examples:
|
1915
|
+
* abc only matches the value abc.
|
1916
|
+
"""
|
1917
|
+
return pulumi.get(self, "exact")
|
1918
|
+
|
1919
|
+
@exact.setter
|
1920
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
1921
|
+
pulumi.set(self, "exact", value)
|
1922
|
+
|
1923
|
+
@property
|
1924
|
+
@pulumi.getter(name="ignoreCase")
|
1925
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
1926
|
+
"""
|
1927
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1928
|
+
"""
|
1929
|
+
return pulumi.get(self, "ignore_case")
|
1930
|
+
|
1931
|
+
@ignore_case.setter
|
1932
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
1933
|
+
pulumi.set(self, "ignore_case", value)
|
1934
|
+
|
1935
|
+
@property
|
1936
|
+
@pulumi.getter
|
1937
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
1938
|
+
"""
|
1939
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1940
|
+
Examples:
|
1941
|
+
* abc matches the value abc.xyz
|
1942
|
+
"""
|
1943
|
+
return pulumi.get(self, "prefix")
|
1944
|
+
|
1945
|
+
@prefix.setter
|
1946
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
1947
|
+
pulumi.set(self, "prefix", value)
|
1948
|
+
|
1949
|
+
@property
|
1950
|
+
@pulumi.getter
|
1951
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
1952
|
+
"""
|
1953
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1954
|
+
Examples:
|
1955
|
+
* abc matches the value xyz.abc
|
1956
|
+
"""
|
1957
|
+
return pulumi.get(self, "suffix")
|
1958
|
+
|
1959
|
+
@suffix.setter
|
1960
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
1961
|
+
pulumi.set(self, "suffix", value)
|
1962
|
+
|
1963
|
+
|
1964
|
+
if not MYPY:
|
1965
|
+
class AuthzPolicyHttpRuleToOperationHostArgsDict(TypedDict):
|
1966
|
+
contains: NotRequired[pulumi.Input[str]]
|
1967
|
+
"""
|
1968
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
1969
|
+
Examples:
|
1970
|
+
* abc matches the value xyz.abc.def
|
1971
|
+
"""
|
1972
|
+
exact: NotRequired[pulumi.Input[str]]
|
1973
|
+
"""
|
1974
|
+
The input string must match exactly the string specified here.
|
1975
|
+
Examples:
|
1976
|
+
* abc only matches the value abc.
|
1977
|
+
"""
|
1978
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
1979
|
+
"""
|
1980
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
1981
|
+
"""
|
1982
|
+
prefix: NotRequired[pulumi.Input[str]]
|
1983
|
+
"""
|
1984
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1985
|
+
Examples:
|
1986
|
+
* abc matches the value abc.xyz
|
1987
|
+
"""
|
1988
|
+
suffix: NotRequired[pulumi.Input[str]]
|
1989
|
+
"""
|
1990
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
1991
|
+
Examples:
|
1992
|
+
* abc matches the value xyz.abc
|
1993
|
+
"""
|
1994
|
+
elif False:
|
1995
|
+
AuthzPolicyHttpRuleToOperationHostArgsDict: TypeAlias = Mapping[str, Any]
|
1996
|
+
|
1997
|
+
@pulumi.input_type
|
1998
|
+
class AuthzPolicyHttpRuleToOperationHostArgs:
|
1999
|
+
def __init__(__self__, *,
|
2000
|
+
contains: Optional[pulumi.Input[str]] = None,
|
2001
|
+
exact: Optional[pulumi.Input[str]] = None,
|
2002
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
2003
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
2004
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
2005
|
+
"""
|
2006
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
2007
|
+
Examples:
|
2008
|
+
* abc matches the value xyz.abc.def
|
2009
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
2010
|
+
Examples:
|
2011
|
+
* abc only matches the value abc.
|
2012
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
2013
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2014
|
+
Examples:
|
2015
|
+
* abc matches the value abc.xyz
|
2016
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2017
|
+
Examples:
|
2018
|
+
* abc matches the value xyz.abc
|
2019
|
+
"""
|
2020
|
+
if contains is not None:
|
2021
|
+
pulumi.set(__self__, "contains", contains)
|
2022
|
+
if exact is not None:
|
2023
|
+
pulumi.set(__self__, "exact", exact)
|
2024
|
+
if ignore_case is not None:
|
2025
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
2026
|
+
if prefix is not None:
|
2027
|
+
pulumi.set(__self__, "prefix", prefix)
|
2028
|
+
if suffix is not None:
|
2029
|
+
pulumi.set(__self__, "suffix", suffix)
|
2030
|
+
|
2031
|
+
@property
|
2032
|
+
@pulumi.getter
|
2033
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
2034
|
+
"""
|
2035
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
2036
|
+
Examples:
|
2037
|
+
* abc matches the value xyz.abc.def
|
2038
|
+
"""
|
2039
|
+
return pulumi.get(self, "contains")
|
2040
|
+
|
2041
|
+
@contains.setter
|
2042
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
2043
|
+
pulumi.set(self, "contains", value)
|
2044
|
+
|
2045
|
+
@property
|
2046
|
+
@pulumi.getter
|
2047
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
2048
|
+
"""
|
2049
|
+
The input string must match exactly the string specified here.
|
2050
|
+
Examples:
|
2051
|
+
* abc only matches the value abc.
|
2052
|
+
"""
|
2053
|
+
return pulumi.get(self, "exact")
|
2054
|
+
|
2055
|
+
@exact.setter
|
2056
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
2057
|
+
pulumi.set(self, "exact", value)
|
2058
|
+
|
2059
|
+
@property
|
2060
|
+
@pulumi.getter(name="ignoreCase")
|
2061
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
2062
|
+
"""
|
2063
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
2064
|
+
"""
|
2065
|
+
return pulumi.get(self, "ignore_case")
|
2066
|
+
|
2067
|
+
@ignore_case.setter
|
2068
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
2069
|
+
pulumi.set(self, "ignore_case", value)
|
2070
|
+
|
2071
|
+
@property
|
2072
|
+
@pulumi.getter
|
2073
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
2074
|
+
"""
|
2075
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2076
|
+
Examples:
|
2077
|
+
* abc matches the value abc.xyz
|
2078
|
+
"""
|
2079
|
+
return pulumi.get(self, "prefix")
|
2080
|
+
|
2081
|
+
@prefix.setter
|
2082
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
2083
|
+
pulumi.set(self, "prefix", value)
|
2084
|
+
|
2085
|
+
@property
|
2086
|
+
@pulumi.getter
|
2087
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
2088
|
+
"""
|
2089
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2090
|
+
Examples:
|
2091
|
+
* abc matches the value xyz.abc
|
2092
|
+
"""
|
2093
|
+
return pulumi.get(self, "suffix")
|
2094
|
+
|
2095
|
+
@suffix.setter
|
2096
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
2097
|
+
pulumi.set(self, "suffix", value)
|
2098
|
+
|
2099
|
+
|
2100
|
+
if not MYPY:
|
2101
|
+
class AuthzPolicyHttpRuleToOperationPathArgsDict(TypedDict):
|
2102
|
+
contains: NotRequired[pulumi.Input[str]]
|
2103
|
+
"""
|
2104
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
2105
|
+
Examples:
|
2106
|
+
* abc matches the value xyz.abc.def
|
2107
|
+
"""
|
2108
|
+
exact: NotRequired[pulumi.Input[str]]
|
2109
|
+
"""
|
2110
|
+
The input string must match exactly the string specified here.
|
2111
|
+
Examples:
|
2112
|
+
* abc only matches the value abc.
|
2113
|
+
"""
|
2114
|
+
ignore_case: NotRequired[pulumi.Input[bool]]
|
2115
|
+
"""
|
2116
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
2117
|
+
"""
|
2118
|
+
prefix: NotRequired[pulumi.Input[str]]
|
2119
|
+
"""
|
2120
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2121
|
+
Examples:
|
2122
|
+
* abc matches the value abc.xyz
|
2123
|
+
"""
|
2124
|
+
suffix: NotRequired[pulumi.Input[str]]
|
2125
|
+
"""
|
2126
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2127
|
+
Examples:
|
2128
|
+
* abc matches the value xyz.abc
|
2129
|
+
"""
|
2130
|
+
elif False:
|
2131
|
+
AuthzPolicyHttpRuleToOperationPathArgsDict: TypeAlias = Mapping[str, Any]
|
2132
|
+
|
2133
|
+
@pulumi.input_type
|
2134
|
+
class AuthzPolicyHttpRuleToOperationPathArgs:
|
2135
|
+
def __init__(__self__, *,
|
2136
|
+
contains: Optional[pulumi.Input[str]] = None,
|
2137
|
+
exact: Optional[pulumi.Input[str]] = None,
|
2138
|
+
ignore_case: Optional[pulumi.Input[bool]] = None,
|
2139
|
+
prefix: Optional[pulumi.Input[str]] = None,
|
2140
|
+
suffix: Optional[pulumi.Input[str]] = None):
|
2141
|
+
"""
|
2142
|
+
:param pulumi.Input[str] contains: The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
2143
|
+
Examples:
|
2144
|
+
* abc matches the value xyz.abc.def
|
2145
|
+
:param pulumi.Input[str] exact: The input string must match exactly the string specified here.
|
2146
|
+
Examples:
|
2147
|
+
* abc only matches the value abc.
|
2148
|
+
:param pulumi.Input[bool] ignore_case: If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
2149
|
+
:param pulumi.Input[str] prefix: The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2150
|
+
Examples:
|
2151
|
+
* abc matches the value abc.xyz
|
2152
|
+
:param pulumi.Input[str] suffix: The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2153
|
+
Examples:
|
2154
|
+
* abc matches the value xyz.abc
|
2155
|
+
"""
|
2156
|
+
if contains is not None:
|
2157
|
+
pulumi.set(__self__, "contains", contains)
|
2158
|
+
if exact is not None:
|
2159
|
+
pulumi.set(__self__, "exact", exact)
|
2160
|
+
if ignore_case is not None:
|
2161
|
+
pulumi.set(__self__, "ignore_case", ignore_case)
|
2162
|
+
if prefix is not None:
|
2163
|
+
pulumi.set(__self__, "prefix", prefix)
|
2164
|
+
if suffix is not None:
|
2165
|
+
pulumi.set(__self__, "suffix", suffix)
|
2166
|
+
|
2167
|
+
@property
|
2168
|
+
@pulumi.getter
|
2169
|
+
def contains(self) -> Optional[pulumi.Input[str]]:
|
2170
|
+
"""
|
2171
|
+
The input string must have the substring specified here. Note: empty contains match is not allowed, please use regex instead.
|
2172
|
+
Examples:
|
2173
|
+
* abc matches the value xyz.abc.def
|
2174
|
+
"""
|
2175
|
+
return pulumi.get(self, "contains")
|
2176
|
+
|
2177
|
+
@contains.setter
|
2178
|
+
def contains(self, value: Optional[pulumi.Input[str]]):
|
2179
|
+
pulumi.set(self, "contains", value)
|
2180
|
+
|
2181
|
+
@property
|
2182
|
+
@pulumi.getter
|
2183
|
+
def exact(self) -> Optional[pulumi.Input[str]]:
|
2184
|
+
"""
|
2185
|
+
The input string must match exactly the string specified here.
|
2186
|
+
Examples:
|
2187
|
+
* abc only matches the value abc.
|
2188
|
+
"""
|
2189
|
+
return pulumi.get(self, "exact")
|
2190
|
+
|
2191
|
+
@exact.setter
|
2192
|
+
def exact(self, value: Optional[pulumi.Input[str]]):
|
2193
|
+
pulumi.set(self, "exact", value)
|
2194
|
+
|
2195
|
+
@property
|
2196
|
+
@pulumi.getter(name="ignoreCase")
|
2197
|
+
def ignore_case(self) -> Optional[pulumi.Input[bool]]:
|
2198
|
+
"""
|
2199
|
+
If true, indicates the exact/prefix/suffix/contains matching should be case insensitive. For example, the matcher data will match both input string Data and data if set to true.
|
2200
|
+
"""
|
2201
|
+
return pulumi.get(self, "ignore_case")
|
2202
|
+
|
2203
|
+
@ignore_case.setter
|
2204
|
+
def ignore_case(self, value: Optional[pulumi.Input[bool]]):
|
2205
|
+
pulumi.set(self, "ignore_case", value)
|
2206
|
+
|
2207
|
+
@property
|
2208
|
+
@pulumi.getter
|
2209
|
+
def prefix(self) -> Optional[pulumi.Input[str]]:
|
2210
|
+
"""
|
2211
|
+
The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2212
|
+
Examples:
|
2213
|
+
* abc matches the value abc.xyz
|
2214
|
+
"""
|
2215
|
+
return pulumi.get(self, "prefix")
|
2216
|
+
|
2217
|
+
@prefix.setter
|
2218
|
+
def prefix(self, value: Optional[pulumi.Input[str]]):
|
2219
|
+
pulumi.set(self, "prefix", value)
|
2220
|
+
|
2221
|
+
@property
|
2222
|
+
@pulumi.getter
|
2223
|
+
def suffix(self) -> Optional[pulumi.Input[str]]:
|
2224
|
+
"""
|
2225
|
+
The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.
|
2226
|
+
Examples:
|
2227
|
+
* abc matches the value xyz.abc
|
2228
|
+
"""
|
2229
|
+
return pulumi.get(self, "suffix")
|
2230
|
+
|
2231
|
+
@suffix.setter
|
2232
|
+
def suffix(self, value: Optional[pulumi.Input[str]]):
|
2233
|
+
pulumi.set(self, "suffix", value)
|
2234
|
+
|
2235
|
+
|
2236
|
+
if not MYPY:
|
2237
|
+
class AuthzPolicyTargetArgsDict(TypedDict):
|
2238
|
+
load_balancing_scheme: pulumi.Input[str]
|
2239
|
+
"""
|
2240
|
+
All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme.
|
2241
|
+
For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).
|
2242
|
+
Possible values are: `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`, `INTERNAL_SELF_MANAGED`.
|
2243
|
+
"""
|
2244
|
+
resources: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
2245
|
+
"""
|
2246
|
+
A list of references to the Forwarding Rules on which this policy will be applied.
|
2247
|
+
|
2248
|
+
- - -
|
2249
|
+
"""
|
2250
|
+
elif False:
|
2251
|
+
AuthzPolicyTargetArgsDict: TypeAlias = Mapping[str, Any]
|
2252
|
+
|
2253
|
+
@pulumi.input_type
|
2254
|
+
class AuthzPolicyTargetArgs:
|
2255
|
+
def __init__(__self__, *,
|
2256
|
+
load_balancing_scheme: pulumi.Input[str],
|
2257
|
+
resources: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
2258
|
+
"""
|
2259
|
+
:param pulumi.Input[str] load_balancing_scheme: All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme.
|
2260
|
+
For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).
|
2261
|
+
Possible values are: `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`, `INTERNAL_SELF_MANAGED`.
|
2262
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] resources: A list of references to the Forwarding Rules on which this policy will be applied.
|
2263
|
+
|
2264
|
+
- - -
|
2265
|
+
"""
|
2266
|
+
pulumi.set(__self__, "load_balancing_scheme", load_balancing_scheme)
|
2267
|
+
if resources is not None:
|
2268
|
+
pulumi.set(__self__, "resources", resources)
|
2269
|
+
|
2270
|
+
@property
|
2271
|
+
@pulumi.getter(name="loadBalancingScheme")
|
2272
|
+
def load_balancing_scheme(self) -> pulumi.Input[str]:
|
2273
|
+
"""
|
2274
|
+
All gateways and forwarding rules referenced by this policy and extensions must share the same load balancing scheme.
|
2275
|
+
For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service).
|
2276
|
+
Possible values are: `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`, `INTERNAL_SELF_MANAGED`.
|
2277
|
+
"""
|
2278
|
+
return pulumi.get(self, "load_balancing_scheme")
|
2279
|
+
|
2280
|
+
@load_balancing_scheme.setter
|
2281
|
+
def load_balancing_scheme(self, value: pulumi.Input[str]):
|
2282
|
+
pulumi.set(self, "load_balancing_scheme", value)
|
2283
|
+
|
2284
|
+
@property
|
2285
|
+
@pulumi.getter
|
2286
|
+
def resources(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
2287
|
+
"""
|
2288
|
+
A list of references to the Forwarding Rules on which this policy will be applied.
|
2289
|
+
|
2290
|
+
- - -
|
2291
|
+
"""
|
2292
|
+
return pulumi.get(self, "resources")
|
2293
|
+
|
2294
|
+
@resources.setter
|
2295
|
+
def resources(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
2296
|
+
pulumi.set(self, "resources", value)
|
2297
|
+
|
2298
|
+
|
427
2299
|
if not MYPY:
|
428
2300
|
class ClientTlsPolicyClientCertificateArgsDict(TypedDict):
|
429
2301
|
certificate_provider_instance: NotRequired[pulumi.Input['ClientTlsPolicyClientCertificateCertificateProviderInstanceArgsDict']]
|
@@ -664,6 +2536,152 @@ class ClientTlsPolicyServerValidationCaGrpcEndpointArgs:
|
|
664
2536
|
pulumi.set(self, "target_uri", value)
|
665
2537
|
|
666
2538
|
|
2539
|
+
if not MYPY:
|
2540
|
+
class InterceptDeploymentGroupConnectedEndpointGroupArgsDict(TypedDict):
|
2541
|
+
name: NotRequired[pulumi.Input[str]]
|
2542
|
+
"""
|
2543
|
+
(Output)
|
2544
|
+
Output only. A connected intercept endpoint group.
|
2545
|
+
"""
|
2546
|
+
elif False:
|
2547
|
+
InterceptDeploymentGroupConnectedEndpointGroupArgsDict: TypeAlias = Mapping[str, Any]
|
2548
|
+
|
2549
|
+
@pulumi.input_type
|
2550
|
+
class InterceptDeploymentGroupConnectedEndpointGroupArgs:
|
2551
|
+
def __init__(__self__, *,
|
2552
|
+
name: Optional[pulumi.Input[str]] = None):
|
2553
|
+
"""
|
2554
|
+
:param pulumi.Input[str] name: (Output)
|
2555
|
+
Output only. A connected intercept endpoint group.
|
2556
|
+
"""
|
2557
|
+
if name is not None:
|
2558
|
+
pulumi.set(__self__, "name", name)
|
2559
|
+
|
2560
|
+
@property
|
2561
|
+
@pulumi.getter
|
2562
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
2563
|
+
"""
|
2564
|
+
(Output)
|
2565
|
+
Output only. A connected intercept endpoint group.
|
2566
|
+
"""
|
2567
|
+
return pulumi.get(self, "name")
|
2568
|
+
|
2569
|
+
@name.setter
|
2570
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
2571
|
+
pulumi.set(self, "name", value)
|
2572
|
+
|
2573
|
+
|
2574
|
+
if not MYPY:
|
2575
|
+
class MirroringDeploymentGroupConnectedEndpointGroupArgsDict(TypedDict):
|
2576
|
+
name: NotRequired[pulumi.Input[str]]
|
2577
|
+
"""
|
2578
|
+
(Output)
|
2579
|
+
Output only. A connected mirroring endpoint group.
|
2580
|
+
"""
|
2581
|
+
elif False:
|
2582
|
+
MirroringDeploymentGroupConnectedEndpointGroupArgsDict: TypeAlias = Mapping[str, Any]
|
2583
|
+
|
2584
|
+
@pulumi.input_type
|
2585
|
+
class MirroringDeploymentGroupConnectedEndpointGroupArgs:
|
2586
|
+
def __init__(__self__, *,
|
2587
|
+
name: Optional[pulumi.Input[str]] = None):
|
2588
|
+
"""
|
2589
|
+
:param pulumi.Input[str] name: (Output)
|
2590
|
+
Output only. A connected mirroring endpoint group.
|
2591
|
+
"""
|
2592
|
+
if name is not None:
|
2593
|
+
pulumi.set(__self__, "name", name)
|
2594
|
+
|
2595
|
+
@property
|
2596
|
+
@pulumi.getter
|
2597
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
2598
|
+
"""
|
2599
|
+
(Output)
|
2600
|
+
Output only. A connected mirroring endpoint group.
|
2601
|
+
"""
|
2602
|
+
return pulumi.get(self, "name")
|
2603
|
+
|
2604
|
+
@name.setter
|
2605
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
2606
|
+
pulumi.set(self, "name", value)
|
2607
|
+
|
2608
|
+
|
2609
|
+
if not MYPY:
|
2610
|
+
class MirroringEndpointGroupAssociationLocationsDetailArgsDict(TypedDict):
|
2611
|
+
location: NotRequired[pulumi.Input[str]]
|
2612
|
+
"""
|
2613
|
+
Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringEndpointGroupAssociation`.
|
2614
|
+
|
2615
|
+
|
2616
|
+
- - -
|
2617
|
+
"""
|
2618
|
+
state: NotRequired[pulumi.Input[str]]
|
2619
|
+
"""
|
2620
|
+
(Output)
|
2621
|
+
Output only. The association state in this location.
|
2622
|
+
Possible values:
|
2623
|
+
STATE_UNSPECIFIED
|
2624
|
+
ACTIVE
|
2625
|
+
OUT_OF_SYNC
|
2626
|
+
"""
|
2627
|
+
elif False:
|
2628
|
+
MirroringEndpointGroupAssociationLocationsDetailArgsDict: TypeAlias = Mapping[str, Any]
|
2629
|
+
|
2630
|
+
@pulumi.input_type
|
2631
|
+
class MirroringEndpointGroupAssociationLocationsDetailArgs:
|
2632
|
+
def __init__(__self__, *,
|
2633
|
+
location: Optional[pulumi.Input[str]] = None,
|
2634
|
+
state: Optional[pulumi.Input[str]] = None):
|
2635
|
+
"""
|
2636
|
+
:param pulumi.Input[str] location: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringEndpointGroupAssociation`.
|
2637
|
+
|
2638
|
+
|
2639
|
+
- - -
|
2640
|
+
:param pulumi.Input[str] state: (Output)
|
2641
|
+
Output only. The association state in this location.
|
2642
|
+
Possible values:
|
2643
|
+
STATE_UNSPECIFIED
|
2644
|
+
ACTIVE
|
2645
|
+
OUT_OF_SYNC
|
2646
|
+
"""
|
2647
|
+
if location is not None:
|
2648
|
+
pulumi.set(__self__, "location", location)
|
2649
|
+
if state is not None:
|
2650
|
+
pulumi.set(__self__, "state", state)
|
2651
|
+
|
2652
|
+
@property
|
2653
|
+
@pulumi.getter
|
2654
|
+
def location(self) -> Optional[pulumi.Input[str]]:
|
2655
|
+
"""
|
2656
|
+
Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. See documentation for resource type `networksecurity.googleapis.com/MirroringEndpointGroupAssociation`.
|
2657
|
+
|
2658
|
+
|
2659
|
+
- - -
|
2660
|
+
"""
|
2661
|
+
return pulumi.get(self, "location")
|
2662
|
+
|
2663
|
+
@location.setter
|
2664
|
+
def location(self, value: Optional[pulumi.Input[str]]):
|
2665
|
+
pulumi.set(self, "location", value)
|
2666
|
+
|
2667
|
+
@property
|
2668
|
+
@pulumi.getter
|
2669
|
+
def state(self) -> Optional[pulumi.Input[str]]:
|
2670
|
+
"""
|
2671
|
+
(Output)
|
2672
|
+
Output only. The association state in this location.
|
2673
|
+
Possible values:
|
2674
|
+
STATE_UNSPECIFIED
|
2675
|
+
ACTIVE
|
2676
|
+
OUT_OF_SYNC
|
2677
|
+
"""
|
2678
|
+
return pulumi.get(self, "state")
|
2679
|
+
|
2680
|
+
@state.setter
|
2681
|
+
def state(self, value: Optional[pulumi.Input[str]]):
|
2682
|
+
pulumi.set(self, "state", value)
|
2683
|
+
|
2684
|
+
|
667
2685
|
if not MYPY:
|
668
2686
|
class SecurityProfileThreatPreventionProfileArgsDict(TypedDict):
|
669
2687
|
severity_overrides: NotRequired[pulumi.Input[Sequence[pulumi.Input['SecurityProfileThreatPreventionProfileSeverityOverrideArgsDict']]]]
|