@pulumi/cloudngfwaws 0.0.1

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.
Files changed (123) hide show
  1. package/LICENSE +177 -0
  2. package/README.md +54 -0
  3. package/account.d.ts +148 -0
  4. package/account.js +73 -0
  5. package/account.js.map +1 -0
  6. package/accountOnboarding.d.ts +68 -0
  7. package/accountOnboarding.js +62 -0
  8. package/accountOnboarding.js.map +1 -0
  9. package/accountOnboardingStack.d.ts +233 -0
  10. package/accountOnboardingStack.js +103 -0
  11. package/accountOnboardingStack.js.map +1 -0
  12. package/certificate.d.ts +168 -0
  13. package/certificate.js +106 -0
  14. package/certificate.js.map +1 -0
  15. package/commitRulestack.d.ts +123 -0
  16. package/commitRulestack.js +83 -0
  17. package/commitRulestack.js.map +1 -0
  18. package/config/index.d.ts +1 -0
  19. package/config/index.js +21 -0
  20. package/config/index.js.map +1 -0
  21. package/config/vars.d.ts +96 -0
  22. package/config/vars.js +127 -0
  23. package/config/vars.js.map +1 -0
  24. package/customUrlCategory.d.ts +172 -0
  25. package/customUrlCategory.js +113 -0
  26. package/customUrlCategory.js.map +1 -0
  27. package/fqdnList.d.ts +159 -0
  28. package/fqdnList.js +110 -0
  29. package/fqdnList.js.map +1 -0
  30. package/getAccount.d.ts +138 -0
  31. package/getAccount.js +54 -0
  32. package/getAccount.js.map +1 -0
  33. package/getAccounts.d.ts +76 -0
  34. package/getAccounts.js +44 -0
  35. package/getAccounts.js.map +1 -0
  36. package/getAppIdVersion.d.ts +102 -0
  37. package/getAppIdVersion.js +62 -0
  38. package/getAppIdVersion.js.map +1 -0
  39. package/getAppIdVersions.d.ts +86 -0
  40. package/getAppIdVersions.js +58 -0
  41. package/getAppIdVersions.js.map +1 -0
  42. package/getCertificate.d.ts +148 -0
  43. package/getCertificate.js +86 -0
  44. package/getCertificate.js.map +1 -0
  45. package/getCountry.d.ts +88 -0
  46. package/getCountry.js +58 -0
  47. package/getCountry.js.map +1 -0
  48. package/getCustomUrlCategory.d.ts +148 -0
  49. package/getCustomUrlCategory.js +86 -0
  50. package/getCustomUrlCategory.js.map +1 -0
  51. package/getFqdnList.d.ts +144 -0
  52. package/getFqdnList.js +86 -0
  53. package/getFqdnList.js.map +1 -0
  54. package/getIntelligentFeed.d.ts +160 -0
  55. package/getIntelligentFeed.js +86 -0
  56. package/getIntelligentFeed.js.map +1 -0
  57. package/getNgfw.d.ts +146 -0
  58. package/getNgfw.js +60 -0
  59. package/getNgfw.js.map +1 -0
  60. package/getNgfwLogProfile.d.ts +101 -0
  61. package/getNgfwLogProfile.js +62 -0
  62. package/getNgfwLogProfile.js.map +1 -0
  63. package/getNgfws.d.ts +83 -0
  64. package/getNgfws.js +58 -0
  65. package/getNgfws.js.map +1 -0
  66. package/getPredefinedUrlCategories.d.ts +88 -0
  67. package/getPredefinedUrlCategories.js +60 -0
  68. package/getPredefinedUrlCategories.js.map +1 -0
  69. package/getPredefinedUrlCategoryOverride.d.ts +128 -0
  70. package/getPredefinedUrlCategoryOverride.js +84 -0
  71. package/getPredefinedUrlCategoryOverride.js.map +1 -0
  72. package/getPrefixList.d.ts +144 -0
  73. package/getPrefixList.js +86 -0
  74. package/getPrefixList.js.map +1 -0
  75. package/getRulestack.d.ts +128 -0
  76. package/getRulestack.js +64 -0
  77. package/getRulestack.js.map +1 -0
  78. package/getSecurityRule.d.ts +169 -0
  79. package/getSecurityRule.js +46 -0
  80. package/getSecurityRule.js.map +1 -0
  81. package/getValidateRulestack.d.ts +82 -0
  82. package/getValidateRulestack.js +40 -0
  83. package/getValidateRulestack.js.map +1 -0
  84. package/index.d.ts +102 -0
  85. package/index.js +158 -0
  86. package/index.js.map +1 -0
  87. package/intelligentFeed.d.ts +207 -0
  88. package/intelligentFeed.js +118 -0
  89. package/intelligentFeed.js.map +1 -0
  90. package/ngfw.d.ts +295 -0
  91. package/ngfw.js +153 -0
  92. package/ngfw.js.map +1 -0
  93. package/ngfwLogProfile.d.ts +191 -0
  94. package/ngfwLogProfile.js +149 -0
  95. package/ngfwLogProfile.js.map +1 -0
  96. package/package.json +32 -0
  97. package/predefinedUrlCategoryOverride.d.ts +130 -0
  98. package/predefinedUrlCategoryOverride.js +98 -0
  99. package/predefinedUrlCategoryOverride.js.map +1 -0
  100. package/prefixList.d.ts +159 -0
  101. package/prefixList.js +110 -0
  102. package/prefixList.js.map +1 -0
  103. package/provider.d.ts +192 -0
  104. package/provider.js +64 -0
  105. package/provider.js.map +1 -0
  106. package/rulestack.d.ts +184 -0
  107. package/rulestack.js +103 -0
  108. package/rulestack.js.map +1 -0
  109. package/securityRule.d.ts +344 -0
  110. package/securityRule.js +162 -0
  111. package/securityRule.js.map +1 -0
  112. package/types/index.d.ts +3 -0
  113. package/types/index.js +11 -0
  114. package/types/index.js.map +1 -0
  115. package/types/input.d.ts +174 -0
  116. package/types/input.js +5 -0
  117. package/types/input.js.map +1 -0
  118. package/types/output.d.ts +313 -0
  119. package/types/output.js +5 -0
  120. package/types/output.js.map +1 -0
  121. package/utilities.d.ts +8 -0
  122. package/utilities.js +101 -0
  123. package/utilities.js.map +1 -0
