@pulumi/cloudflare 4.8.0 → 4.10.0-alpha.1661535818
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accessApplication.d.ts +44 -35
- package/accessApplication.js +3 -4
- package/accessApplication.js.map +1 -1
- package/accessBookmark.d.ts +13 -11
- package/accessBookmark.js +4 -2
- package/accessBookmark.js.map +1 -1
- package/accessCaCertificate.d.ts +15 -13
- package/accessCaCertificate.js +5 -3
- package/accessCaCertificate.js.map +1 -1
- package/accessGroup.d.ts +9 -35
- package/accessGroup.js +3 -29
- package/accessGroup.js.map +1 -1
- package/accessIdentityProvider.d.ts +20 -23
- package/accessIdentityProvider.js +8 -5
- package/accessIdentityProvider.js.map +1 -1
- package/accessMutualTlsCertificate.d.ts +12 -8
- package/accessMutualTlsCertificate.js +6 -2
- package/accessMutualTlsCertificate.js.map +1 -1
- package/accessPolicy.d.ts +14 -15
- package/accessPolicy.js +5 -3
- package/accessPolicy.js.map +1 -1
- package/accessRule.d.ts +22 -9
- package/accessRule.js +9 -3
- package/accessRule.js.map +1 -1
- package/accessServiceToken.d.ts +11 -10
- package/accessServiceToken.js +3 -2
- package/accessServiceToken.js.map +1 -1
- package/accountMember.d.ts +15 -6
- package/accountMember.js +2 -0
- package/accountMember.js.map +1 -1
- package/apiToken.d.ts +26 -1
- package/apiToken.js +6 -1
- package/apiToken.js.map +1 -1
- package/argo.d.ts +9 -8
- package/argo.js +3 -2
- package/argo.js.map +1 -1
- package/certificatePack.d.ts +34 -88
- package/certificatePack.js +14 -26
- package/certificatePack.js.map +1 -1
- package/config/vars.d.ts +3 -1
- package/config/vars.js.map +1 -1
- package/customHostname.d.ts +15 -11
- package/customHostname.js +3 -5
- package/customHostname.js.map +1 -1
- package/filter.d.ts +4 -2
- package/filter.js +4 -2
- package/filter.js.map +1 -1
- package/firewallRule.d.ts +17 -23
- package/firewallRule.js +8 -5
- package/firewallRule.js.map +1 -1
- package/getAccessIdentityProvider.d.ts +18 -0
- package/getAccessIdentityProvider.js.map +1 -1
- package/getAccountRoles.d.ts +9 -0
- package/getAccountRoles.js.map +1 -1
- package/getDevices.d.ts +9 -0
- package/getDevices.js.map +1 -1
- package/getWafGroups.d.ts +9 -0
- package/getWafGroups.js.map +1 -1
- package/getWafPackages.d.ts +9 -0
- package/getWafPackages.js.map +1 -1
- package/getWafRules.d.ts +9 -0
- package/getWafRules.js.map +1 -1
- package/getZone.d.ts +18 -0
- package/getZone.js.map +1 -1
- package/getZoneDnssec.d.ts +9 -0
- package/getZoneDnssec.js.map +1 -1
- package/healthcheck.d.ts +50 -103
- package/healthcheck.js +2 -5
- package/healthcheck.js.map +1 -1
- package/ipsecTunnel.d.ts +26 -16
- package/ipsecTunnel.js +4 -1
- package/ipsecTunnel.js.map +1 -1
- package/list.d.ts +7 -6
- package/list.js +7 -6
- package/list.js.map +1 -1
- package/loadBalancer.d.ts +16 -0
- package/loadBalancer.js +6 -0
- package/loadBalancer.js.map +1 -1
- package/loadBalancerPool.d.ts +3 -3
- package/logpushJob.d.ts +21 -57
- package/logpushJob.js.map +1 -1
- package/managedHeaders.d.ts +7 -7
- package/managedHeaders.js +1 -1
- package/notificationPolicy.d.ts +18 -40
- package/notificationPolicy.js +3 -1
- package/notificationPolicy.js.map +1 -1
- package/package.json +4 -3
- package/package.json.bak +2 -1
- package/package.json.dev +4 -3
- package/provider.d.ts +6 -2
- package/provider.js.map +1 -1
- package/ruleset.d.ts +85 -37
- package/ruleset.js +73 -10
- package/ruleset.js.map +1 -1
- package/tunnelRoute.d.ts +10 -11
- package/tunnelRoute.js +7 -5
- package/tunnelRoute.js.map +1 -1
- package/tunnelVirtualNetwork.d.ts +9 -11
- package/tunnelVirtualNetwork.js +6 -5
- package/tunnelVirtualNetwork.js.map +1 -1
- package/types/input.d.ts +391 -36
- package/types/output.d.ts +395 -31
- package/waitingRoom.d.ts +28 -19
- package/waitingRoom.js +3 -1
- package/waitingRoom.js.map +1 -1
- package/waitingRoomEvent.d.ts +13 -19
- package/waitingRoomEvent.js +1 -1
- package/waitingRoomEvent.js.map +1 -1
- package/workerCronTrigger.d.ts +1 -1
- package/workerCronTrigger.js +1 -1
- package/workerScript.d.ts +16 -1
- package/workerScript.js +14 -1
- package/workerScript.js.map +1 -1
- package/zone.d.ts +34 -23
- package/zone.js +10 -5
- package/zone.js.map +1 -1
package/accessGroup.js
CHANGED
|
@@ -6,7 +6,9 @@ exports.AccessGroup = void 0;
|
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
8
|
/**
|
|
9
|
-
* Provides a Cloudflare Access Group resource. Access Groups are used
|
|
9
|
+
* Provides a Cloudflare Access Group resource. Access Groups are used
|
|
10
|
+
* in conjunction with Access Policies to restrict access to a
|
|
11
|
+
* particular resource based on group membership.
|
|
10
12
|
*
|
|
11
13
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
12
14
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -14,34 +16,6 @@ const utilities = require("./utilities");
|
|
|
14
16
|
* scope. For example, an access token that is scoped to the "example.com"
|
|
15
17
|
* zone needs to use the `zoneId` argument.
|
|
16
18
|
*
|
|
17
|
-
* ## Example Usage
|
|
18
|
-
*
|
|
19
|
-
* ```typescript
|
|
20
|
-
* import * as pulumi from "@pulumi/pulumi";
|
|
21
|
-
* import * as cloudflare from "@pulumi/cloudflare";
|
|
22
|
-
*
|
|
23
|
-
* // Allowing access to `test@example.com` email address only
|
|
24
|
-
* const testGroupAccessGroup = new cloudflare.AccessGroup("testGroupAccessGroup", {
|
|
25
|
-
* accountId: "975ecf5a45e3bcb680dba0722a420ad9",
|
|
26
|
-
* name: "staging group",
|
|
27
|
-
* includes: [{
|
|
28
|
-
* emails: ["test@example.com"],
|
|
29
|
-
* }],
|
|
30
|
-
* });
|
|
31
|
-
* // Allowing `test@example.com` to access but only when coming from a
|
|
32
|
-
* // specific IP.
|
|
33
|
-
* const testGroupIndex_accessGroupAccessGroup = new cloudflare.AccessGroup("testGroupIndex/accessGroupAccessGroup", {
|
|
34
|
-
* accountId: "975ecf5a45e3bcb680dba0722a420ad9",
|
|
35
|
-
* name: "staging group",
|
|
36
|
-
* includes: [{
|
|
37
|
-
* emails: ["test@example.com"],
|
|
38
|
-
* }],
|
|
39
|
-
* requires: {
|
|
40
|
-
* ips: [_var.office_ip],
|
|
41
|
-
* },
|
|
42
|
-
* });
|
|
43
|
-
* ```
|
|
44
|
-
*
|
|
45
19
|
* ## Import
|
|
46
20
|
*
|
|
47
21
|
* ```sh
|
package/accessGroup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessGroup.js","sourceRoot":"","sources":["../accessGroup.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"accessGroup.js","sourceRoot":"","sources":["../accessGroup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
import { input as inputs, output as outputs } from "./types";
|
|
3
3
|
/**
|
|
4
|
-
* Provides a Cloudflare Access Identity Provider resource. Identity
|
|
4
|
+
* Provides a Cloudflare Access Identity Provider resource. Identity
|
|
5
|
+
* Providers are used as an authentication or authorisation source
|
|
6
|
+
* within Access.
|
|
5
7
|
*
|
|
6
8
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
7
9
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -17,13 +19,13 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
17
19
|
*
|
|
18
20
|
* // one time pin
|
|
19
21
|
* const pinLogin = new cloudflare.AccessIdentityProvider("pin_login", {
|
|
20
|
-
* accountId: "
|
|
22
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
21
23
|
* name: "PIN login",
|
|
22
24
|
* type: "onetimepin",
|
|
23
25
|
* });
|
|
24
26
|
* // oauth
|
|
25
27
|
* const githubOauth = new cloudflare.AccessIdentityProvider("github_oauth", {
|
|
26
|
-
* accountId: "
|
|
28
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
27
29
|
* configs: [{
|
|
28
30
|
* clientId: "example",
|
|
29
31
|
* clientSecret: "secret_key",
|
|
@@ -33,7 +35,7 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
33
35
|
* });
|
|
34
36
|
* // saml
|
|
35
37
|
* const jumpcloudSaml = new cloudflare.AccessIdentityProvider("jumpcloud_saml", {
|
|
36
|
-
* accountId: "
|
|
38
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
37
39
|
* configs: [{
|
|
38
40
|
* attributes: [
|
|
39
41
|
* "email",
|
|
@@ -50,11 +52,12 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
50
52
|
* });
|
|
51
53
|
* // okta
|
|
52
54
|
* const okta = new cloudflare.AccessIdentityProvider("okta", {
|
|
53
|
-
* accountId: "
|
|
55
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
54
56
|
* configs: [{
|
|
55
57
|
* apiToken: "okta_api_token",
|
|
56
58
|
* clientId: "example",
|
|
57
59
|
* clientSecret: "secret_key",
|
|
60
|
+
* oktaAccount: "https://example.com",
|
|
58
61
|
* }],
|
|
59
62
|
* name: "Okta",
|
|
60
63
|
* type: "okta",
|
|
@@ -84,12 +87,11 @@ export declare class AccessIdentityProvider extends pulumi.CustomResource {
|
|
|
84
87
|
*/
|
|
85
88
|
static isInstance(obj: any): obj is AccessIdentityProvider;
|
|
86
89
|
/**
|
|
87
|
-
* The account identifier to target for the resource.
|
|
90
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
88
91
|
*/
|
|
89
92
|
readonly accountId: pulumi.Output<string | undefined>;
|
|
90
93
|
/**
|
|
91
|
-
* Provider configuration from the [developer
|
|
92
|
-
* documentation](https://developers.cloudflare.com/access/configuring-identity-providers/).
|
|
94
|
+
* Provider configuration from the [developer documentation](https://developers.cloudflare.com/access/configuring-identity-providers/).
|
|
93
95
|
*/
|
|
94
96
|
readonly configs: pulumi.Output<outputs.AccessIdentityProviderConfig[] | undefined>;
|
|
95
97
|
/**
|
|
@@ -97,12 +99,11 @@ export declare class AccessIdentityProvider extends pulumi.CustomResource {
|
|
|
97
99
|
*/
|
|
98
100
|
readonly name: pulumi.Output<string>;
|
|
99
101
|
/**
|
|
100
|
-
* The provider type to use. Available values: `centrify`, `facebook`, `google-apps`, `oidc`, `github`, `google`, `saml`,
|
|
101
|
-
* `linkedin`, `azureAD`, `okta`, `onetimepin`, `onelogin`, `yandex`
|
|
102
|
+
* The provider type to use. Available values: `centrify`, `facebook`, `google-apps`, `oidc`, `github`, `google`, `saml`, `linkedin`, `azureAD`, `okta`, `onetimepin`, `onelogin`, `yandex`.
|
|
102
103
|
*/
|
|
103
104
|
readonly type: pulumi.Output<string>;
|
|
104
105
|
/**
|
|
105
|
-
* The zone identifier to target for the resource.
|
|
106
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
106
107
|
*/
|
|
107
108
|
readonly zoneId: pulumi.Output<string | undefined>;
|
|
108
109
|
/**
|
|
@@ -119,12 +120,11 @@ export declare class AccessIdentityProvider extends pulumi.CustomResource {
|
|
|
119
120
|
*/
|
|
120
121
|
export interface AccessIdentityProviderState {
|
|
121
122
|
/**
|
|
122
|
-
* The account identifier to target for the resource.
|
|
123
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
123
124
|
*/
|
|
124
125
|
accountId?: pulumi.Input<string>;
|
|
125
126
|
/**
|
|
126
|
-
* Provider configuration from the [developer
|
|
127
|
-
* documentation](https://developers.cloudflare.com/access/configuring-identity-providers/).
|
|
127
|
+
* Provider configuration from the [developer documentation](https://developers.cloudflare.com/access/configuring-identity-providers/).
|
|
128
128
|
*/
|
|
129
129
|
configs?: pulumi.Input<pulumi.Input<inputs.AccessIdentityProviderConfig>[]>;
|
|
130
130
|
/**
|
|
@@ -132,12 +132,11 @@ export interface AccessIdentityProviderState {
|
|
|
132
132
|
*/
|
|
133
133
|
name?: pulumi.Input<string>;
|
|
134
134
|
/**
|
|
135
|
-
* The provider type to use. Available values: `centrify`, `facebook`, `google-apps`, `oidc`, `github`, `google`, `saml`,
|
|
136
|
-
* `linkedin`, `azureAD`, `okta`, `onetimepin`, `onelogin`, `yandex`
|
|
135
|
+
* The provider type to use. Available values: `centrify`, `facebook`, `google-apps`, `oidc`, `github`, `google`, `saml`, `linkedin`, `azureAD`, `okta`, `onetimepin`, `onelogin`, `yandex`.
|
|
137
136
|
*/
|
|
138
137
|
type?: pulumi.Input<string>;
|
|
139
138
|
/**
|
|
140
|
-
* The zone identifier to target for the resource.
|
|
139
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
141
140
|
*/
|
|
142
141
|
zoneId?: pulumi.Input<string>;
|
|
143
142
|
}
|
|
@@ -146,12 +145,11 @@ export interface AccessIdentityProviderState {
|
|
|
146
145
|
*/
|
|
147
146
|
export interface AccessIdentityProviderArgs {
|
|
148
147
|
/**
|
|
149
|
-
* The account identifier to target for the resource.
|
|
148
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
150
149
|
*/
|
|
151
150
|
accountId?: pulumi.Input<string>;
|
|
152
151
|
/**
|
|
153
|
-
* Provider configuration from the [developer
|
|
154
|
-
* documentation](https://developers.cloudflare.com/access/configuring-identity-providers/).
|
|
152
|
+
* Provider configuration from the [developer documentation](https://developers.cloudflare.com/access/configuring-identity-providers/).
|
|
155
153
|
*/
|
|
156
154
|
configs?: pulumi.Input<pulumi.Input<inputs.AccessIdentityProviderConfig>[]>;
|
|
157
155
|
/**
|
|
@@ -159,12 +157,11 @@ export interface AccessIdentityProviderArgs {
|
|
|
159
157
|
*/
|
|
160
158
|
name: pulumi.Input<string>;
|
|
161
159
|
/**
|
|
162
|
-
* The provider type to use. Available values: `centrify`, `facebook`, `google-apps`, `oidc`, `github`, `google`, `saml`,
|
|
163
|
-
* `linkedin`, `azureAD`, `okta`, `onetimepin`, `onelogin`, `yandex`
|
|
160
|
+
* The provider type to use. Available values: `centrify`, `facebook`, `google-apps`, `oidc`, `github`, `google`, `saml`, `linkedin`, `azureAD`, `okta`, `onetimepin`, `onelogin`, `yandex`.
|
|
164
161
|
*/
|
|
165
162
|
type: pulumi.Input<string>;
|
|
166
163
|
/**
|
|
167
|
-
* The zone identifier to target for the resource.
|
|
164
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
168
165
|
*/
|
|
169
166
|
zoneId?: pulumi.Input<string>;
|
|
170
167
|
}
|
|
@@ -6,7 +6,9 @@ exports.AccessIdentityProvider = void 0;
|
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
8
|
/**
|
|
9
|
-
* Provides a Cloudflare Access Identity Provider resource. Identity
|
|
9
|
+
* Provides a Cloudflare Access Identity Provider resource. Identity
|
|
10
|
+
* Providers are used as an authentication or authorisation source
|
|
11
|
+
* within Access.
|
|
10
12
|
*
|
|
11
13
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
12
14
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -22,13 +24,13 @@ const utilities = require("./utilities");
|
|
|
22
24
|
*
|
|
23
25
|
* // one time pin
|
|
24
26
|
* const pinLogin = new cloudflare.AccessIdentityProvider("pin_login", {
|
|
25
|
-
* accountId: "
|
|
27
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
26
28
|
* name: "PIN login",
|
|
27
29
|
* type: "onetimepin",
|
|
28
30
|
* });
|
|
29
31
|
* // oauth
|
|
30
32
|
* const githubOauth = new cloudflare.AccessIdentityProvider("github_oauth", {
|
|
31
|
-
* accountId: "
|
|
33
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
32
34
|
* configs: [{
|
|
33
35
|
* clientId: "example",
|
|
34
36
|
* clientSecret: "secret_key",
|
|
@@ -38,7 +40,7 @@ const utilities = require("./utilities");
|
|
|
38
40
|
* });
|
|
39
41
|
* // saml
|
|
40
42
|
* const jumpcloudSaml = new cloudflare.AccessIdentityProvider("jumpcloud_saml", {
|
|
41
|
-
* accountId: "
|
|
43
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
42
44
|
* configs: [{
|
|
43
45
|
* attributes: [
|
|
44
46
|
* "email",
|
|
@@ -55,11 +57,12 @@ const utilities = require("./utilities");
|
|
|
55
57
|
* });
|
|
56
58
|
* // okta
|
|
57
59
|
* const okta = new cloudflare.AccessIdentityProvider("okta", {
|
|
58
|
-
* accountId: "
|
|
60
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
59
61
|
* configs: [{
|
|
60
62
|
* apiToken: "okta_api_token",
|
|
61
63
|
* clientId: "example",
|
|
62
64
|
* clientSecret: "secret_key",
|
|
65
|
+
* oktaAccount: "https://example.com",
|
|
63
66
|
* }],
|
|
64
67
|
* name: "Okta",
|
|
65
68
|
* type: "okta",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessIdentityProvider.js","sourceRoot":"","sources":["../accessIdentityProvider.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"accessIdentityProvider.js","sourceRoot":"","sources":["../accessIdentityProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
/**
|
|
3
|
-
* Provides a Cloudflare Access Mutual TLS Certificate resource.
|
|
3
|
+
* Provides a Cloudflare Access Mutual TLS Certificate resource.
|
|
4
|
+
* Mutual TLS authentication ensures that the traffic is secure and
|
|
5
|
+
* trusted in both directions between a client and server and can be
|
|
6
|
+
* used with Access to only allows requests from devices with a
|
|
7
|
+
* corresponding client certificate.
|
|
4
8
|
*
|
|
5
9
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
6
10
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -15,7 +19,7 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
15
19
|
* import * as cloudflare from "@pulumi/cloudflare";
|
|
16
20
|
*
|
|
17
21
|
* const myCert = new cloudflare.AccessMutualTlsCertificate("myCert", {
|
|
18
|
-
* zoneId: "
|
|
22
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
19
23
|
* name: "My Root Cert",
|
|
20
24
|
* certificate: _var.ca_pem,
|
|
21
25
|
* associatedHostnames: ["staging.example.com"],
|
|
@@ -53,7 +57,7 @@ export declare class AccessMutualTlsCertificate extends pulumi.CustomResource {
|
|
|
53
57
|
*/
|
|
54
58
|
static isInstance(obj: any): obj is AccessMutualTlsCertificate;
|
|
55
59
|
/**
|
|
56
|
-
* The account identifier to target for the resource.
|
|
60
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
57
61
|
*/
|
|
58
62
|
readonly accountId: pulumi.Output<string>;
|
|
59
63
|
/**
|
|
@@ -70,7 +74,7 @@ export declare class AccessMutualTlsCertificate extends pulumi.CustomResource {
|
|
|
70
74
|
*/
|
|
71
75
|
readonly name: pulumi.Output<string>;
|
|
72
76
|
/**
|
|
73
|
-
* The zone identifier to target for the resource.
|
|
77
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
74
78
|
*/
|
|
75
79
|
readonly zoneId: pulumi.Output<string>;
|
|
76
80
|
/**
|
|
@@ -87,7 +91,7 @@ export declare class AccessMutualTlsCertificate extends pulumi.CustomResource {
|
|
|
87
91
|
*/
|
|
88
92
|
export interface AccessMutualTlsCertificateState {
|
|
89
93
|
/**
|
|
90
|
-
* The account identifier to target for the resource.
|
|
94
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
91
95
|
*/
|
|
92
96
|
accountId?: pulumi.Input<string>;
|
|
93
97
|
/**
|
|
@@ -104,7 +108,7 @@ export interface AccessMutualTlsCertificateState {
|
|
|
104
108
|
*/
|
|
105
109
|
name?: pulumi.Input<string>;
|
|
106
110
|
/**
|
|
107
|
-
* The zone identifier to target for the resource.
|
|
111
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
108
112
|
*/
|
|
109
113
|
zoneId?: pulumi.Input<string>;
|
|
110
114
|
}
|
|
@@ -113,7 +117,7 @@ export interface AccessMutualTlsCertificateState {
|
|
|
113
117
|
*/
|
|
114
118
|
export interface AccessMutualTlsCertificateArgs {
|
|
115
119
|
/**
|
|
116
|
-
* The account identifier to target for the resource.
|
|
120
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
117
121
|
*/
|
|
118
122
|
accountId?: pulumi.Input<string>;
|
|
119
123
|
/**
|
|
@@ -129,7 +133,7 @@ export interface AccessMutualTlsCertificateArgs {
|
|
|
129
133
|
*/
|
|
130
134
|
name: pulumi.Input<string>;
|
|
131
135
|
/**
|
|
132
|
-
* The zone identifier to target for the resource.
|
|
136
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
133
137
|
*/
|
|
134
138
|
zoneId?: pulumi.Input<string>;
|
|
135
139
|
}
|
|
@@ -6,7 +6,11 @@ exports.AccessMutualTlsCertificate = void 0;
|
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
8
|
/**
|
|
9
|
-
* Provides a Cloudflare Access Mutual TLS Certificate resource.
|
|
9
|
+
* Provides a Cloudflare Access Mutual TLS Certificate resource.
|
|
10
|
+
* Mutual TLS authentication ensures that the traffic is secure and
|
|
11
|
+
* trusted in both directions between a client and server and can be
|
|
12
|
+
* used with Access to only allows requests from devices with a
|
|
13
|
+
* corresponding client certificate.
|
|
10
14
|
*
|
|
11
15
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
12
16
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -21,7 +25,7 @@ const utilities = require("./utilities");
|
|
|
21
25
|
* import * as cloudflare from "@pulumi/cloudflare";
|
|
22
26
|
*
|
|
23
27
|
* const myCert = new cloudflare.AccessMutualTlsCertificate("myCert", {
|
|
24
|
-
* zoneId: "
|
|
28
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
25
29
|
* name: "My Root Cert",
|
|
26
30
|
* certificate: _var.ca_pem,
|
|
27
31
|
* associatedHostnames: ["staging.example.com"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessMutualTlsCertificate.js","sourceRoot":"","sources":["../accessMutualTlsCertificate.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"accessMutualTlsCertificate.js","sourceRoot":"","sources":["../accessMutualTlsCertificate.ts"],"names":[],"mappings":"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"}
|
package/accessPolicy.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
import { input as inputs, output as outputs } from "./types";
|
|
3
3
|
/**
|
|
4
|
-
* Provides a Cloudflare Access Policy resource. Access Policies are
|
|
4
|
+
* Provides a Cloudflare Access Policy resource. Access Policies are
|
|
5
|
+
* used in conjunction with Access Applications to restrict access to
|
|
6
|
+
* a particular resource.
|
|
5
7
|
*
|
|
6
8
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
7
9
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -18,7 +20,7 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
18
20
|
* // Allowing access to `test@example.com` email address only
|
|
19
21
|
* const testPolicyAccessPolicy = new cloudflare.AccessPolicy("testPolicyAccessPolicy", {
|
|
20
22
|
* applicationId: "cb029e245cfdd66dc8d2e570d5dd3322",
|
|
21
|
-
* zoneId: "
|
|
23
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
22
24
|
* name: "staging policy",
|
|
23
25
|
* precedence: 1,
|
|
24
26
|
* decision: "allow",
|
|
@@ -33,7 +35,7 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
33
35
|
* // specific IP.
|
|
34
36
|
* const testPolicyIndex_accessPolicyAccessPolicy = new cloudflare.AccessPolicy("testPolicyIndex/accessPolicyAccessPolicy", {
|
|
35
37
|
* applicationId: "cb029e245cfdd66dc8d2e570d5dd3322",
|
|
36
|
-
* zoneId: "
|
|
38
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
37
39
|
* name: "staging policy",
|
|
38
40
|
* precedence: 1,
|
|
39
41
|
* decision: "allow",
|
|
@@ -77,7 +79,7 @@ export declare class AccessPolicy extends pulumi.CustomResource {
|
|
|
77
79
|
*/
|
|
78
80
|
static isInstance(obj: any): obj is AccessPolicy;
|
|
79
81
|
/**
|
|
80
|
-
* The account identifier to target for the resource.
|
|
82
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
81
83
|
*/
|
|
82
84
|
readonly accountId: pulumi.Output<string>;
|
|
83
85
|
/**
|
|
@@ -87,8 +89,7 @@ export declare class AccessPolicy extends pulumi.CustomResource {
|
|
|
87
89
|
readonly approvalGroups: pulumi.Output<outputs.AccessPolicyApprovalGroup[] | undefined>;
|
|
88
90
|
readonly approvalRequired: pulumi.Output<boolean | undefined>;
|
|
89
91
|
/**
|
|
90
|
-
* Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `
|
|
91
|
-
* `bypass`
|
|
92
|
+
* Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `nonIdentity`, `bypass`.
|
|
92
93
|
*/
|
|
93
94
|
readonly decision: pulumi.Output<string>;
|
|
94
95
|
/**
|
|
@@ -123,7 +124,7 @@ export declare class AccessPolicy extends pulumi.CustomResource {
|
|
|
123
124
|
*/
|
|
124
125
|
readonly requires: pulumi.Output<outputs.AccessPolicyRequire[] | undefined>;
|
|
125
126
|
/**
|
|
126
|
-
* The zone identifier to target for the resource.
|
|
127
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
127
128
|
*/
|
|
128
129
|
readonly zoneId: pulumi.Output<string>;
|
|
129
130
|
/**
|
|
@@ -140,7 +141,7 @@ export declare class AccessPolicy extends pulumi.CustomResource {
|
|
|
140
141
|
*/
|
|
141
142
|
export interface AccessPolicyState {
|
|
142
143
|
/**
|
|
143
|
-
* The account identifier to target for the resource.
|
|
144
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
144
145
|
*/
|
|
145
146
|
accountId?: pulumi.Input<string>;
|
|
146
147
|
/**
|
|
@@ -150,8 +151,7 @@ export interface AccessPolicyState {
|
|
|
150
151
|
approvalGroups?: pulumi.Input<pulumi.Input<inputs.AccessPolicyApprovalGroup>[]>;
|
|
151
152
|
approvalRequired?: pulumi.Input<boolean>;
|
|
152
153
|
/**
|
|
153
|
-
* Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `
|
|
154
|
-
* `bypass`
|
|
154
|
+
* Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `nonIdentity`, `bypass`.
|
|
155
155
|
*/
|
|
156
156
|
decision?: pulumi.Input<string>;
|
|
157
157
|
/**
|
|
@@ -186,7 +186,7 @@ export interface AccessPolicyState {
|
|
|
186
186
|
*/
|
|
187
187
|
requires?: pulumi.Input<pulumi.Input<inputs.AccessPolicyRequire>[]>;
|
|
188
188
|
/**
|
|
189
|
-
* The zone identifier to target for the resource.
|
|
189
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
190
190
|
*/
|
|
191
191
|
zoneId?: pulumi.Input<string>;
|
|
192
192
|
}
|
|
@@ -195,7 +195,7 @@ export interface AccessPolicyState {
|
|
|
195
195
|
*/
|
|
196
196
|
export interface AccessPolicyArgs {
|
|
197
197
|
/**
|
|
198
|
-
* The account identifier to target for the resource.
|
|
198
|
+
* The account identifier to target for the resource. Conflicts with `zoneId`.
|
|
199
199
|
*/
|
|
200
200
|
accountId?: pulumi.Input<string>;
|
|
201
201
|
/**
|
|
@@ -205,8 +205,7 @@ export interface AccessPolicyArgs {
|
|
|
205
205
|
approvalGroups?: pulumi.Input<pulumi.Input<inputs.AccessPolicyApprovalGroup>[]>;
|
|
206
206
|
approvalRequired?: pulumi.Input<boolean>;
|
|
207
207
|
/**
|
|
208
|
-
* Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `
|
|
209
|
-
* `bypass`
|
|
208
|
+
* Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `nonIdentity`, `bypass`.
|
|
210
209
|
*/
|
|
211
210
|
decision: pulumi.Input<string>;
|
|
212
211
|
/**
|
|
@@ -241,7 +240,7 @@ export interface AccessPolicyArgs {
|
|
|
241
240
|
*/
|
|
242
241
|
requires?: pulumi.Input<pulumi.Input<inputs.AccessPolicyRequire>[]>;
|
|
243
242
|
/**
|
|
244
|
-
* The zone identifier to target for the resource.
|
|
243
|
+
* The zone identifier to target for the resource. Conflicts with `accountId`.
|
|
245
244
|
*/
|
|
246
245
|
zoneId?: pulumi.Input<string>;
|
|
247
246
|
}
|
package/accessPolicy.js
CHANGED
|
@@ -6,7 +6,9 @@ exports.AccessPolicy = void 0;
|
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("./utilities");
|
|
8
8
|
/**
|
|
9
|
-
* Provides a Cloudflare Access Policy resource. Access Policies are
|
|
9
|
+
* Provides a Cloudflare Access Policy resource. Access Policies are
|
|
10
|
+
* used in conjunction with Access Applications to restrict access to
|
|
11
|
+
* a particular resource.
|
|
10
12
|
*
|
|
11
13
|
* > It's required that an `accountId` or `zoneId` is provided and in
|
|
12
14
|
* most cases using either is fine. However, if you're using a scoped
|
|
@@ -23,7 +25,7 @@ const utilities = require("./utilities");
|
|
|
23
25
|
* // Allowing access to `test@example.com` email address only
|
|
24
26
|
* const testPolicyAccessPolicy = new cloudflare.AccessPolicy("testPolicyAccessPolicy", {
|
|
25
27
|
* applicationId: "cb029e245cfdd66dc8d2e570d5dd3322",
|
|
26
|
-
* zoneId: "
|
|
28
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
27
29
|
* name: "staging policy",
|
|
28
30
|
* precedence: 1,
|
|
29
31
|
* decision: "allow",
|
|
@@ -38,7 +40,7 @@ const utilities = require("./utilities");
|
|
|
38
40
|
* // specific IP.
|
|
39
41
|
* const testPolicyIndex_accessPolicyAccessPolicy = new cloudflare.AccessPolicy("testPolicyIndex/accessPolicyAccessPolicy", {
|
|
40
42
|
* applicationId: "cb029e245cfdd66dc8d2e570d5dd3322",
|
|
41
|
-
* zoneId: "
|
|
43
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
42
44
|
* name: "staging policy",
|
|
43
45
|
* precedence: 1,
|
|
44
46
|
* decision: "allow",
|
package/accessPolicy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessPolicy.js","sourceRoot":"","sources":["../accessPolicy.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"accessPolicy.js","sourceRoot":"","sources":["../accessPolicy.ts"],"names":[],"mappings":"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"}
|
package/accessRule.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import * as pulumi from "@pulumi/pulumi";
|
|
2
2
|
import { input as inputs, output as outputs } from "./types";
|
|
3
3
|
/**
|
|
4
|
-
* Provides a Cloudflare IP Firewall Access Rule resource. Access
|
|
4
|
+
* Provides a Cloudflare IP Firewall Access Rule resource. Access
|
|
5
|
+
* control can be applied on basis of IP addresses, IP ranges, AS
|
|
6
|
+
* numbers or countries.
|
|
5
7
|
*
|
|
6
8
|
* ## Example Usage
|
|
7
9
|
*
|
|
@@ -11,6 +13,7 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
11
13
|
*
|
|
12
14
|
* // Challenge requests coming from known Tor exit nodes.
|
|
13
15
|
* const torExitNodes = new cloudflare.AccessRule("torExitNodes", {
|
|
16
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
14
17
|
* notes: "Requests coming from known Tor exit nodes",
|
|
15
18
|
* mode: "challenge",
|
|
16
19
|
* configuration: {
|
|
@@ -18,15 +21,15 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
18
21
|
* value: "T1",
|
|
19
22
|
* },
|
|
20
23
|
* });
|
|
21
|
-
* //
|
|
24
|
+
* // Allowlist requests coming from Antarctica, but only for single zone.
|
|
22
25
|
* const antarctica = new cloudflare.AccessRule("antarctica", {
|
|
26
|
+
* zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
|
|
23
27
|
* notes: "Requests coming from Antarctica",
|
|
24
28
|
* mode: "whitelist",
|
|
25
29
|
* configuration: {
|
|
26
30
|
* target: "country",
|
|
27
31
|
* value: "AQ",
|
|
28
32
|
* },
|
|
29
|
-
* zoneId: "cb029e245cfdd66dc8d2e570d5dd3322",
|
|
30
33
|
* });
|
|
31
34
|
* const config = new pulumi.Config();
|
|
32
35
|
* const myOffice = config.getObject("myOffice") || [
|
|
@@ -37,6 +40,7 @@ import { input as inputs, output as outputs } from "./types";
|
|
|
37
40
|
* const officeNetwork: cloudflare.AccessRule[];
|
|
38
41
|
* for (const range = {value: 0}; range.value < myOffice.length; range.value++) {
|
|
39
42
|
* officeNetwork.push(new cloudflare.AccessRule(`officeNetwork-${range.value}`, {
|
|
43
|
+
* accountId: "f037e56e89293a057740de681ac9abbe",
|
|
40
44
|
* notes: "Requests coming from office network",
|
|
41
45
|
* mode: "whitelist",
|
|
42
46
|
* configuration: {
|
|
@@ -83,13 +87,16 @@ export declare class AccessRule extends pulumi.CustomResource {
|
|
|
83
87
|
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
84
88
|
*/
|
|
85
89
|
static isInstance(obj: any): obj is AccessRule;
|
|
90
|
+
/**
|
|
91
|
+
* The account identifier to target for the resource.
|
|
92
|
+
*/
|
|
93
|
+
readonly accountId: pulumi.Output<string>;
|
|
86
94
|
/**
|
|
87
95
|
* Rule configuration to apply to a matched request.
|
|
88
96
|
*/
|
|
89
97
|
readonly configuration: pulumi.Output<outputs.AccessRuleConfiguration>;
|
|
90
98
|
/**
|
|
91
|
-
* The action to apply to a matched request. Available values: `block`, `challenge`, `whitelist`, `
|
|
92
|
-
* `managed_challenge`
|
|
99
|
+
* The action to apply to a matched request. Available values: `block`, `challenge`, `whitelist`, `jsChallenge`, `managedChallenge`.
|
|
93
100
|
*/
|
|
94
101
|
readonly mode: pulumi.Output<string>;
|
|
95
102
|
/**
|
|
@@ -113,13 +120,16 @@ export declare class AccessRule extends pulumi.CustomResource {
|
|
|
113
120
|
* Input properties used for looking up and filtering AccessRule resources.
|
|
114
121
|
*/
|
|
115
122
|
export interface AccessRuleState {
|
|
123
|
+
/**
|
|
124
|
+
* The account identifier to target for the resource.
|
|
125
|
+
*/
|
|
126
|
+
accountId?: pulumi.Input<string>;
|
|
116
127
|
/**
|
|
117
128
|
* Rule configuration to apply to a matched request.
|
|
118
129
|
*/
|
|
119
130
|
configuration?: pulumi.Input<inputs.AccessRuleConfiguration>;
|
|
120
131
|
/**
|
|
121
|
-
* The action to apply to a matched request. Available values: `block`, `challenge`, `whitelist`, `
|
|
122
|
-
* `managed_challenge`
|
|
132
|
+
* The action to apply to a matched request. Available values: `block`, `challenge`, `whitelist`, `jsChallenge`, `managedChallenge`.
|
|
123
133
|
*/
|
|
124
134
|
mode?: pulumi.Input<string>;
|
|
125
135
|
/**
|
|
@@ -135,13 +145,16 @@ export interface AccessRuleState {
|
|
|
135
145
|
* The set of arguments for constructing a AccessRule resource.
|
|
136
146
|
*/
|
|
137
147
|
export interface AccessRuleArgs {
|
|
148
|
+
/**
|
|
149
|
+
* The account identifier to target for the resource.
|
|
150
|
+
*/
|
|
151
|
+
accountId?: pulumi.Input<string>;
|
|
138
152
|
/**
|
|
139
153
|
* Rule configuration to apply to a matched request.
|
|
140
154
|
*/
|
|
141
155
|
configuration: pulumi.Input<inputs.AccessRuleConfiguration>;
|
|
142
156
|
/**
|
|
143
|
-
* The action to apply to a matched request. Available values: `block`, `challenge`, `whitelist`, `
|
|
144
|
-
* `managed_challenge`
|
|
157
|
+
* The action to apply to a matched request. Available values: `block`, `challenge`, `whitelist`, `jsChallenge`, `managedChallenge`.
|
|
145
158
|
*/
|
|
146
159
|
mode: pulumi.Input<string>;
|
|
147
160
|
/**
|