pulumi-cloudflare 6.10.1__py3-none-any.whl → 6.11.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_cloudflare/__init__.py +31 -0
- pulumi_cloudflare/_inputs.py +2127 -309
- pulumi_cloudflare/access_application.py +7 -7
- pulumi_cloudflare/access_identity_provider.py +60 -0
- pulumi_cloudflare/access_mutual_tls_hostname_settings.py +26 -0
- pulumi_cloudflare/access_organization.py +56 -0
- pulumi_cloudflare/access_policy.py +96 -0
- pulumi_cloudflare/account.py +47 -0
- pulumi_cloudflare/account_dns_settings.py +62 -0
- pulumi_cloudflare/account_subscription.py +36 -0
- pulumi_cloudflare/account_token.py +90 -0
- pulumi_cloudflare/api_shield.py +0 -68
- pulumi_cloudflare/api_token.py +88 -0
- pulumi_cloudflare/authenticated_origin_pulls.py +26 -0
- pulumi_cloudflare/content_scanning.py +253 -0
- pulumi_cloudflare/custom_hostname.py +144 -0
- pulumi_cloudflare/custom_pages.py +7 -7
- pulumi_cloudflare/device_managed_networks.py +28 -0
- pulumi_cloudflare/device_posture_integration.py +34 -0
- pulumi_cloudflare/device_posture_rule.py +46 -0
- pulumi_cloudflare/dlp_custom_profile.py +57 -7
- pulumi_cloudflare/dns_firewall.py +50 -0
- pulumi_cloudflare/dns_record.py +38 -0
- pulumi_cloudflare/get_account.py +15 -1
- pulumi_cloudflare/get_api_shield.py +5 -27
- pulumi_cloudflare/get_content_scanning.py +136 -0
- pulumi_cloudflare/get_custom_pages.py +3 -3
- pulumi_cloudflare/get_list.py +2 -2
- pulumi_cloudflare/get_magic_transit_connector.py +12 -1
- pulumi_cloudflare/get_notification_policy.py +3 -3
- pulumi_cloudflare/get_notification_policy_webhooks.py +2 -2
- pulumi_cloudflare/get_organization.py +171 -0
- pulumi_cloudflare/get_organization_profile.py +154 -0
- pulumi_cloudflare/get_organizations.py +248 -0
- pulumi_cloudflare/get_pages_project.py +77 -7
- pulumi_cloudflare/get_worker.py +15 -1
- pulumi_cloudflare/get_zero_trust_access_application.py +1 -1
- pulumi_cloudflare/get_zero_trust_dex_test.py +7 -0
- pulumi_cloudflare/get_zero_trust_gateway_policy.py +1 -1
- pulumi_cloudflare/get_zero_trust_tunnel_cloudflared_config.py +18 -4
- pulumi_cloudflare/healthcheck.py +84 -0
- pulumi_cloudflare/hyperdrive_config.py +52 -0
- pulumi_cloudflare/keyless_certificate.py +34 -0
- pulumi_cloudflare/list_item.py +16 -0
- pulumi_cloudflare/load_balancer.py +282 -0
- pulumi_cloudflare/logpush_job.py +80 -0
- pulumi_cloudflare/magic_transit_site_acl.py +56 -0
- pulumi_cloudflare/magic_transit_site_lan.py +82 -0
- pulumi_cloudflare/magic_transit_site_wan.py +36 -0
- pulumi_cloudflare/magic_wan_static_route.py +34 -0
- pulumi_cloudflare/notification_policy.py +145 -7
- pulumi_cloudflare/organization.py +297 -0
- pulumi_cloudflare/organization_profile.py +340 -0
- pulumi_cloudflare/outputs.py +3322 -642
- pulumi_cloudflare/page_rule.py +34 -0
- pulumi_cloudflare/pages_project.py +571 -30
- pulumi_cloudflare/pulumi-plugin.json +1 -1
- pulumi_cloudflare/queue_consumer.py +38 -0
- pulumi_cloudflare/r2_bucket_cors.py +38 -0
- pulumi_cloudflare/r2_bucket_event_notification.py +19 -18
- pulumi_cloudflare/r2_bucket_lifecycle.py +70 -0
- pulumi_cloudflare/record.py +38 -0
- pulumi_cloudflare/snippet.py +42 -0
- pulumi_cloudflare/snippet_rules.py +28 -0
- pulumi_cloudflare/static_route.py +34 -0
- pulumi_cloudflare/teams_account.py +148 -0
- pulumi_cloudflare/teams_rule.py +259 -7
- pulumi_cloudflare/tunnel_config.py +50 -3
- pulumi_cloudflare/worker.py +88 -0
- pulumi_cloudflare/worker_script.py +158 -2
- pulumi_cloudflare/worker_version.py +112 -0
- pulumi_cloudflare/workers_deployment.py +34 -0
- pulumi_cloudflare/workers_script.py +158 -2
- pulumi_cloudflare/zero_trust_access_application.py +7 -7
- pulumi_cloudflare/zero_trust_access_identity_provider.py +60 -0
- pulumi_cloudflare/zero_trust_access_mtls_hostname_settings.py +26 -0
- pulumi_cloudflare/zero_trust_access_policy.py +96 -0
- pulumi_cloudflare/zero_trust_device_managed_networks.py +28 -0
- pulumi_cloudflare/zero_trust_device_posture_integration.py +34 -0
- pulumi_cloudflare/zero_trust_device_posture_rule.py +46 -0
- pulumi_cloudflare/zero_trust_dex_test.py +63 -3
- pulumi_cloudflare/zero_trust_dlp_custom_entry.py +6 -7
- pulumi_cloudflare/zero_trust_dlp_custom_profile.py +57 -7
- pulumi_cloudflare/zero_trust_dlp_entry.py +6 -7
- pulumi_cloudflare/zero_trust_dlp_predefined_entry.py +1 -1
- pulumi_cloudflare/zero_trust_gateway_policy.py +259 -7
- pulumi_cloudflare/zero_trust_gateway_settings.py +148 -0
- pulumi_cloudflare/zero_trust_organization.py +56 -0
- pulumi_cloudflare/zero_trust_tunnel_cloudflared_config.py +50 -3
- pulumi_cloudflare/zone_cache_variants.py +108 -0
- pulumi_cloudflare/zone_dns_settings.py +60 -0
- pulumi_cloudflare/zone_subscription.py +36 -0
- {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/METADATA +1 -1
- {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/RECORD +96 -89
- {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/WHEEL +0 -0
- {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/top_level.txt +0 -0
|
@@ -42,7 +42,7 @@ class ZeroTrustGatewayPolicyArgs:
|
|
|
42
42
|
:param pulumi.Input[_builtins.str] description: Specify the rule description.
|
|
43
43
|
:param pulumi.Input[_builtins.bool] enabled: Specify whether the rule is enabled.
|
|
44
44
|
:param pulumi.Input['ZeroTrustGatewayPolicyExpirationArgs'] expiration: Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's `schedule` configuration, if any. This does not apply to HTTP or network policies. Settable only for `dns` rules.
|
|
45
|
-
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
45
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
46
46
|
:param pulumi.Input['ZeroTrustGatewayPolicyScheduleArgs'] schedule: Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules.
|
|
47
47
|
"""
|
|
48
48
|
pulumi.set(__self__, "account_id", account_id)
|
|
@@ -152,7 +152,7 @@ class ZeroTrustGatewayPolicyArgs:
|
|
|
152
152
|
@pulumi.getter
|
|
153
153
|
def filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
154
154
|
"""
|
|
155
|
-
Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
155
|
+
Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
156
156
|
"""
|
|
157
157
|
return pulumi.get(self, "filters")
|
|
158
158
|
|
|
@@ -241,7 +241,7 @@ class _ZeroTrustGatewayPolicyState:
|
|
|
241
241
|
:param pulumi.Input[_builtins.str] description: Specify the rule description.
|
|
242
242
|
:param pulumi.Input[_builtins.bool] enabled: Specify whether the rule is enabled.
|
|
243
243
|
:param pulumi.Input['ZeroTrustGatewayPolicyExpirationArgs'] expiration: Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's `schedule` configuration, if any. This does not apply to HTTP or network policies. Settable only for `dns` rules.
|
|
244
|
-
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
244
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
245
245
|
:param pulumi.Input[_builtins.str] name: Specify the rule name.
|
|
246
246
|
:param pulumi.Input[_builtins.bool] read_only: Indicate that this rule is shared via the Orgs API and read only.
|
|
247
247
|
:param pulumi.Input['ZeroTrustGatewayPolicyScheduleArgs'] schedule: Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules.
|
|
@@ -385,7 +385,7 @@ class _ZeroTrustGatewayPolicyState:
|
|
|
385
385
|
@pulumi.getter
|
|
386
386
|
def filters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
387
387
|
"""
|
|
388
|
-
Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
388
|
+
Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
389
389
|
"""
|
|
390
390
|
return pulumi.get(self, "filters")
|
|
391
391
|
|
|
@@ -546,6 +546,132 @@ class ZeroTrustGatewayPolicy(pulumi.CustomResource):
|
|
|
546
546
|
"""
|
|
547
547
|
## Example Usage
|
|
548
548
|
|
|
549
|
+
```python
|
|
550
|
+
import pulumi
|
|
551
|
+
import pulumi_cloudflare as cloudflare
|
|
552
|
+
|
|
553
|
+
example_zero_trust_gateway_policy = cloudflare.ZeroTrustGatewayPolicy("example_zero_trust_gateway_policy",
|
|
554
|
+
account_id="699d98642c564d2e855e9661899b7252",
|
|
555
|
+
action="allow",
|
|
556
|
+
name="block bad websites",
|
|
557
|
+
description="Block bad websites based on their host name.",
|
|
558
|
+
device_posture="any(device_posture.checks.passed[*] in {\\"1308749e-fcfb-4ebc-b051-fe022b632644\\"})",
|
|
559
|
+
enabled=True,
|
|
560
|
+
expiration={
|
|
561
|
+
"expires_at": "2014-01-01T05:20:20Z",
|
|
562
|
+
"duration": 10,
|
|
563
|
+
},
|
|
564
|
+
filters=["http"],
|
|
565
|
+
identity="any(identity.groups.name[*] in {\\"finance\\"})",
|
|
566
|
+
precedence=0,
|
|
567
|
+
rule_settings={
|
|
568
|
+
"add_headers": {
|
|
569
|
+
"My-Next-Header": [
|
|
570
|
+
"foo",
|
|
571
|
+
"bar",
|
|
572
|
+
],
|
|
573
|
+
"X-Custom-Header-Name": ["somecustomvalue"],
|
|
574
|
+
},
|
|
575
|
+
"allow_child_bypass": False,
|
|
576
|
+
"audit_ssh": {
|
|
577
|
+
"command_logging": False,
|
|
578
|
+
},
|
|
579
|
+
"biso_admin_controls": {
|
|
580
|
+
"copy": "remote_only",
|
|
581
|
+
"dcp": True,
|
|
582
|
+
"dd": True,
|
|
583
|
+
"dk": True,
|
|
584
|
+
"download": "enabled",
|
|
585
|
+
"dp": False,
|
|
586
|
+
"du": True,
|
|
587
|
+
"keyboard": "enabled",
|
|
588
|
+
"paste": "enabled",
|
|
589
|
+
"printing": "enabled",
|
|
590
|
+
"upload": "enabled",
|
|
591
|
+
"version": "v1",
|
|
592
|
+
},
|
|
593
|
+
"block_page": {
|
|
594
|
+
"target_uri": "https://example.com",
|
|
595
|
+
"include_context": True,
|
|
596
|
+
},
|
|
597
|
+
"block_page_enabled": True,
|
|
598
|
+
"block_reason": "This website is a security risk",
|
|
599
|
+
"bypass_parent_rule": False,
|
|
600
|
+
"check_session": {
|
|
601
|
+
"duration": "300s",
|
|
602
|
+
"enforce": True,
|
|
603
|
+
},
|
|
604
|
+
"dns_resolvers": {
|
|
605
|
+
"ipv4s": [{
|
|
606
|
+
"ip": "2.2.2.2",
|
|
607
|
+
"port": 5053,
|
|
608
|
+
"route_through_private_network": True,
|
|
609
|
+
"vnet_id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
|
|
610
|
+
}],
|
|
611
|
+
"ipv6s": [{
|
|
612
|
+
"ip": "2001:DB8::",
|
|
613
|
+
"port": 5053,
|
|
614
|
+
"route_through_private_network": True,
|
|
615
|
+
"vnet_id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
|
|
616
|
+
}],
|
|
617
|
+
},
|
|
618
|
+
"egress": {
|
|
619
|
+
"ipv4": "192.0.2.2",
|
|
620
|
+
"ipv4_fallback": "192.0.2.3",
|
|
621
|
+
"ipv6": "2001:DB8::/64",
|
|
622
|
+
},
|
|
623
|
+
"ignore_cname_category_matches": True,
|
|
624
|
+
"insecure_disable_dnssec_validation": False,
|
|
625
|
+
"ip_categories": True,
|
|
626
|
+
"ip_indicator_feeds": True,
|
|
627
|
+
"l4override": {
|
|
628
|
+
"ip": "1.1.1.1",
|
|
629
|
+
"port": 0,
|
|
630
|
+
},
|
|
631
|
+
"notification_settings": {
|
|
632
|
+
"enabled": True,
|
|
633
|
+
"include_context": True,
|
|
634
|
+
"msg": "msg",
|
|
635
|
+
"support_url": "support_url",
|
|
636
|
+
},
|
|
637
|
+
"override_host": "example.com",
|
|
638
|
+
"override_ips": [
|
|
639
|
+
"1.1.1.1",
|
|
640
|
+
"2.2.2.2",
|
|
641
|
+
],
|
|
642
|
+
"payload_log": {
|
|
643
|
+
"enabled": True,
|
|
644
|
+
},
|
|
645
|
+
"quarantine": {
|
|
646
|
+
"file_types": ["exe"],
|
|
647
|
+
},
|
|
648
|
+
"redirect": {
|
|
649
|
+
"target_uri": "https://example.com",
|
|
650
|
+
"include_context": True,
|
|
651
|
+
"preserve_path_and_query": True,
|
|
652
|
+
},
|
|
653
|
+
"resolve_dns_internally": {
|
|
654
|
+
"fallback": "none",
|
|
655
|
+
"view_id": "view_id",
|
|
656
|
+
},
|
|
657
|
+
"resolve_dns_through_cloudflare": True,
|
|
658
|
+
"untrusted_cert": {
|
|
659
|
+
"action": "error",
|
|
660
|
+
},
|
|
661
|
+
},
|
|
662
|
+
schedule={
|
|
663
|
+
"fri": "08:00-12:30,13:30-17:00",
|
|
664
|
+
"mon": "08:00-12:30,13:30-17:00",
|
|
665
|
+
"sat": "08:00-12:30,13:30-17:00",
|
|
666
|
+
"sun": "08:00-12:30,13:30-17:00",
|
|
667
|
+
"thu": "08:00-12:30,13:30-17:00",
|
|
668
|
+
"time_zone": "America/New York",
|
|
669
|
+
"tue": "08:00-12:30,13:30-17:00",
|
|
670
|
+
"wed": "08:00-12:30,13:30-17:00",
|
|
671
|
+
},
|
|
672
|
+
traffic="http.request.uri matches \\".*a/partial/uri.*\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10")
|
|
673
|
+
```
|
|
674
|
+
|
|
549
675
|
## Import
|
|
550
676
|
|
|
551
677
|
```sh
|
|
@@ -559,7 +685,7 @@ class ZeroTrustGatewayPolicy(pulumi.CustomResource):
|
|
|
559
685
|
:param pulumi.Input[_builtins.str] description: Specify the rule description.
|
|
560
686
|
:param pulumi.Input[_builtins.bool] enabled: Specify whether the rule is enabled.
|
|
561
687
|
:param pulumi.Input[Union['ZeroTrustGatewayPolicyExpirationArgs', 'ZeroTrustGatewayPolicyExpirationArgsDict']] expiration: Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's `schedule` configuration, if any. This does not apply to HTTP or network policies. Settable only for `dns` rules.
|
|
562
|
-
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
688
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
563
689
|
:param pulumi.Input[_builtins.str] name: Specify the rule name.
|
|
564
690
|
:param pulumi.Input[Union['ZeroTrustGatewayPolicyScheduleArgs', 'ZeroTrustGatewayPolicyScheduleArgsDict']] schedule: Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules.
|
|
565
691
|
"""
|
|
@@ -572,6 +698,132 @@ class ZeroTrustGatewayPolicy(pulumi.CustomResource):
|
|
|
572
698
|
"""
|
|
573
699
|
## Example Usage
|
|
574
700
|
|
|
701
|
+
```python
|
|
702
|
+
import pulumi
|
|
703
|
+
import pulumi_cloudflare as cloudflare
|
|
704
|
+
|
|
705
|
+
example_zero_trust_gateway_policy = cloudflare.ZeroTrustGatewayPolicy("example_zero_trust_gateway_policy",
|
|
706
|
+
account_id="699d98642c564d2e855e9661899b7252",
|
|
707
|
+
action="allow",
|
|
708
|
+
name="block bad websites",
|
|
709
|
+
description="Block bad websites based on their host name.",
|
|
710
|
+
device_posture="any(device_posture.checks.passed[*] in {\\"1308749e-fcfb-4ebc-b051-fe022b632644\\"})",
|
|
711
|
+
enabled=True,
|
|
712
|
+
expiration={
|
|
713
|
+
"expires_at": "2014-01-01T05:20:20Z",
|
|
714
|
+
"duration": 10,
|
|
715
|
+
},
|
|
716
|
+
filters=["http"],
|
|
717
|
+
identity="any(identity.groups.name[*] in {\\"finance\\"})",
|
|
718
|
+
precedence=0,
|
|
719
|
+
rule_settings={
|
|
720
|
+
"add_headers": {
|
|
721
|
+
"My-Next-Header": [
|
|
722
|
+
"foo",
|
|
723
|
+
"bar",
|
|
724
|
+
],
|
|
725
|
+
"X-Custom-Header-Name": ["somecustomvalue"],
|
|
726
|
+
},
|
|
727
|
+
"allow_child_bypass": False,
|
|
728
|
+
"audit_ssh": {
|
|
729
|
+
"command_logging": False,
|
|
730
|
+
},
|
|
731
|
+
"biso_admin_controls": {
|
|
732
|
+
"copy": "remote_only",
|
|
733
|
+
"dcp": True,
|
|
734
|
+
"dd": True,
|
|
735
|
+
"dk": True,
|
|
736
|
+
"download": "enabled",
|
|
737
|
+
"dp": False,
|
|
738
|
+
"du": True,
|
|
739
|
+
"keyboard": "enabled",
|
|
740
|
+
"paste": "enabled",
|
|
741
|
+
"printing": "enabled",
|
|
742
|
+
"upload": "enabled",
|
|
743
|
+
"version": "v1",
|
|
744
|
+
},
|
|
745
|
+
"block_page": {
|
|
746
|
+
"target_uri": "https://example.com",
|
|
747
|
+
"include_context": True,
|
|
748
|
+
},
|
|
749
|
+
"block_page_enabled": True,
|
|
750
|
+
"block_reason": "This website is a security risk",
|
|
751
|
+
"bypass_parent_rule": False,
|
|
752
|
+
"check_session": {
|
|
753
|
+
"duration": "300s",
|
|
754
|
+
"enforce": True,
|
|
755
|
+
},
|
|
756
|
+
"dns_resolvers": {
|
|
757
|
+
"ipv4s": [{
|
|
758
|
+
"ip": "2.2.2.2",
|
|
759
|
+
"port": 5053,
|
|
760
|
+
"route_through_private_network": True,
|
|
761
|
+
"vnet_id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
|
|
762
|
+
}],
|
|
763
|
+
"ipv6s": [{
|
|
764
|
+
"ip": "2001:DB8::",
|
|
765
|
+
"port": 5053,
|
|
766
|
+
"route_through_private_network": True,
|
|
767
|
+
"vnet_id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
|
|
768
|
+
}],
|
|
769
|
+
},
|
|
770
|
+
"egress": {
|
|
771
|
+
"ipv4": "192.0.2.2",
|
|
772
|
+
"ipv4_fallback": "192.0.2.3",
|
|
773
|
+
"ipv6": "2001:DB8::/64",
|
|
774
|
+
},
|
|
775
|
+
"ignore_cname_category_matches": True,
|
|
776
|
+
"insecure_disable_dnssec_validation": False,
|
|
777
|
+
"ip_categories": True,
|
|
778
|
+
"ip_indicator_feeds": True,
|
|
779
|
+
"l4override": {
|
|
780
|
+
"ip": "1.1.1.1",
|
|
781
|
+
"port": 0,
|
|
782
|
+
},
|
|
783
|
+
"notification_settings": {
|
|
784
|
+
"enabled": True,
|
|
785
|
+
"include_context": True,
|
|
786
|
+
"msg": "msg",
|
|
787
|
+
"support_url": "support_url",
|
|
788
|
+
},
|
|
789
|
+
"override_host": "example.com",
|
|
790
|
+
"override_ips": [
|
|
791
|
+
"1.1.1.1",
|
|
792
|
+
"2.2.2.2",
|
|
793
|
+
],
|
|
794
|
+
"payload_log": {
|
|
795
|
+
"enabled": True,
|
|
796
|
+
},
|
|
797
|
+
"quarantine": {
|
|
798
|
+
"file_types": ["exe"],
|
|
799
|
+
},
|
|
800
|
+
"redirect": {
|
|
801
|
+
"target_uri": "https://example.com",
|
|
802
|
+
"include_context": True,
|
|
803
|
+
"preserve_path_and_query": True,
|
|
804
|
+
},
|
|
805
|
+
"resolve_dns_internally": {
|
|
806
|
+
"fallback": "none",
|
|
807
|
+
"view_id": "view_id",
|
|
808
|
+
},
|
|
809
|
+
"resolve_dns_through_cloudflare": True,
|
|
810
|
+
"untrusted_cert": {
|
|
811
|
+
"action": "error",
|
|
812
|
+
},
|
|
813
|
+
},
|
|
814
|
+
schedule={
|
|
815
|
+
"fri": "08:00-12:30,13:30-17:00",
|
|
816
|
+
"mon": "08:00-12:30,13:30-17:00",
|
|
817
|
+
"sat": "08:00-12:30,13:30-17:00",
|
|
818
|
+
"sun": "08:00-12:30,13:30-17:00",
|
|
819
|
+
"thu": "08:00-12:30,13:30-17:00",
|
|
820
|
+
"time_zone": "America/New York",
|
|
821
|
+
"tue": "08:00-12:30,13:30-17:00",
|
|
822
|
+
"wed": "08:00-12:30,13:30-17:00",
|
|
823
|
+
},
|
|
824
|
+
traffic="http.request.uri matches \\".*a/partial/uri.*\\" and http.request.host in $01302951-49f9-47c9-a400-0297e60b6a10")
|
|
825
|
+
```
|
|
826
|
+
|
|
575
827
|
## Import
|
|
576
828
|
|
|
577
829
|
```sh
|
|
@@ -688,7 +940,7 @@ class ZeroTrustGatewayPolicy(pulumi.CustomResource):
|
|
|
688
940
|
:param pulumi.Input[_builtins.str] description: Specify the rule description.
|
|
689
941
|
:param pulumi.Input[_builtins.bool] enabled: Specify whether the rule is enabled.
|
|
690
942
|
:param pulumi.Input[Union['ZeroTrustGatewayPolicyExpirationArgs', 'ZeroTrustGatewayPolicyExpirationArgsDict']] expiration: Defines the expiration time stamp and default duration of a DNS policy. Takes precedence over the policy's `schedule` configuration, if any. This does not apply to HTTP or network policies. Settable only for `dns` rules.
|
|
691
|
-
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
943
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] filters: Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
692
944
|
:param pulumi.Input[_builtins.str] name: Specify the rule name.
|
|
693
945
|
:param pulumi.Input[_builtins.bool] read_only: Indicate that this rule is shared via the Orgs API and read only.
|
|
694
946
|
:param pulumi.Input[Union['ZeroTrustGatewayPolicyScheduleArgs', 'ZeroTrustGatewayPolicyScheduleArgsDict']] schedule: Defines the schedule for activating DNS policies. Settable only for `dns` and `dns_resolver` rules.
|
|
@@ -784,7 +1036,7 @@ class ZeroTrustGatewayPolicy(pulumi.CustomResource):
|
|
|
784
1036
|
@pulumi.getter
|
|
785
1037
|
def filters(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
|
|
786
1038
|
"""
|
|
787
|
-
Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions.
|
|
1039
|
+
Specify the protocol or layer to evaluate the traffic, identity, and device posture expressions. Can only contain a single value.
|
|
788
1040
|
"""
|
|
789
1041
|
return pulumi.get(self, "filters")
|
|
790
1042
|
|
|
@@ -125,6 +125,80 @@ class ZeroTrustGatewaySettings(pulumi.CustomResource):
|
|
|
125
125
|
"""
|
|
126
126
|
## Example Usage
|
|
127
127
|
|
|
128
|
+
```python
|
|
129
|
+
import pulumi
|
|
130
|
+
import pulumi_cloudflare as cloudflare
|
|
131
|
+
|
|
132
|
+
example_zero_trust_gateway_settings = cloudflare.ZeroTrustGatewaySettings("example_zero_trust_gateway_settings",
|
|
133
|
+
account_id="699d98642c564d2e855e9661899b7252",
|
|
134
|
+
settings={
|
|
135
|
+
"activity_log": {
|
|
136
|
+
"enabled": True,
|
|
137
|
+
},
|
|
138
|
+
"antivirus": {
|
|
139
|
+
"enabled_download_phase": False,
|
|
140
|
+
"enabled_upload_phase": False,
|
|
141
|
+
"fail_closed": False,
|
|
142
|
+
"notification_settings": {
|
|
143
|
+
"enabled": True,
|
|
144
|
+
"include_context": True,
|
|
145
|
+
"msg": "msg",
|
|
146
|
+
"support_url": "support_url",
|
|
147
|
+
},
|
|
148
|
+
},
|
|
149
|
+
"block_page": {
|
|
150
|
+
"background_color": "background_color",
|
|
151
|
+
"enabled": True,
|
|
152
|
+
"footer_text": "--footer--",
|
|
153
|
+
"header_text": "--header--",
|
|
154
|
+
"include_context": True,
|
|
155
|
+
"logo_path": "https://logos.com/a.png",
|
|
156
|
+
"mailto_address": "admin@example.com",
|
|
157
|
+
"mailto_subject": "Blocked User Inquiry",
|
|
158
|
+
"mode": "",
|
|
159
|
+
"name": "Cloudflare",
|
|
160
|
+
"suppress_footer": False,
|
|
161
|
+
"target_uri": "https://example.com",
|
|
162
|
+
},
|
|
163
|
+
"body_scanning": {
|
|
164
|
+
"inspection_mode": "deep",
|
|
165
|
+
},
|
|
166
|
+
"browser_isolation": {
|
|
167
|
+
"non_identity_enabled": True,
|
|
168
|
+
"url_browser_isolation_enabled": True,
|
|
169
|
+
},
|
|
170
|
+
"certificate": {
|
|
171
|
+
"id": "d1b364c5-1311-466e-a194-f0e943e0799f",
|
|
172
|
+
},
|
|
173
|
+
"custom_certificate": {
|
|
174
|
+
"enabled": True,
|
|
175
|
+
"id": "d1b364c5-1311-466e-a194-f0e943e0799f",
|
|
176
|
+
},
|
|
177
|
+
"extended_email_matching": {
|
|
178
|
+
"enabled": True,
|
|
179
|
+
},
|
|
180
|
+
"fips": {
|
|
181
|
+
"tls": True,
|
|
182
|
+
},
|
|
183
|
+
"host_selector": {
|
|
184
|
+
"enabled": False,
|
|
185
|
+
},
|
|
186
|
+
"inspection": {
|
|
187
|
+
"mode": "static",
|
|
188
|
+
},
|
|
189
|
+
"protocol_detection": {
|
|
190
|
+
"enabled": True,
|
|
191
|
+
},
|
|
192
|
+
"sandbox": {
|
|
193
|
+
"enabled": True,
|
|
194
|
+
"fallback_action": "allow",
|
|
195
|
+
},
|
|
196
|
+
"tls_decrypt": {
|
|
197
|
+
"enabled": True,
|
|
198
|
+
},
|
|
199
|
+
})
|
|
200
|
+
```
|
|
201
|
+
|
|
128
202
|
## Import
|
|
129
203
|
|
|
130
204
|
```sh
|
|
@@ -144,6 +218,80 @@ class ZeroTrustGatewaySettings(pulumi.CustomResource):
|
|
|
144
218
|
"""
|
|
145
219
|
## Example Usage
|
|
146
220
|
|
|
221
|
+
```python
|
|
222
|
+
import pulumi
|
|
223
|
+
import pulumi_cloudflare as cloudflare
|
|
224
|
+
|
|
225
|
+
example_zero_trust_gateway_settings = cloudflare.ZeroTrustGatewaySettings("example_zero_trust_gateway_settings",
|
|
226
|
+
account_id="699d98642c564d2e855e9661899b7252",
|
|
227
|
+
settings={
|
|
228
|
+
"activity_log": {
|
|
229
|
+
"enabled": True,
|
|
230
|
+
},
|
|
231
|
+
"antivirus": {
|
|
232
|
+
"enabled_download_phase": False,
|
|
233
|
+
"enabled_upload_phase": False,
|
|
234
|
+
"fail_closed": False,
|
|
235
|
+
"notification_settings": {
|
|
236
|
+
"enabled": True,
|
|
237
|
+
"include_context": True,
|
|
238
|
+
"msg": "msg",
|
|
239
|
+
"support_url": "support_url",
|
|
240
|
+
},
|
|
241
|
+
},
|
|
242
|
+
"block_page": {
|
|
243
|
+
"background_color": "background_color",
|
|
244
|
+
"enabled": True,
|
|
245
|
+
"footer_text": "--footer--",
|
|
246
|
+
"header_text": "--header--",
|
|
247
|
+
"include_context": True,
|
|
248
|
+
"logo_path": "https://logos.com/a.png",
|
|
249
|
+
"mailto_address": "admin@example.com",
|
|
250
|
+
"mailto_subject": "Blocked User Inquiry",
|
|
251
|
+
"mode": "",
|
|
252
|
+
"name": "Cloudflare",
|
|
253
|
+
"suppress_footer": False,
|
|
254
|
+
"target_uri": "https://example.com",
|
|
255
|
+
},
|
|
256
|
+
"body_scanning": {
|
|
257
|
+
"inspection_mode": "deep",
|
|
258
|
+
},
|
|
259
|
+
"browser_isolation": {
|
|
260
|
+
"non_identity_enabled": True,
|
|
261
|
+
"url_browser_isolation_enabled": True,
|
|
262
|
+
},
|
|
263
|
+
"certificate": {
|
|
264
|
+
"id": "d1b364c5-1311-466e-a194-f0e943e0799f",
|
|
265
|
+
},
|
|
266
|
+
"custom_certificate": {
|
|
267
|
+
"enabled": True,
|
|
268
|
+
"id": "d1b364c5-1311-466e-a194-f0e943e0799f",
|
|
269
|
+
},
|
|
270
|
+
"extended_email_matching": {
|
|
271
|
+
"enabled": True,
|
|
272
|
+
},
|
|
273
|
+
"fips": {
|
|
274
|
+
"tls": True,
|
|
275
|
+
},
|
|
276
|
+
"host_selector": {
|
|
277
|
+
"enabled": False,
|
|
278
|
+
},
|
|
279
|
+
"inspection": {
|
|
280
|
+
"mode": "static",
|
|
281
|
+
},
|
|
282
|
+
"protocol_detection": {
|
|
283
|
+
"enabled": True,
|
|
284
|
+
},
|
|
285
|
+
"sandbox": {
|
|
286
|
+
"enabled": True,
|
|
287
|
+
"fallback_action": "allow",
|
|
288
|
+
},
|
|
289
|
+
"tls_decrypt": {
|
|
290
|
+
"enabled": True,
|
|
291
|
+
},
|
|
292
|
+
})
|
|
293
|
+
```
|
|
294
|
+
|
|
147
295
|
## Import
|
|
148
296
|
|
|
149
297
|
```sh
|
|
@@ -449,6 +449,34 @@ class ZeroTrustOrganization(pulumi.CustomResource):
|
|
|
449
449
|
"""
|
|
450
450
|
## Example Usage
|
|
451
451
|
|
|
452
|
+
```python
|
|
453
|
+
import pulumi
|
|
454
|
+
import pulumi_cloudflare as cloudflare
|
|
455
|
+
|
|
456
|
+
example_zero_trust_organization = cloudflare.ZeroTrustOrganization("example_zero_trust_organization",
|
|
457
|
+
zone_id="zone_id",
|
|
458
|
+
allow_authenticate_via_warp=True,
|
|
459
|
+
auth_domain="test.cloudflareaccess.com",
|
|
460
|
+
auto_redirect_to_identity=True,
|
|
461
|
+
custom_pages={
|
|
462
|
+
"forbidden": "699d98642c564d2e855e9661899b7252",
|
|
463
|
+
"identity_denied": "699d98642c564d2e855e9661899b7252",
|
|
464
|
+
},
|
|
465
|
+
is_ui_read_only=True,
|
|
466
|
+
login_design={
|
|
467
|
+
"background_color": "#c5ed1b",
|
|
468
|
+
"footer_text": "This is an example description.",
|
|
469
|
+
"header_text": "This is an example description.",
|
|
470
|
+
"logo_path": "https://example.com/logo.png",
|
|
471
|
+
"text_color": "#c5ed1b",
|
|
472
|
+
},
|
|
473
|
+
name="Widget Corps Internal Applications",
|
|
474
|
+
session_duration="24h",
|
|
475
|
+
ui_read_only_toggle_reason="Temporarily turn off the UI read only lock to make a change via the UI",
|
|
476
|
+
user_seat_expiration_inactive_time="730h",
|
|
477
|
+
warp_auth_session_duration="24h")
|
|
478
|
+
```
|
|
479
|
+
|
|
452
480
|
:param str resource_name: The name of the resource.
|
|
453
481
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
454
482
|
:param pulumi.Input[_builtins.str] account_id: The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.
|
|
@@ -471,6 +499,34 @@ class ZeroTrustOrganization(pulumi.CustomResource):
|
|
|
471
499
|
"""
|
|
472
500
|
## Example Usage
|
|
473
501
|
|
|
502
|
+
```python
|
|
503
|
+
import pulumi
|
|
504
|
+
import pulumi_cloudflare as cloudflare
|
|
505
|
+
|
|
506
|
+
example_zero_trust_organization = cloudflare.ZeroTrustOrganization("example_zero_trust_organization",
|
|
507
|
+
zone_id="zone_id",
|
|
508
|
+
allow_authenticate_via_warp=True,
|
|
509
|
+
auth_domain="test.cloudflareaccess.com",
|
|
510
|
+
auto_redirect_to_identity=True,
|
|
511
|
+
custom_pages={
|
|
512
|
+
"forbidden": "699d98642c564d2e855e9661899b7252",
|
|
513
|
+
"identity_denied": "699d98642c564d2e855e9661899b7252",
|
|
514
|
+
},
|
|
515
|
+
is_ui_read_only=True,
|
|
516
|
+
login_design={
|
|
517
|
+
"background_color": "#c5ed1b",
|
|
518
|
+
"footer_text": "This is an example description.",
|
|
519
|
+
"header_text": "This is an example description.",
|
|
520
|
+
"logo_path": "https://example.com/logo.png",
|
|
521
|
+
"text_color": "#c5ed1b",
|
|
522
|
+
},
|
|
523
|
+
name="Widget Corps Internal Applications",
|
|
524
|
+
session_duration="24h",
|
|
525
|
+
ui_read_only_toggle_reason="Temporarily turn off the UI read only lock to make a change via the UI",
|
|
526
|
+
user_seat_expiration_inactive_time="730h",
|
|
527
|
+
warp_auth_session_duration="24h")
|
|
528
|
+
```
|
|
529
|
+
|
|
474
530
|
:param str resource_name: The name of the resource.
|
|
475
531
|
:param ZeroTrustOrganizationArgs args: The arguments to use to populate this resource's properties.
|
|
476
532
|
:param pulumi.ResourceOptions opts: Options for the resource.
|