package/ngfw.d.ts ADDED
@@ -0,0 +1,295 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as aws from "@pulumi/aws";
10
+ * import * as cloudngfwaws from "@pulumi/cloudngfwaws";
11
+ *
12
+ * const rs = new cloudngfwaws.CommitRulestack("rs", {rulestack: "my-rulestack"});
13
+ * const exampleVpc = new aws.index.Vpc("example", {
14
+ * cidrBlock: "172.16.0.0/16",
15
+ * tags: {
16
+ * name: "tf-example",
17
+ * },
18
+ * });
19
+ * const subnet1 = new aws.index.Subnet("subnet1", {
20
+ * vpcId: myVpc.id,
21
+ * cidrBlock: "172.16.10.0/24",
22
+ * availabilityZone: "us-west-2a",
23
+ * tags: {
24
+ * name: "tf-example",
25
+ * },
26
+ * });
27
+ * const subnet2 = new aws.index.Subnet("subnet2", {
28
+ * vpcId: myVpc.id,
29
+ * cidrBlock: "172.16.20.0/24",
30
+ * availabilityZone: "us-west-2b",
31
+ * tags: {
32
+ * name: "tf-example",
33
+ * },
34
+ * });
35
+ * const example = new cloudngfwaws.Ngfw("example", {
36
+ * name: "example-instance",
37
+ * vpcId: exampleVpc.id,
38
+ * accountId: "12345678",
39
+ * description: "Example description",
40
+ * linkId: "Link-81e80ccc-357a-4e4e-8325-1ed1d830cba5",
41
+ * endpointMode: "ServiceManaged",
42
+ * subnetMappings: [
43
+ * {
44
+ * subnetId: subnet1.id,
45
+ * },
46
+ * {
47
+ * subnetId: subnet2.id,
48
+ * },
49
+ * ],
50
+ * rulestack: rs.rulestack,
51
+ * tags: {
52
+ * Foo: "bar",
53
+ * },
54
+ * });
55
+ * ```
56
+ *
57
+ * ## Import
58
+ *
59
+ * import name is <account_id>:<name>
60
+ *
61
+ * ```sh
62
+ * $ pulumi import cloudngfwaws:index/ngfw:Ngfw example 12345678:example-instance
63
+ * ```
64
+ */
65
+ export declare class Ngfw extends pulumi.CustomResource {
66
+ /**
67
+ * Get an existing Ngfw resource's state with the given name, ID, and optional extra
68
+ * properties used to qualify the lookup.
69
+ *
70
+ * @param name The _unique_ name of the resulting resource.
71
+ * @param id The _unique_ provider ID of the resource to lookup.
72
+ * @param state Any extra arguments used during the lookup.
73
+ * @param opts Optional settings to control the behavior of the CustomResource.
74
+ */
75
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NgfwState, opts?: pulumi.CustomResourceOptions): Ngfw;
76
+ /**
77
+ * Returns true if the given object is an instance of Ngfw. This is designed to work even
78
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
79
+ */
80
+ static isInstance(obj: any): obj is Ngfw;
81
+ /**
82
+ * The account ID. This field is mandatory if using multiple accounts.
83
+ */
84
+ readonly accountId: pulumi.Output<string | undefined>;
85
+ /**
86
+ * App-ID version number.
87
+ */
88
+ readonly appIdVersion: pulumi.Output<string>;
89
+ /**
90
+ * Automatic App-ID upgrade version number. Defaults to `true`.
91
+ */
92
+ readonly automaticUpgradeAppIdVersion: pulumi.Output<boolean | undefined>;
93
+ /**
94
+ * The description.
95
+ */
96
+ readonly description: pulumi.Output<string | undefined>;
97
+ /**
98
+ * Set endpoint mode from the following options. Valid values are `ServiceManaged` or `CustomerManaged`.
99
+ */
100
+ readonly endpointMode: pulumi.Output<string>;
101
+ /**
102
+ * The endpoint service name.
103
+ */
104
+ readonly endpointServiceName: pulumi.Output<string>;
105
+ /**
106
+ * The Id of the NGFW.
107
+ */
108
+ readonly firewallId: pulumi.Output<string>;
109
+ /**
110
+ * The global rulestack for this NGFW.
111
+ */
112
+ readonly globalRulestack: pulumi.Output<string | undefined>;
113
+ /**
114
+ * A unique identifier for establishing and managing the link between the Cloud NGFW and other AWS resources.
115
+ */
116
+ readonly linkId: pulumi.Output<string>;
117
+ /**
118
+ * The link status.
119
+ */
120
+ readonly linkStatus: pulumi.Output<string>;
121
+ /**
122
+ * Share NGFW with Multiple VPCs. This feature can be enabled only if the endpointMode is CustomerManaged.
123
+ */
124
+ readonly multiVpc: pulumi.Output<boolean>;
125
+ /**
126
+ * The NGFW name.
127
+ */
128
+ readonly name: pulumi.Output<string>;
129
+ /**
130
+ * The rulestack for this NGFW.
131
+ */
132
+ readonly rulestack: pulumi.Output<string | undefined>;
133
+ readonly statuses: pulumi.Output<outputs.NgfwStatus[]>;
134
+ /**
135
+ * Subnet mappings.
136
+ */
137
+ readonly subnetMappings: pulumi.Output<outputs.NgfwSubnetMapping[]>;
138
+ /**
139
+ * The tags.
140
+ */
141
+ readonly tags: pulumi.Output<{
142
+ [key: string]: string;
143
+ } | undefined>;
144
+ /**
145
+ * The update token.
146
+ */
147
+ readonly updateToken: pulumi.Output<string>;
148
+ /**
149
+ * The vpc id.
150
+ */
151
+ readonly vpcId: pulumi.Output<string>;
152
+ /**
153
+ * Create a Ngfw resource with the given unique name, arguments, and options.
154
+ *
155
+ * @param name The _unique_ name of the resource.
156
+ * @param args The arguments to use to populate this resource's properties.
157
+ * @param opts A bag of options that control this resource's behavior.
158
+ */
159
+ constructor(name: string, args: NgfwArgs, opts?: pulumi.CustomResourceOptions);
160
+ }
161
+ /**
162
+ * Input properties used for looking up and filtering Ngfw resources.
163
+ */
164
+ export interface NgfwState {
165
+ /**
166
+ * The account ID. This field is mandatory if using multiple accounts.
167
+ */
168
+ accountId?: pulumi.Input<string>;
169
+ /**
170
+ * App-ID version number.
171
+ */
172
+ appIdVersion?: pulumi.Input<string>;
173
+ /**
174
+ * Automatic App-ID upgrade version number. Defaults to `true`.
175
+ */
176
+ automaticUpgradeAppIdVersion?: pulumi.Input<boolean>;
177
+ /**
178
+ * The description.
179
+ */
180
+ description?: pulumi.Input<string>;
181
+ /**
182
+ * Set endpoint mode from the following options. Valid values are `ServiceManaged` or `CustomerManaged`.
183
+ */
184
+ endpointMode?: pulumi.Input<string>;
185
+ /**
186
+ * The endpoint service name.
187
+ */
188
+ endpointServiceName?: pulumi.Input<string>;
189
+ /**
190
+ * The Id of the NGFW.
191
+ */
192
+ firewallId?: pulumi.Input<string>;
193
+ /**
194
+ * The global rulestack for this NGFW.
195
+ */
196
+ globalRulestack?: pulumi.Input<string>;
197
+ /**
198
+ * A unique identifier for establishing and managing the link between the Cloud NGFW and other AWS resources.
199
+ */
200
+ linkId?: pulumi.Input<string>;
201
+ /**
202
+ * The link status.
203
+ */
204
+ linkStatus?: pulumi.Input<string>;
205
+ /**
206
+ * Share NGFW with Multiple VPCs. This feature can be enabled only if the endpointMode is CustomerManaged.
207
+ */
208
+ multiVpc?: pulumi.Input<boolean>;
209
+ /**
210
+ * The NGFW name.
211
+ */
212
+ name?: pulumi.Input<string>;
213
+ /**
214
+ * The rulestack for this NGFW.
215
+ */
216
+ rulestack?: pulumi.Input<string>;
217
+ statuses?: pulumi.Input<pulumi.Input<inputs.NgfwStatus>[]>;
218
+ /**
219
+ * Subnet mappings.
220
+ */
221
+ subnetMappings?: pulumi.Input<pulumi.Input<inputs.NgfwSubnetMapping>[]>;
222
+ /**
223
+ * The tags.
224
+ */
225
+ tags?: pulumi.Input<{
226
+ [key: string]: pulumi.Input<string>;
227
+ }>;
228
+ /**
229
+ * The update token.
230
+ */
231
+ updateToken?: pulumi.Input<string>;
232
+ /**
233
+ * The vpc id.
234
+ */
235
+ vpcId?: pulumi.Input<string>;
236
+ }
237
+ /**
238
+ * The set of arguments for constructing a Ngfw resource.
239
+ */
240
+ export interface NgfwArgs {
241
+ /**
242
+ * The account ID. This field is mandatory if using multiple accounts.
243
+ */
244
+ accountId?: pulumi.Input<string>;
245
+ /**
246
+ * App-ID version number.
247
+ */
248
+ appIdVersion?: pulumi.Input<string>;
249
+ /**
250
+ * Automatic App-ID upgrade version number. Defaults to `true`.
251
+ */
252
+ automaticUpgradeAppIdVersion?: pulumi.Input<boolean>;
253
+ /**
254
+ * The description.
255
+ */
256
+ description?: pulumi.Input<string>;
257
+ /**
258
+ * Set endpoint mode from the following options. Valid values are `ServiceManaged` or `CustomerManaged`.
259
+ */
260
+ endpointMode: pulumi.Input<string>;
261
+ /**
262
+ * The global rulestack for this NGFW.
263
+ */
264
+ globalRulestack?: pulumi.Input<string>;
265
+ /**
266
+ * A unique identifier for establishing and managing the link between the Cloud NGFW and other AWS resources.
267
+ */
268
+ linkId?: pulumi.Input<string>;
269
+ /**
270
+ * Share NGFW with Multiple VPCs. This feature can be enabled only if the endpointMode is CustomerManaged.
271
+ */
272
+ multiVpc?: pulumi.Input<boolean>;
273
+ /**
274
+ * The NGFW name.
275
+ */
276
+ name?: pulumi.Input<string>;
277
+ /**
278
+ * The rulestack for this NGFW.
279
+ */
280
+ rulestack?: pulumi.Input<string>;
281
+ /**
282
+ * Subnet mappings.
283
+ */
284
+ subnetMappings: pulumi.Input<pulumi.Input<inputs.NgfwSubnetMapping>[]>;
285
+ /**
286
+ * The tags.
287
+ */
288
+ tags?: pulumi.Input<{
289
+ [key: string]: pulumi.Input<string>;
290
+ }>;
291
+ /**
292
+ * The vpc id.
293
+ */
294
+ vpcId: pulumi.Input<string>;
295
+ }
package/ngfw.js ADDED
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Ngfw = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as aws from "@pulumi/aws";
14
+ * import * as cloudngfwaws from "@pulumi/cloudngfwaws";
15
+ *
16
+ * const rs = new cloudngfwaws.CommitRulestack("rs", {rulestack: "my-rulestack"});
17
+ * const exampleVpc = new aws.index.Vpc("example", {
18
+ * cidrBlock: "172.16.0.0/16",
19
+ * tags: {
20
+ * name: "tf-example",
21
+ * },
22
+ * });
23
+ * const subnet1 = new aws.index.Subnet("subnet1", {
24
+ * vpcId: myVpc.id,
25
+ * cidrBlock: "172.16.10.0/24",
26
+ * availabilityZone: "us-west-2a",
27
+ * tags: {
28
+ * name: "tf-example",
29
+ * },
30
+ * });
31
+ * const subnet2 = new aws.index.Subnet("subnet2", {
32
+ * vpcId: myVpc.id,
33
+ * cidrBlock: "172.16.20.0/24",
34
+ * availabilityZone: "us-west-2b",
35
+ * tags: {
36
+ * name: "tf-example",
37
+ * },
38
+ * });
39
+ * const example = new cloudngfwaws.Ngfw("example", {
40
+ * name: "example-instance",
41
+ * vpcId: exampleVpc.id,
42
+ * accountId: "12345678",
43
+ * description: "Example description",
44
+ * linkId: "Link-81e80ccc-357a-4e4e-8325-1ed1d830cba5",
45
+ * endpointMode: "ServiceManaged",
46
+ * subnetMappings: [
47
+ * {
48
+ * subnetId: subnet1.id,
49
+ * },
50
+ * {
51
+ * subnetId: subnet2.id,
52
+ * },
53
+ * ],
54
+ * rulestack: rs.rulestack,
55
+ * tags: {
56
+ * Foo: "bar",
57
+ * },
58
+ * });
59
+ * ```
60
+ *
61
+ * ## Import
62
+ *
63
+ * import name is <account_id>:<name>
64
+ *
65
+ * ```sh
66
+ * $ pulumi import cloudngfwaws:index/ngfw:Ngfw example 12345678:example-instance
67
+ * ```
68
+ */
69
+ class Ngfw extends pulumi.CustomResource {
70
+ /**
71
+ * Get an existing Ngfw resource's state with the given name, ID, and optional extra
72
+ * properties used to qualify the lookup.
73
+ *
74
+ * @param name The _unique_ name of the resulting resource.
75
+ * @param id The _unique_ provider ID of the resource to lookup.
76
+ * @param state Any extra arguments used during the lookup.
77
+ * @param opts Optional settings to control the behavior of the CustomResource.
78
+ */
79
+ static get(name, id, state, opts) {
80
+ return new Ngfw(name, state, Object.assign(Object.assign({}, opts), { id: id }));
81
+ }
82
+ /**
83
+ * Returns true if the given object is an instance of Ngfw. This is designed to work even
84
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
85
+ */
86
+ static isInstance(obj) {
87
+ if (obj === undefined || obj === null) {
88
+ return false;
89
+ }
90
+ return obj['__pulumiType'] === Ngfw.__pulumiType;
91
+ }
92
+ constructor(name, argsOrState, opts) {
93
+ let resourceInputs = {};
94
+ opts = opts || {};
95
+ if (opts.id) {
96
+ const state = argsOrState;
97
+ resourceInputs["accountId"] = state ? state.accountId : undefined;
98
+ resourceInputs["appIdVersion"] = state ? state.appIdVersion : undefined;
99
+ resourceInputs["automaticUpgradeAppIdVersion"] = state ? state.automaticUpgradeAppIdVersion : undefined;
100
+ resourceInputs["description"] = state ? state.description : undefined;
101
+ resourceInputs["endpointMode"] = state ? state.endpointMode : undefined;
102
+ resourceInputs["endpointServiceName"] = state ? state.endpointServiceName : undefined;
103
+ resourceInputs["firewallId"] = state ? state.firewallId : undefined;
104
+ resourceInputs["globalRulestack"] = state ? state.globalRulestack : undefined;
105
+ resourceInputs["linkId"] = state ? state.linkId : undefined;
106
+ resourceInputs["linkStatus"] = state ? state.linkStatus : undefined;
107
+ resourceInputs["multiVpc"] = state ? state.multiVpc : undefined;
108
+ resourceInputs["name"] = state ? state.name : undefined;
109
+ resourceInputs["rulestack"] = state ? state.rulestack : undefined;
110
+ resourceInputs["statuses"] = state ? state.statuses : undefined;
111
+ resourceInputs["subnetMappings"] = state ? state.subnetMappings : undefined;
112
+ resourceInputs["tags"] = state ? state.tags : undefined;
113
+ resourceInputs["updateToken"] = state ? state.updateToken : undefined;
114
+ resourceInputs["vpcId"] = state ? state.vpcId : undefined;
115
+ }
116
+ else {
117
+ const args = argsOrState;
118
+ if ((!args || args.endpointMode === undefined) && !opts.urn) {
119
+ throw new Error("Missing required property 'endpointMode'");
120
+ }
121
+ if ((!args || args.subnetMappings === undefined) && !opts.urn) {
122
+ throw new Error("Missing required property 'subnetMappings'");
123
+ }
124
+ if ((!args || args.vpcId === undefined) && !opts.urn) {
125
+ throw new Error("Missing required property 'vpcId'");
126
+ }
127
+ resourceInputs["accountId"] = args ? args.accountId : undefined;
128
+ resourceInputs["appIdVersion"] = args ? args.appIdVersion : undefined;
129
+ resourceInputs["automaticUpgradeAppIdVersion"] = args ? args.automaticUpgradeAppIdVersion : undefined;
130
+ resourceInputs["description"] = args ? args.description : undefined;
131
+ resourceInputs["endpointMode"] = args ? args.endpointMode : undefined;
132
+ resourceInputs["globalRulestack"] = args ? args.globalRulestack : undefined;
133
+ resourceInputs["linkId"] = args ? args.linkId : undefined;
134
+ resourceInputs["multiVpc"] = args ? args.multiVpc : undefined;
135
+ resourceInputs["name"] = args ? args.name : undefined;
136
+ resourceInputs["rulestack"] = args ? args.rulestack : undefined;
137
+ resourceInputs["subnetMappings"] = args ? args.subnetMappings : undefined;
138
+ resourceInputs["tags"] = args ? args.tags : undefined;
139
+ resourceInputs["vpcId"] = args ? args.vpcId : undefined;
140
+ resourceInputs["endpointServiceName"] = undefined /*out*/;
141
+ resourceInputs["firewallId"] = undefined /*out*/;
142
+ resourceInputs["linkStatus"] = undefined /*out*/;
143
+ resourceInputs["statuses"] = undefined /*out*/;
144
+ resourceInputs["updateToken"] = undefined /*out*/;
145
+ }
146
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
147
+ super(Ngfw.__pulumiType, name, resourceInputs, opts);
148
+ }
149
+ }
150
+ exports.Ngfw = Ngfw;
151
+ /** @internal */
152
+ Ngfw.__pulumiType = 'cloudngfwaws:index/ngfw:Ngfw';
153
+ //# sourceMappingURL=ngfw.js.map
package/ngfw.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngfw.js","sourceRoot":"","sources":["../ngfw.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,191 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * Resource for NGFW log profile manipulation.
6
+ *
7
+ * ## Admin Permission Type
8
+ *
9
+ * * `Firewall`
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as aws from "@pulumi/aws";
16
+ * import * as cloudngfwaws from "@pulumi/cloudngfwaws";
17
+ *
18
+ * const exampleVpc = new aws.index.Vpc("example", {
19
+ * cidrBlock: "172.16.0.0/16",
20
+ * tags: {
21
+ * name: "tf-example",
22
+ * },
23
+ * });
24
+ * const subnet1 = new aws.index.Subnet("subnet1", {
25
+ * vpcId: myVpc.id,
26
+ * cidrBlock: "172.16.10.0/24",
27
+ * availabilityZone: "us-west-2a",
28
+ * tags: {
29
+ * name: "tf-example",
30
+ * },
31
+ * });
32
+ * const subnet2 = new aws.index.Subnet("subnet2", {
33
+ * vpcId: myVpc.id,
34
+ * cidrBlock: "172.16.20.0/24",
35
+ * availabilityZone: "us-west-2b",
36
+ * tags: {
37
+ * name: "tf-example",
38
+ * },
39
+ * });
40
+ * const x = new cloudngfwaws.Ngfw("x", {
41
+ * name: "example-instance",
42
+ * vpcId: exampleVpc.id,
43
+ * accountId: "12345678",
44
+ * description: "Example description",
45
+ * endpointMode: "ServiceManaged",
46
+ * subnetMappings: [
47
+ * {
48
+ * subnetId: subnet1.id,
49
+ * },
50
+ * {
51
+ * subnetId: subnet2.id,
52
+ * },
53
+ * ],
54
+ * rulestack: "example-rulestack",
55
+ * tags: {
56
+ * Foo: "bar",
57
+ * },
58
+ * });
59
+ * const example = new cloudngfwaws.NgfwLogProfile("example", {
60
+ * ngfw: x.name,
61
+ * accountId: x.accountId,
62
+ * logDestinations: [
63
+ * {
64
+ * destinationType: "S3",
65
+ * destination: "my-s3-bucket",
66
+ * logType: "TRAFFIC",
67
+ * },
68
+ * {
69
+ * destinationType: "CloudWatchLogs",
70
+ * destination: "panw-log-group",
71
+ * logType: "THREAT",
72
+ * },
73
+ * ],
74
+ * });
75
+ * ```
76
+ *
77
+ * ## Import
78
+ *
79
+ * import name is <account_id>:<ngfw>
80
+ *
81
+ * ```sh
82
+ * $ pulumi import cloudngfwaws:index/ngfwLogProfile:NgfwLogProfile example 12345678:example-instance
83
+ * ```
84
+ */
85
+ export declare class NgfwLogProfile extends pulumi.CustomResource {
86
+ /**
87
+ * Get an existing NgfwLogProfile resource's state with the given name, ID, and optional extra
88
+ * properties used to qualify the lookup.
89
+ *
90
+ * @param name The _unique_ name of the resulting resource.
91
+ * @param id The _unique_ provider ID of the resource to lookup.
92
+ * @param state Any extra arguments used during the lookup.
93
+ * @param opts Optional settings to control the behavior of the CustomResource.
94
+ */
95
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NgfwLogProfileState, opts?: pulumi.CustomResourceOptions): NgfwLogProfile;
96
+ /**
97
+ * Returns true if the given object is an instance of NgfwLogProfile. This is designed to work even
98
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
99
+ */
100
+ static isInstance(obj: any): obj is NgfwLogProfile;
101
+ /**
102
+ * The unique ID of the account.
103
+ */
104
+ readonly accountId: pulumi.Output<string>;
105
+ /**
106
+ * Enable advanced threat logging.
107
+ */
108
+ readonly advancedThreatLog: pulumi.Output<boolean | undefined>;
109
+ /**
110
+ * The CloudWatch metric namespace.
111
+ */
112
+ readonly cloudWatchMetricNamespace: pulumi.Output<string | undefined>;
113
+ /**
114
+ * Cloudwatch metric fields.
115
+ */
116
+ readonly cloudwatchMetricFields: pulumi.Output<string[] | undefined>;
117
+ /**
118
+ * List of log destinations.
119
+ */
120
+ readonly logDestinations: pulumi.Output<outputs.NgfwLogProfileLogDestination[]>;
121
+ /**
122
+ * The name of the NGFW.
123
+ */
124
+ readonly ngfw: pulumi.Output<string>;
125
+ /**
126
+ * Create a NgfwLogProfile resource with the given unique name, arguments, and options.
127
+ *
128
+ * @param name The _unique_ name of the resource.
129
+ * @param args The arguments to use to populate this resource's properties.
130
+ * @param opts A bag of options that control this resource's behavior.
131
+ */
132
+ constructor(name: string, args: NgfwLogProfileArgs, opts?: pulumi.CustomResourceOptions);
133
+ }
134
+ /**
135
+ * Input properties used for looking up and filtering NgfwLogProfile resources.
136
+ */
137
+ export interface NgfwLogProfileState {
138
+ /**
139
+ * The unique ID of the account.
140
+ */
141
+ accountId?: pulumi.Input<string>;
142
+ /**
143
+ * Enable advanced threat logging.
144
+ */
145
+ advancedThreatLog?: pulumi.Input<boolean>;
146
+ /**
147
+ * The CloudWatch metric namespace.
148
+ */
149
+ cloudWatchMetricNamespace?: pulumi.Input<string>;
150
+ /**
151
+ * Cloudwatch metric fields.
152
+ */
153
+ cloudwatchMetricFields?: pulumi.Input<pulumi.Input<string>[]>;
154
+ /**
155
+ * List of log destinations.
156
+ */
157
+ logDestinations?: pulumi.Input<pulumi.Input<inputs.NgfwLogProfileLogDestination>[]>;
158
+ /**
159
+ * The name of the NGFW.
160
+ */
161
+ ngfw?: pulumi.Input<string>;
162
+ }
163
+ /**
164
+ * The set of arguments for constructing a NgfwLogProfile resource.
165
+ */
166
+ export interface NgfwLogProfileArgs {
167
+ /**
168
+ * The unique ID of the account.
169
+ */
170
+ accountId: pulumi.Input<string>;
171
+ /**
172
+ * Enable advanced threat logging.
173
+ */
174
+ advancedThreatLog?: pulumi.Input<boolean>;
175
+ /**
176
+ * The CloudWatch metric namespace.
177
+ */
178
+ cloudWatchMetricNamespace?: pulumi.Input<string>;
179
+ /**
180
+ * Cloudwatch metric fields.
181
+ */
182
+ cloudwatchMetricFields?: pulumi.Input<pulumi.Input<string>[]>;
183
+ /**
184
+ * List of log destinations.
185
+ */
186
+ logDestinations: pulumi.Input<pulumi.Input<inputs.NgfwLogProfileLogDestination>[]>;
187
+ /**
188
+ * The name of the NGFW.
189
+ */
190
+ ngfw: pulumi.Input<string>;
191
+ }