pulumi-gcp 7.5.0a1704347630__py3-none-any.whl → 7.6.0__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. pulumi_gcp/__init__.py +99 -0
  2. pulumi_gcp/bigqueryanalyticshub/_inputs.py +40 -0
  3. pulumi_gcp/bigqueryanalyticshub/listing.py +117 -3
  4. pulumi_gcp/bigqueryanalyticshub/outputs.py +49 -0
  5. pulumi_gcp/clouddeploy/__init__.py +1 -0
  6. pulumi_gcp/clouddeploy/_inputs.py +239 -0
  7. pulumi_gcp/clouddeploy/automation.py +1103 -0
  8. pulumi_gcp/clouddeploy/outputs.py +246 -0
  9. pulumi_gcp/clouddomains/__init__.py +10 -0
  10. pulumi_gcp/clouddomains/_inputs.py +1098 -0
  11. pulumi_gcp/clouddomains/outputs.py +1156 -0
  12. pulumi_gcp/clouddomains/registration.py +1068 -0
  13. pulumi_gcp/cloudrunv2/job.py +4 -4
  14. pulumi_gcp/composer/_inputs.py +79 -1
  15. pulumi_gcp/composer/outputs.py +131 -4
  16. pulumi_gcp/compute/__init__.py +1 -0
  17. pulumi_gcp/compute/_inputs.py +180 -0
  18. pulumi_gcp/compute/get_instance_template.py +11 -1
  19. pulumi_gcp/compute/get_region_instance_template.py +11 -1
  20. pulumi_gcp/compute/get_reservation.py +212 -0
  21. pulumi_gcp/compute/instance_template.py +47 -0
  22. pulumi_gcp/compute/network_firewall_policy.py +20 -22
  23. pulumi_gcp/compute/outputs.py +325 -0
  24. pulumi_gcp/compute/region_instance_template.py +47 -0
  25. pulumi_gcp/compute/region_network_firewall_policy.py +31 -35
  26. pulumi_gcp/compute/router_peer.py +54 -0
  27. pulumi_gcp/compute/vpn_tunnel.py +8 -4
  28. pulumi_gcp/config/__init__.pyi +2 -0
  29. pulumi_gcp/config/vars.py +4 -0
  30. pulumi_gcp/container/_inputs.py +23 -0
  31. pulumi_gcp/container/aws_node_pool.py +7 -7
  32. pulumi_gcp/container/cluster.py +68 -14
  33. pulumi_gcp/container/get_cluster.py +11 -1
  34. pulumi_gcp/container/outputs.py +49 -0
  35. pulumi_gcp/dataflow/pipeline.py +1 -1
  36. pulumi_gcp/dataproc/_inputs.py +413 -39
  37. pulumi_gcp/dataproc/metastore_service.py +63 -0
  38. pulumi_gcp/dataproc/outputs.py +461 -39
  39. pulumi_gcp/dns/__init__.py +1 -0
  40. pulumi_gcp/dns/_inputs.py +94 -0
  41. pulumi_gcp/dns/get_managed_zones.py +89 -0
  42. pulumi_gcp/dns/outputs.py +62 -0
  43. pulumi_gcp/edgecontainer/vpn_connection.py +10 -10
  44. pulumi_gcp/filestore/__init__.py +1 -0
  45. pulumi_gcp/filestore/get_instance.py +258 -0
  46. pulumi_gcp/filestore/instance.py +7 -7
  47. pulumi_gcp/filestore/outputs.py +126 -0
  48. pulumi_gcp/gkebackup/backup_plan.py +24 -8
  49. pulumi_gcp/gkebackup/restore_plan.py +36 -12
  50. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +36 -12
  51. pulumi_gcp/gkebackup/restore_plan_iam_member.py +36 -12
  52. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +36 -12
  53. pulumi_gcp/gkehub/_inputs.py +502 -2
  54. pulumi_gcp/gkehub/feature.py +34 -0
  55. pulumi_gcp/gkehub/feature_membership.py +177 -0
  56. pulumi_gcp/gkehub/membership.py +18 -6
  57. pulumi_gcp/gkehub/outputs.py +502 -2
  58. pulumi_gcp/gkeonprem/_inputs.py +21 -25
  59. pulumi_gcp/gkeonprem/outputs.py +34 -25
  60. pulumi_gcp/gkeonprem/v_mware_node_pool.py +34 -0
  61. pulumi_gcp/integrationconnectors/__init__.py +1 -0
  62. pulumi_gcp/integrationconnectors/endpoint_attachment.py +669 -0
  63. pulumi_gcp/kms/_inputs.py +42 -0
  64. pulumi_gcp/kms/crypto_key.py +36 -0
  65. pulumi_gcp/kms/get_kms_crypto_key.py +11 -1
  66. pulumi_gcp/kms/outputs.py +62 -0
  67. pulumi_gcp/logging/__init__.py +2 -0
  68. pulumi_gcp/logging/folder_settings.py +490 -0
  69. pulumi_gcp/logging/folder_sink.py +21 -21
  70. pulumi_gcp/logging/organization_settings.py +484 -0
  71. pulumi_gcp/logging/organization_sink.py +21 -21
  72. pulumi_gcp/logging/project_sink.py +7 -14
  73. pulumi_gcp/netapp/__init__.py +3 -0
  74. pulumi_gcp/netapp/active_directory.py +1413 -0
  75. pulumi_gcp/netapp/backup_vault.py +593 -0
  76. pulumi_gcp/netapp/kmsconfig.py +649 -0
  77. pulumi_gcp/orgpolicy/policy.py +28 -0
  78. pulumi_gcp/provider.py +20 -0
  79. pulumi_gcp/pubsub/subscription.py +29 -37
  80. pulumi_gcp/serviceaccount/account.py +47 -0
  81. pulumi_gcp/servicenetworking/connection.py +55 -1
  82. pulumi_gcp/sql/database_instance.py +2 -2
  83. pulumi_gcp/sql/ssl_cert.py +1 -1
  84. pulumi_gcp/sql/user.py +7 -7
  85. pulumi_gcp/storage/transfer_job.py +24 -5
  86. pulumi_gcp/vertex/__init__.py +3 -0
  87. pulumi_gcp/vertex/_inputs.py +339 -0
  88. pulumi_gcp/vertex/ai_feature_group.py +710 -0
  89. pulumi_gcp/vertex/ai_feature_online_store.py +962 -0
  90. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +804 -0
  91. pulumi_gcp/vertex/outputs.py +406 -0
  92. pulumi_gcp/vmwareengine/__init__.py +2 -0
  93. pulumi_gcp/vmwareengine/_inputs.py +84 -0
  94. pulumi_gcp/vmwareengine/external_access_rule.py +947 -0
  95. pulumi_gcp/vmwareengine/get_external_access_rule.py +245 -0
  96. pulumi_gcp/vmwareengine/outputs.py +146 -0
  97. pulumi_gcp/workflows/workflow.py +7 -7
  98. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/METADATA +1 -1
  99. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/RECORD +101 -82
  100. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/WHEEL +0 -0
  101. {pulumi_gcp-7.5.0a1704347630.dist-info → pulumi_gcp-7.6.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1413 @@
1
+ # coding=utf-8
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
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = ['ActiveDirectoryArgs', 'ActiveDirectory']
13
+
14
+ @pulumi.input_type
15
+ class ActiveDirectoryArgs:
16
+ def __init__(__self__, *,
17
+ dns: pulumi.Input[str],
18
+ domain: pulumi.Input[str],
19
+ location: pulumi.Input[str],
20
+ net_bios_prefix: pulumi.Input[str],
21
+ password: pulumi.Input[str],
22
+ username: pulumi.Input[str],
23
+ aes_encryption: Optional[pulumi.Input[bool]] = None,
24
+ backup_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
25
+ description: Optional[pulumi.Input[str]] = None,
26
+ encrypt_dc_connections: Optional[pulumi.Input[bool]] = None,
27
+ kdc_hostname: Optional[pulumi.Input[str]] = None,
28
+ kdc_ip: Optional[pulumi.Input[str]] = None,
29
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
30
+ ldap_signing: Optional[pulumi.Input[bool]] = None,
31
+ name: Optional[pulumi.Input[str]] = None,
32
+ nfs_users_with_ldap: Optional[pulumi.Input[bool]] = None,
33
+ organizational_unit: Optional[pulumi.Input[str]] = None,
34
+ project: Optional[pulumi.Input[str]] = None,
35
+ security_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
36
+ site: Optional[pulumi.Input[str]] = None):
37
+ """
38
+ The set of arguments for constructing a ActiveDirectory resource.
39
+ :param pulumi.Input[str] dns: Comma separated list of DNS server IP addresses for the Active Directory domain.
40
+ :param pulumi.Input[str] domain: Fully qualified domain name for the Active Directory domain.
41
+ :param pulumi.Input[str] location: Name of the region for the policy to apply to.
42
+ :param pulumi.Input[str] net_bios_prefix: NetBIOS name prefix of the server to be created.
43
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
44
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
45
+ :param pulumi.Input[str] password: Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
46
+ re-apply the password, unless you use a new password in Terraform.
47
+ :param pulumi.Input[str] username: Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
48
+ :param pulumi.Input[bool] aes_encryption: Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
49
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] backup_operators: Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
50
+ :param pulumi.Input[str] description: An optional description of this resource.
51
+ :param pulumi.Input[bool] encrypt_dc_connections: If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
52
+ :param pulumi.Input[str] kdc_hostname: Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
53
+ :param pulumi.Input[str] kdc_ip: IP address of the Active Directory server used as Kerberos Key Distribution Center.
54
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
55
+
56
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
57
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
58
+ :param pulumi.Input[bool] ldap_signing: Specifies whether or not the LDAP traffic needs to be signed.
59
+ :param pulumi.Input[str] name: The resource name of the Active Directory pool. Needs to be unique per location.
60
+
61
+
62
+ - - -
63
+ :param pulumi.Input[bool] nfs_users_with_ldap: Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
64
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
65
+ :param pulumi.Input[str] organizational_unit: Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
66
+ Defaults to `CN=Computers` if left empty.
67
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
68
+ If it is not provided, the provider project is used.
69
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_operators: Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
70
+ :param pulumi.Input[str] site: Specifies an Active Directory site to manage domain controller selection.
71
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
72
+ """
73
+ pulumi.set(__self__, "dns", dns)
74
+ pulumi.set(__self__, "domain", domain)
75
+ pulumi.set(__self__, "location", location)
76
+ pulumi.set(__self__, "net_bios_prefix", net_bios_prefix)
77
+ pulumi.set(__self__, "password", password)
78
+ pulumi.set(__self__, "username", username)
79
+ if aes_encryption is not None:
80
+ pulumi.set(__self__, "aes_encryption", aes_encryption)
81
+ if backup_operators is not None:
82
+ pulumi.set(__self__, "backup_operators", backup_operators)
83
+ if description is not None:
84
+ pulumi.set(__self__, "description", description)
85
+ if encrypt_dc_connections is not None:
86
+ pulumi.set(__self__, "encrypt_dc_connections", encrypt_dc_connections)
87
+ if kdc_hostname is not None:
88
+ pulumi.set(__self__, "kdc_hostname", kdc_hostname)
89
+ if kdc_ip is not None:
90
+ pulumi.set(__self__, "kdc_ip", kdc_ip)
91
+ if labels is not None:
92
+ pulumi.set(__self__, "labels", labels)
93
+ if ldap_signing is not None:
94
+ pulumi.set(__self__, "ldap_signing", ldap_signing)
95
+ if name is not None:
96
+ pulumi.set(__self__, "name", name)
97
+ if nfs_users_with_ldap is not None:
98
+ pulumi.set(__self__, "nfs_users_with_ldap", nfs_users_with_ldap)
99
+ if organizational_unit is not None:
100
+ pulumi.set(__self__, "organizational_unit", organizational_unit)
101
+ if project is not None:
102
+ pulumi.set(__self__, "project", project)
103
+ if security_operators is not None:
104
+ pulumi.set(__self__, "security_operators", security_operators)
105
+ if site is not None:
106
+ pulumi.set(__self__, "site", site)
107
+
108
+ @property
109
+ @pulumi.getter
110
+ def dns(self) -> pulumi.Input[str]:
111
+ """
112
+ Comma separated list of DNS server IP addresses for the Active Directory domain.
113
+ """
114
+ return pulumi.get(self, "dns")
115
+
116
+ @dns.setter
117
+ def dns(self, value: pulumi.Input[str]):
118
+ pulumi.set(self, "dns", value)
119
+
120
+ @property
121
+ @pulumi.getter
122
+ def domain(self) -> pulumi.Input[str]:
123
+ """
124
+ Fully qualified domain name for the Active Directory domain.
125
+ """
126
+ return pulumi.get(self, "domain")
127
+
128
+ @domain.setter
129
+ def domain(self, value: pulumi.Input[str]):
130
+ pulumi.set(self, "domain", value)
131
+
132
+ @property
133
+ @pulumi.getter
134
+ def location(self) -> pulumi.Input[str]:
135
+ """
136
+ Name of the region for the policy to apply to.
137
+ """
138
+ return pulumi.get(self, "location")
139
+
140
+ @location.setter
141
+ def location(self, value: pulumi.Input[str]):
142
+ pulumi.set(self, "location", value)
143
+
144
+ @property
145
+ @pulumi.getter(name="netBiosPrefix")
146
+ def net_bios_prefix(self) -> pulumi.Input[str]:
147
+ """
148
+ NetBIOS name prefix of the server to be created.
149
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
150
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
151
+ """
152
+ return pulumi.get(self, "net_bios_prefix")
153
+
154
+ @net_bios_prefix.setter
155
+ def net_bios_prefix(self, value: pulumi.Input[str]):
156
+ pulumi.set(self, "net_bios_prefix", value)
157
+
158
+ @property
159
+ @pulumi.getter
160
+ def password(self) -> pulumi.Input[str]:
161
+ """
162
+ Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
163
+ re-apply the password, unless you use a new password in Terraform.
164
+ """
165
+ return pulumi.get(self, "password")
166
+
167
+ @password.setter
168
+ def password(self, value: pulumi.Input[str]):
169
+ pulumi.set(self, "password", value)
170
+
171
+ @property
172
+ @pulumi.getter
173
+ def username(self) -> pulumi.Input[str]:
174
+ """
175
+ Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
176
+ """
177
+ return pulumi.get(self, "username")
178
+
179
+ @username.setter
180
+ def username(self, value: pulumi.Input[str]):
181
+ pulumi.set(self, "username", value)
182
+
183
+ @property
184
+ @pulumi.getter(name="aesEncryption")
185
+ def aes_encryption(self) -> Optional[pulumi.Input[bool]]:
186
+ """
187
+ Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
188
+ """
189
+ return pulumi.get(self, "aes_encryption")
190
+
191
+ @aes_encryption.setter
192
+ def aes_encryption(self, value: Optional[pulumi.Input[bool]]):
193
+ pulumi.set(self, "aes_encryption", value)
194
+
195
+ @property
196
+ @pulumi.getter(name="backupOperators")
197
+ def backup_operators(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
198
+ """
199
+ Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
200
+ """
201
+ return pulumi.get(self, "backup_operators")
202
+
203
+ @backup_operators.setter
204
+ def backup_operators(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
205
+ pulumi.set(self, "backup_operators", value)
206
+
207
+ @property
208
+ @pulumi.getter
209
+ def description(self) -> Optional[pulumi.Input[str]]:
210
+ """
211
+ An optional description of this resource.
212
+ """
213
+ return pulumi.get(self, "description")
214
+
215
+ @description.setter
216
+ def description(self, value: Optional[pulumi.Input[str]]):
217
+ pulumi.set(self, "description", value)
218
+
219
+ @property
220
+ @pulumi.getter(name="encryptDcConnections")
221
+ def encrypt_dc_connections(self) -> Optional[pulumi.Input[bool]]:
222
+ """
223
+ If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
224
+ """
225
+ return pulumi.get(self, "encrypt_dc_connections")
226
+
227
+ @encrypt_dc_connections.setter
228
+ def encrypt_dc_connections(self, value: Optional[pulumi.Input[bool]]):
229
+ pulumi.set(self, "encrypt_dc_connections", value)
230
+
231
+ @property
232
+ @pulumi.getter(name="kdcHostname")
233
+ def kdc_hostname(self) -> Optional[pulumi.Input[str]]:
234
+ """
235
+ Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
236
+ """
237
+ return pulumi.get(self, "kdc_hostname")
238
+
239
+ @kdc_hostname.setter
240
+ def kdc_hostname(self, value: Optional[pulumi.Input[str]]):
241
+ pulumi.set(self, "kdc_hostname", value)
242
+
243
+ @property
244
+ @pulumi.getter(name="kdcIp")
245
+ def kdc_ip(self) -> Optional[pulumi.Input[str]]:
246
+ """
247
+ IP address of the Active Directory server used as Kerberos Key Distribution Center.
248
+ """
249
+ return pulumi.get(self, "kdc_ip")
250
+
251
+ @kdc_ip.setter
252
+ def kdc_ip(self, value: Optional[pulumi.Input[str]]):
253
+ pulumi.set(self, "kdc_ip", value)
254
+
255
+ @property
256
+ @pulumi.getter
257
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
258
+ """
259
+ Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
260
+
261
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
262
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
263
+ """
264
+ return pulumi.get(self, "labels")
265
+
266
+ @labels.setter
267
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
268
+ pulumi.set(self, "labels", value)
269
+
270
+ @property
271
+ @pulumi.getter(name="ldapSigning")
272
+ def ldap_signing(self) -> Optional[pulumi.Input[bool]]:
273
+ """
274
+ Specifies whether or not the LDAP traffic needs to be signed.
275
+ """
276
+ return pulumi.get(self, "ldap_signing")
277
+
278
+ @ldap_signing.setter
279
+ def ldap_signing(self, value: Optional[pulumi.Input[bool]]):
280
+ pulumi.set(self, "ldap_signing", value)
281
+
282
+ @property
283
+ @pulumi.getter
284
+ def name(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ The resource name of the Active Directory pool. Needs to be unique per location.
287
+
288
+
289
+ - - -
290
+ """
291
+ return pulumi.get(self, "name")
292
+
293
+ @name.setter
294
+ def name(self, value: Optional[pulumi.Input[str]]):
295
+ pulumi.set(self, "name", value)
296
+
297
+ @property
298
+ @pulumi.getter(name="nfsUsersWithLdap")
299
+ def nfs_users_with_ldap(self) -> Optional[pulumi.Input[bool]]:
300
+ """
301
+ Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
302
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
303
+ """
304
+ return pulumi.get(self, "nfs_users_with_ldap")
305
+
306
+ @nfs_users_with_ldap.setter
307
+ def nfs_users_with_ldap(self, value: Optional[pulumi.Input[bool]]):
308
+ pulumi.set(self, "nfs_users_with_ldap", value)
309
+
310
+ @property
311
+ @pulumi.getter(name="organizationalUnit")
312
+ def organizational_unit(self) -> Optional[pulumi.Input[str]]:
313
+ """
314
+ Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
315
+ Defaults to `CN=Computers` if left empty.
316
+ """
317
+ return pulumi.get(self, "organizational_unit")
318
+
319
+ @organizational_unit.setter
320
+ def organizational_unit(self, value: Optional[pulumi.Input[str]]):
321
+ pulumi.set(self, "organizational_unit", value)
322
+
323
+ @property
324
+ @pulumi.getter
325
+ def project(self) -> Optional[pulumi.Input[str]]:
326
+ """
327
+ The ID of the project in which the resource belongs.
328
+ If it is not provided, the provider project is used.
329
+ """
330
+ return pulumi.get(self, "project")
331
+
332
+ @project.setter
333
+ def project(self, value: Optional[pulumi.Input[str]]):
334
+ pulumi.set(self, "project", value)
335
+
336
+ @property
337
+ @pulumi.getter(name="securityOperators")
338
+ def security_operators(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
339
+ """
340
+ Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
341
+ """
342
+ return pulumi.get(self, "security_operators")
343
+
344
+ @security_operators.setter
345
+ def security_operators(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
346
+ pulumi.set(self, "security_operators", value)
347
+
348
+ @property
349
+ @pulumi.getter
350
+ def site(self) -> Optional[pulumi.Input[str]]:
351
+ """
352
+ Specifies an Active Directory site to manage domain controller selection.
353
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
354
+ """
355
+ return pulumi.get(self, "site")
356
+
357
+ @site.setter
358
+ def site(self, value: Optional[pulumi.Input[str]]):
359
+ pulumi.set(self, "site", value)
360
+
361
+
362
+ @pulumi.input_type
363
+ class _ActiveDirectoryState:
364
+ def __init__(__self__, *,
365
+ aes_encryption: Optional[pulumi.Input[bool]] = None,
366
+ backup_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
367
+ create_time: Optional[pulumi.Input[str]] = None,
368
+ description: Optional[pulumi.Input[str]] = None,
369
+ dns: Optional[pulumi.Input[str]] = None,
370
+ domain: Optional[pulumi.Input[str]] = None,
371
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
372
+ encrypt_dc_connections: Optional[pulumi.Input[bool]] = None,
373
+ kdc_hostname: Optional[pulumi.Input[str]] = None,
374
+ kdc_ip: Optional[pulumi.Input[str]] = None,
375
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
376
+ ldap_signing: Optional[pulumi.Input[bool]] = None,
377
+ location: Optional[pulumi.Input[str]] = None,
378
+ name: Optional[pulumi.Input[str]] = None,
379
+ net_bios_prefix: Optional[pulumi.Input[str]] = None,
380
+ nfs_users_with_ldap: Optional[pulumi.Input[bool]] = None,
381
+ organizational_unit: Optional[pulumi.Input[str]] = None,
382
+ password: Optional[pulumi.Input[str]] = None,
383
+ project: Optional[pulumi.Input[str]] = None,
384
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
385
+ security_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
386
+ site: Optional[pulumi.Input[str]] = None,
387
+ state: Optional[pulumi.Input[str]] = None,
388
+ state_details: Optional[pulumi.Input[str]] = None,
389
+ username: Optional[pulumi.Input[str]] = None):
390
+ """
391
+ Input properties used for looking up and filtering ActiveDirectory resources.
392
+ :param pulumi.Input[bool] aes_encryption: Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
393
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] backup_operators: Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
394
+ :param pulumi.Input[str] create_time: Create time of the active directory. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
395
+ :param pulumi.Input[str] description: An optional description of this resource.
396
+ :param pulumi.Input[str] dns: Comma separated list of DNS server IP addresses for the Active Directory domain.
397
+ :param pulumi.Input[str] domain: Fully qualified domain name for the Active Directory domain.
398
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
399
+ :param pulumi.Input[bool] encrypt_dc_connections: If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
400
+ :param pulumi.Input[str] kdc_hostname: Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
401
+ :param pulumi.Input[str] kdc_ip: IP address of the Active Directory server used as Kerberos Key Distribution Center.
402
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
403
+
404
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
405
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
406
+ :param pulumi.Input[bool] ldap_signing: Specifies whether or not the LDAP traffic needs to be signed.
407
+ :param pulumi.Input[str] location: Name of the region for the policy to apply to.
408
+ :param pulumi.Input[str] name: The resource name of the Active Directory pool. Needs to be unique per location.
409
+
410
+
411
+ - - -
412
+ :param pulumi.Input[str] net_bios_prefix: NetBIOS name prefix of the server to be created.
413
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
414
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
415
+ :param pulumi.Input[bool] nfs_users_with_ldap: Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
416
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
417
+ :param pulumi.Input[str] organizational_unit: Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
418
+ Defaults to `CN=Computers` if left empty.
419
+ :param pulumi.Input[str] password: Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
420
+ re-apply the password, unless you use a new password in Terraform.
421
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
422
+ If it is not provided, the provider project is used.
423
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
424
+ and default labels configured on the provider.
425
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_operators: Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
426
+ :param pulumi.Input[str] site: Specifies an Active Directory site to manage domain controller selection.
427
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
428
+ :param pulumi.Input[str] state: The state of the Active Directory policy (not the Active Directory itself).
429
+ :param pulumi.Input[str] state_details: The state details of the Active Directory.
430
+ :param pulumi.Input[str] username: Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
431
+ """
432
+ if aes_encryption is not None:
433
+ pulumi.set(__self__, "aes_encryption", aes_encryption)
434
+ if backup_operators is not None:
435
+ pulumi.set(__self__, "backup_operators", backup_operators)
436
+ if create_time is not None:
437
+ pulumi.set(__self__, "create_time", create_time)
438
+ if description is not None:
439
+ pulumi.set(__self__, "description", description)
440
+ if dns is not None:
441
+ pulumi.set(__self__, "dns", dns)
442
+ if domain is not None:
443
+ pulumi.set(__self__, "domain", domain)
444
+ if effective_labels is not None:
445
+ pulumi.set(__self__, "effective_labels", effective_labels)
446
+ if encrypt_dc_connections is not None:
447
+ pulumi.set(__self__, "encrypt_dc_connections", encrypt_dc_connections)
448
+ if kdc_hostname is not None:
449
+ pulumi.set(__self__, "kdc_hostname", kdc_hostname)
450
+ if kdc_ip is not None:
451
+ pulumi.set(__self__, "kdc_ip", kdc_ip)
452
+ if labels is not None:
453
+ pulumi.set(__self__, "labels", labels)
454
+ if ldap_signing is not None:
455
+ pulumi.set(__self__, "ldap_signing", ldap_signing)
456
+ if location is not None:
457
+ pulumi.set(__self__, "location", location)
458
+ if name is not None:
459
+ pulumi.set(__self__, "name", name)
460
+ if net_bios_prefix is not None:
461
+ pulumi.set(__self__, "net_bios_prefix", net_bios_prefix)
462
+ if nfs_users_with_ldap is not None:
463
+ pulumi.set(__self__, "nfs_users_with_ldap", nfs_users_with_ldap)
464
+ if organizational_unit is not None:
465
+ pulumi.set(__self__, "organizational_unit", organizational_unit)
466
+ if password is not None:
467
+ pulumi.set(__self__, "password", password)
468
+ if project is not None:
469
+ pulumi.set(__self__, "project", project)
470
+ if pulumi_labels is not None:
471
+ pulumi.set(__self__, "pulumi_labels", pulumi_labels)
472
+ if security_operators is not None:
473
+ pulumi.set(__self__, "security_operators", security_operators)
474
+ if site is not None:
475
+ pulumi.set(__self__, "site", site)
476
+ if state is not None:
477
+ pulumi.set(__self__, "state", state)
478
+ if state_details is not None:
479
+ pulumi.set(__self__, "state_details", state_details)
480
+ if username is not None:
481
+ pulumi.set(__self__, "username", username)
482
+
483
+ @property
484
+ @pulumi.getter(name="aesEncryption")
485
+ def aes_encryption(self) -> Optional[pulumi.Input[bool]]:
486
+ """
487
+ Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
488
+ """
489
+ return pulumi.get(self, "aes_encryption")
490
+
491
+ @aes_encryption.setter
492
+ def aes_encryption(self, value: Optional[pulumi.Input[bool]]):
493
+ pulumi.set(self, "aes_encryption", value)
494
+
495
+ @property
496
+ @pulumi.getter(name="backupOperators")
497
+ def backup_operators(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
498
+ """
499
+ Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
500
+ """
501
+ return pulumi.get(self, "backup_operators")
502
+
503
+ @backup_operators.setter
504
+ def backup_operators(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
505
+ pulumi.set(self, "backup_operators", value)
506
+
507
+ @property
508
+ @pulumi.getter(name="createTime")
509
+ def create_time(self) -> Optional[pulumi.Input[str]]:
510
+ """
511
+ Create time of the active directory. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
512
+ """
513
+ return pulumi.get(self, "create_time")
514
+
515
+ @create_time.setter
516
+ def create_time(self, value: Optional[pulumi.Input[str]]):
517
+ pulumi.set(self, "create_time", value)
518
+
519
+ @property
520
+ @pulumi.getter
521
+ def description(self) -> Optional[pulumi.Input[str]]:
522
+ """
523
+ An optional description of this resource.
524
+ """
525
+ return pulumi.get(self, "description")
526
+
527
+ @description.setter
528
+ def description(self, value: Optional[pulumi.Input[str]]):
529
+ pulumi.set(self, "description", value)
530
+
531
+ @property
532
+ @pulumi.getter
533
+ def dns(self) -> Optional[pulumi.Input[str]]:
534
+ """
535
+ Comma separated list of DNS server IP addresses for the Active Directory domain.
536
+ """
537
+ return pulumi.get(self, "dns")
538
+
539
+ @dns.setter
540
+ def dns(self, value: Optional[pulumi.Input[str]]):
541
+ pulumi.set(self, "dns", value)
542
+
543
+ @property
544
+ @pulumi.getter
545
+ def domain(self) -> Optional[pulumi.Input[str]]:
546
+ """
547
+ Fully qualified domain name for the Active Directory domain.
548
+ """
549
+ return pulumi.get(self, "domain")
550
+
551
+ @domain.setter
552
+ def domain(self, value: Optional[pulumi.Input[str]]):
553
+ pulumi.set(self, "domain", value)
554
+
555
+ @property
556
+ @pulumi.getter(name="effectiveLabels")
557
+ def effective_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
558
+ """
559
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
560
+ """
561
+ return pulumi.get(self, "effective_labels")
562
+
563
+ @effective_labels.setter
564
+ def effective_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
565
+ pulumi.set(self, "effective_labels", value)
566
+
567
+ @property
568
+ @pulumi.getter(name="encryptDcConnections")
569
+ def encrypt_dc_connections(self) -> Optional[pulumi.Input[bool]]:
570
+ """
571
+ If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
572
+ """
573
+ return pulumi.get(self, "encrypt_dc_connections")
574
+
575
+ @encrypt_dc_connections.setter
576
+ def encrypt_dc_connections(self, value: Optional[pulumi.Input[bool]]):
577
+ pulumi.set(self, "encrypt_dc_connections", value)
578
+
579
+ @property
580
+ @pulumi.getter(name="kdcHostname")
581
+ def kdc_hostname(self) -> Optional[pulumi.Input[str]]:
582
+ """
583
+ Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
584
+ """
585
+ return pulumi.get(self, "kdc_hostname")
586
+
587
+ @kdc_hostname.setter
588
+ def kdc_hostname(self, value: Optional[pulumi.Input[str]]):
589
+ pulumi.set(self, "kdc_hostname", value)
590
+
591
+ @property
592
+ @pulumi.getter(name="kdcIp")
593
+ def kdc_ip(self) -> Optional[pulumi.Input[str]]:
594
+ """
595
+ IP address of the Active Directory server used as Kerberos Key Distribution Center.
596
+ """
597
+ return pulumi.get(self, "kdc_ip")
598
+
599
+ @kdc_ip.setter
600
+ def kdc_ip(self, value: Optional[pulumi.Input[str]]):
601
+ pulumi.set(self, "kdc_ip", value)
602
+
603
+ @property
604
+ @pulumi.getter
605
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
606
+ """
607
+ Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
608
+
609
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
610
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
611
+ """
612
+ return pulumi.get(self, "labels")
613
+
614
+ @labels.setter
615
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
616
+ pulumi.set(self, "labels", value)
617
+
618
+ @property
619
+ @pulumi.getter(name="ldapSigning")
620
+ def ldap_signing(self) -> Optional[pulumi.Input[bool]]:
621
+ """
622
+ Specifies whether or not the LDAP traffic needs to be signed.
623
+ """
624
+ return pulumi.get(self, "ldap_signing")
625
+
626
+ @ldap_signing.setter
627
+ def ldap_signing(self, value: Optional[pulumi.Input[bool]]):
628
+ pulumi.set(self, "ldap_signing", value)
629
+
630
+ @property
631
+ @pulumi.getter
632
+ def location(self) -> Optional[pulumi.Input[str]]:
633
+ """
634
+ Name of the region for the policy to apply to.
635
+ """
636
+ return pulumi.get(self, "location")
637
+
638
+ @location.setter
639
+ def location(self, value: Optional[pulumi.Input[str]]):
640
+ pulumi.set(self, "location", value)
641
+
642
+ @property
643
+ @pulumi.getter
644
+ def name(self) -> Optional[pulumi.Input[str]]:
645
+ """
646
+ The resource name of the Active Directory pool. Needs to be unique per location.
647
+
648
+
649
+ - - -
650
+ """
651
+ return pulumi.get(self, "name")
652
+
653
+ @name.setter
654
+ def name(self, value: Optional[pulumi.Input[str]]):
655
+ pulumi.set(self, "name", value)
656
+
657
+ @property
658
+ @pulumi.getter(name="netBiosPrefix")
659
+ def net_bios_prefix(self) -> Optional[pulumi.Input[str]]:
660
+ """
661
+ NetBIOS name prefix of the server to be created.
662
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
663
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
664
+ """
665
+ return pulumi.get(self, "net_bios_prefix")
666
+
667
+ @net_bios_prefix.setter
668
+ def net_bios_prefix(self, value: Optional[pulumi.Input[str]]):
669
+ pulumi.set(self, "net_bios_prefix", value)
670
+
671
+ @property
672
+ @pulumi.getter(name="nfsUsersWithLdap")
673
+ def nfs_users_with_ldap(self) -> Optional[pulumi.Input[bool]]:
674
+ """
675
+ Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
676
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
677
+ """
678
+ return pulumi.get(self, "nfs_users_with_ldap")
679
+
680
+ @nfs_users_with_ldap.setter
681
+ def nfs_users_with_ldap(self, value: Optional[pulumi.Input[bool]]):
682
+ pulumi.set(self, "nfs_users_with_ldap", value)
683
+
684
+ @property
685
+ @pulumi.getter(name="organizationalUnit")
686
+ def organizational_unit(self) -> Optional[pulumi.Input[str]]:
687
+ """
688
+ Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
689
+ Defaults to `CN=Computers` if left empty.
690
+ """
691
+ return pulumi.get(self, "organizational_unit")
692
+
693
+ @organizational_unit.setter
694
+ def organizational_unit(self, value: Optional[pulumi.Input[str]]):
695
+ pulumi.set(self, "organizational_unit", value)
696
+
697
+ @property
698
+ @pulumi.getter
699
+ def password(self) -> Optional[pulumi.Input[str]]:
700
+ """
701
+ Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
702
+ re-apply the password, unless you use a new password in Terraform.
703
+ """
704
+ return pulumi.get(self, "password")
705
+
706
+ @password.setter
707
+ def password(self, value: Optional[pulumi.Input[str]]):
708
+ pulumi.set(self, "password", value)
709
+
710
+ @property
711
+ @pulumi.getter
712
+ def project(self) -> Optional[pulumi.Input[str]]:
713
+ """
714
+ The ID of the project in which the resource belongs.
715
+ If it is not provided, the provider project is used.
716
+ """
717
+ return pulumi.get(self, "project")
718
+
719
+ @project.setter
720
+ def project(self, value: Optional[pulumi.Input[str]]):
721
+ pulumi.set(self, "project", value)
722
+
723
+ @property
724
+ @pulumi.getter(name="pulumiLabels")
725
+ def pulumi_labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
726
+ """
727
+ The combination of labels configured directly on the resource
728
+ and default labels configured on the provider.
729
+ """
730
+ return pulumi.get(self, "pulumi_labels")
731
+
732
+ @pulumi_labels.setter
733
+ def pulumi_labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
734
+ pulumi.set(self, "pulumi_labels", value)
735
+
736
+ @property
737
+ @pulumi.getter(name="securityOperators")
738
+ def security_operators(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
739
+ """
740
+ Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
741
+ """
742
+ return pulumi.get(self, "security_operators")
743
+
744
+ @security_operators.setter
745
+ def security_operators(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
746
+ pulumi.set(self, "security_operators", value)
747
+
748
+ @property
749
+ @pulumi.getter
750
+ def site(self) -> Optional[pulumi.Input[str]]:
751
+ """
752
+ Specifies an Active Directory site to manage domain controller selection.
753
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
754
+ """
755
+ return pulumi.get(self, "site")
756
+
757
+ @site.setter
758
+ def site(self, value: Optional[pulumi.Input[str]]):
759
+ pulumi.set(self, "site", value)
760
+
761
+ @property
762
+ @pulumi.getter
763
+ def state(self) -> Optional[pulumi.Input[str]]:
764
+ """
765
+ The state of the Active Directory policy (not the Active Directory itself).
766
+ """
767
+ return pulumi.get(self, "state")
768
+
769
+ @state.setter
770
+ def state(self, value: Optional[pulumi.Input[str]]):
771
+ pulumi.set(self, "state", value)
772
+
773
+ @property
774
+ @pulumi.getter(name="stateDetails")
775
+ def state_details(self) -> Optional[pulumi.Input[str]]:
776
+ """
777
+ The state details of the Active Directory.
778
+ """
779
+ return pulumi.get(self, "state_details")
780
+
781
+ @state_details.setter
782
+ def state_details(self, value: Optional[pulumi.Input[str]]):
783
+ pulumi.set(self, "state_details", value)
784
+
785
+ @property
786
+ @pulumi.getter
787
+ def username(self) -> Optional[pulumi.Input[str]]:
788
+ """
789
+ Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
790
+ """
791
+ return pulumi.get(self, "username")
792
+
793
+ @username.setter
794
+ def username(self, value: Optional[pulumi.Input[str]]):
795
+ pulumi.set(self, "username", value)
796
+
797
+
798
+ class ActiveDirectory(pulumi.CustomResource):
799
+ @overload
800
+ def __init__(__self__,
801
+ resource_name: str,
802
+ opts: Optional[pulumi.ResourceOptions] = None,
803
+ aes_encryption: Optional[pulumi.Input[bool]] = None,
804
+ backup_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
805
+ description: Optional[pulumi.Input[str]] = None,
806
+ dns: Optional[pulumi.Input[str]] = None,
807
+ domain: Optional[pulumi.Input[str]] = None,
808
+ encrypt_dc_connections: Optional[pulumi.Input[bool]] = None,
809
+ kdc_hostname: Optional[pulumi.Input[str]] = None,
810
+ kdc_ip: Optional[pulumi.Input[str]] = None,
811
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
812
+ ldap_signing: Optional[pulumi.Input[bool]] = None,
813
+ location: Optional[pulumi.Input[str]] = None,
814
+ name: Optional[pulumi.Input[str]] = None,
815
+ net_bios_prefix: Optional[pulumi.Input[str]] = None,
816
+ nfs_users_with_ldap: Optional[pulumi.Input[bool]] = None,
817
+ organizational_unit: Optional[pulumi.Input[str]] = None,
818
+ password: Optional[pulumi.Input[str]] = None,
819
+ project: Optional[pulumi.Input[str]] = None,
820
+ security_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
821
+ site: Optional[pulumi.Input[str]] = None,
822
+ username: Optional[pulumi.Input[str]] = None,
823
+ __props__=None):
824
+ """
825
+ ActiveDirectory is the public representation of the active directory config.
826
+
827
+ To get more information about activeDirectory, see:
828
+
829
+ * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.activeDirectories)
830
+ * How-to Guides
831
+ * [Official Documentation](https://cloud.google.com/netapp/volumes/docs/configure-and-use/active-directory/about-ad)
832
+
833
+ ## Example Usage
834
+ ### Netapp Active Directory Full
835
+
836
+ ```python
837
+ import pulumi
838
+ import pulumi_gcp as gcp
839
+
840
+ test_active_directory_full = gcp.netapp.ActiveDirectory("testActiveDirectoryFull",
841
+ location="us-central1",
842
+ domain="ad.internal",
843
+ dns="172.30.64.3",
844
+ net_bios_prefix="smbserver",
845
+ username="user",
846
+ password="pass",
847
+ aes_encryption=False,
848
+ backup_operators=[
849
+ "test1",
850
+ "test2",
851
+ ],
852
+ description="ActiveDirectory is the public representation of the active directory config.",
853
+ encrypt_dc_connections=False,
854
+ kdc_hostname="hostname",
855
+ kdc_ip="10.10.0.11",
856
+ labels={
857
+ "foo": "bar",
858
+ },
859
+ ldap_signing=False,
860
+ nfs_users_with_ldap=False,
861
+ organizational_unit="CN=Computers",
862
+ security_operators=[
863
+ "test1",
864
+ "test2",
865
+ ],
866
+ site="test-site")
867
+ ```
868
+
869
+ ## Import
870
+
871
+ activeDirectory can be imported using any of these accepted formats* `projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}` * `{{project}}/{{location}}/{{name}}` * `{{location}}/{{name}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import activeDirectory using one of the formats above. For exampletf import {
872
+
873
+ id = "projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}"
874
+
875
+ to = google_netapp_active_directory.default }
876
+
877
+ ```sh
878
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), activeDirectory can be imported using one of the formats above. For example
879
+ ```
880
+
881
+ ```sh
882
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
883
+ ```
884
+
885
+ ```sh
886
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default {{project}}/{{location}}/{{name}}
887
+ ```
888
+
889
+ ```sh
890
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default {{location}}/{{name}}
891
+ ```
892
+
893
+ :param str resource_name: The name of the resource.
894
+ :param pulumi.ResourceOptions opts: Options for the resource.
895
+ :param pulumi.Input[bool] aes_encryption: Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
896
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] backup_operators: Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
897
+ :param pulumi.Input[str] description: An optional description of this resource.
898
+ :param pulumi.Input[str] dns: Comma separated list of DNS server IP addresses for the Active Directory domain.
899
+ :param pulumi.Input[str] domain: Fully qualified domain name for the Active Directory domain.
900
+ :param pulumi.Input[bool] encrypt_dc_connections: If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
901
+ :param pulumi.Input[str] kdc_hostname: Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
902
+ :param pulumi.Input[str] kdc_ip: IP address of the Active Directory server used as Kerberos Key Distribution Center.
903
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
904
+
905
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
906
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
907
+ :param pulumi.Input[bool] ldap_signing: Specifies whether or not the LDAP traffic needs to be signed.
908
+ :param pulumi.Input[str] location: Name of the region for the policy to apply to.
909
+ :param pulumi.Input[str] name: The resource name of the Active Directory pool. Needs to be unique per location.
910
+
911
+
912
+ - - -
913
+ :param pulumi.Input[str] net_bios_prefix: NetBIOS name prefix of the server to be created.
914
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
915
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
916
+ :param pulumi.Input[bool] nfs_users_with_ldap: Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
917
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
918
+ :param pulumi.Input[str] organizational_unit: Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
919
+ Defaults to `CN=Computers` if left empty.
920
+ :param pulumi.Input[str] password: Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
921
+ re-apply the password, unless you use a new password in Terraform.
922
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
923
+ If it is not provided, the provider project is used.
924
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_operators: Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
925
+ :param pulumi.Input[str] site: Specifies an Active Directory site to manage domain controller selection.
926
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
927
+ :param pulumi.Input[str] username: Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
928
+ """
929
+ ...
930
+ @overload
931
+ def __init__(__self__,
932
+ resource_name: str,
933
+ args: ActiveDirectoryArgs,
934
+ opts: Optional[pulumi.ResourceOptions] = None):
935
+ """
936
+ ActiveDirectory is the public representation of the active directory config.
937
+
938
+ To get more information about activeDirectory, see:
939
+
940
+ * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.activeDirectories)
941
+ * How-to Guides
942
+ * [Official Documentation](https://cloud.google.com/netapp/volumes/docs/configure-and-use/active-directory/about-ad)
943
+
944
+ ## Example Usage
945
+ ### Netapp Active Directory Full
946
+
947
+ ```python
948
+ import pulumi
949
+ import pulumi_gcp as gcp
950
+
951
+ test_active_directory_full = gcp.netapp.ActiveDirectory("testActiveDirectoryFull",
952
+ location="us-central1",
953
+ domain="ad.internal",
954
+ dns="172.30.64.3",
955
+ net_bios_prefix="smbserver",
956
+ username="user",
957
+ password="pass",
958
+ aes_encryption=False,
959
+ backup_operators=[
960
+ "test1",
961
+ "test2",
962
+ ],
963
+ description="ActiveDirectory is the public representation of the active directory config.",
964
+ encrypt_dc_connections=False,
965
+ kdc_hostname="hostname",
966
+ kdc_ip="10.10.0.11",
967
+ labels={
968
+ "foo": "bar",
969
+ },
970
+ ldap_signing=False,
971
+ nfs_users_with_ldap=False,
972
+ organizational_unit="CN=Computers",
973
+ security_operators=[
974
+ "test1",
975
+ "test2",
976
+ ],
977
+ site="test-site")
978
+ ```
979
+
980
+ ## Import
981
+
982
+ activeDirectory can be imported using any of these accepted formats* `projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}` * `{{project}}/{{location}}/{{name}}` * `{{location}}/{{name}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import activeDirectory using one of the formats above. For exampletf import {
983
+
984
+ id = "projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}"
985
+
986
+ to = google_netapp_active_directory.default }
987
+
988
+ ```sh
989
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), activeDirectory can be imported using one of the formats above. For example
990
+ ```
991
+
992
+ ```sh
993
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
994
+ ```
995
+
996
+ ```sh
997
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default {{project}}/{{location}}/{{name}}
998
+ ```
999
+
1000
+ ```sh
1001
+ $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default {{location}}/{{name}}
1002
+ ```
1003
+
1004
+ :param str resource_name: The name of the resource.
1005
+ :param ActiveDirectoryArgs args: The arguments to use to populate this resource's properties.
1006
+ :param pulumi.ResourceOptions opts: Options for the resource.
1007
+ """
1008
+ ...
1009
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1010
+ resource_args, opts = _utilities.get_resource_args_opts(ActiveDirectoryArgs, pulumi.ResourceOptions, *args, **kwargs)
1011
+ if resource_args is not None:
1012
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1013
+ else:
1014
+ __self__._internal_init(resource_name, *args, **kwargs)
1015
+
1016
+ def _internal_init(__self__,
1017
+ resource_name: str,
1018
+ opts: Optional[pulumi.ResourceOptions] = None,
1019
+ aes_encryption: Optional[pulumi.Input[bool]] = None,
1020
+ backup_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1021
+ description: Optional[pulumi.Input[str]] = None,
1022
+ dns: Optional[pulumi.Input[str]] = None,
1023
+ domain: Optional[pulumi.Input[str]] = None,
1024
+ encrypt_dc_connections: Optional[pulumi.Input[bool]] = None,
1025
+ kdc_hostname: Optional[pulumi.Input[str]] = None,
1026
+ kdc_ip: Optional[pulumi.Input[str]] = None,
1027
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1028
+ ldap_signing: Optional[pulumi.Input[bool]] = None,
1029
+ location: Optional[pulumi.Input[str]] = None,
1030
+ name: Optional[pulumi.Input[str]] = None,
1031
+ net_bios_prefix: Optional[pulumi.Input[str]] = None,
1032
+ nfs_users_with_ldap: Optional[pulumi.Input[bool]] = None,
1033
+ organizational_unit: Optional[pulumi.Input[str]] = None,
1034
+ password: Optional[pulumi.Input[str]] = None,
1035
+ project: Optional[pulumi.Input[str]] = None,
1036
+ security_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1037
+ site: Optional[pulumi.Input[str]] = None,
1038
+ username: Optional[pulumi.Input[str]] = None,
1039
+ __props__=None):
1040
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1041
+ if not isinstance(opts, pulumi.ResourceOptions):
1042
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1043
+ if opts.id is None:
1044
+ if __props__ is not None:
1045
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1046
+ __props__ = ActiveDirectoryArgs.__new__(ActiveDirectoryArgs)
1047
+
1048
+ __props__.__dict__["aes_encryption"] = aes_encryption
1049
+ __props__.__dict__["backup_operators"] = backup_operators
1050
+ __props__.__dict__["description"] = description
1051
+ if dns is None and not opts.urn:
1052
+ raise TypeError("Missing required property 'dns'")
1053
+ __props__.__dict__["dns"] = dns
1054
+ if domain is None and not opts.urn:
1055
+ raise TypeError("Missing required property 'domain'")
1056
+ __props__.__dict__["domain"] = domain
1057
+ __props__.__dict__["encrypt_dc_connections"] = encrypt_dc_connections
1058
+ __props__.__dict__["kdc_hostname"] = kdc_hostname
1059
+ __props__.__dict__["kdc_ip"] = kdc_ip
1060
+ __props__.__dict__["labels"] = labels
1061
+ __props__.__dict__["ldap_signing"] = ldap_signing
1062
+ if location is None and not opts.urn:
1063
+ raise TypeError("Missing required property 'location'")
1064
+ __props__.__dict__["location"] = location
1065
+ __props__.__dict__["name"] = name
1066
+ if net_bios_prefix is None and not opts.urn:
1067
+ raise TypeError("Missing required property 'net_bios_prefix'")
1068
+ __props__.__dict__["net_bios_prefix"] = net_bios_prefix
1069
+ __props__.__dict__["nfs_users_with_ldap"] = nfs_users_with_ldap
1070
+ __props__.__dict__["organizational_unit"] = organizational_unit
1071
+ if password is None and not opts.urn:
1072
+ raise TypeError("Missing required property 'password'")
1073
+ __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password)
1074
+ __props__.__dict__["project"] = project
1075
+ __props__.__dict__["security_operators"] = security_operators
1076
+ __props__.__dict__["site"] = site
1077
+ if username is None and not opts.urn:
1078
+ raise TypeError("Missing required property 'username'")
1079
+ __props__.__dict__["username"] = username
1080
+ __props__.__dict__["create_time"] = None
1081
+ __props__.__dict__["effective_labels"] = None
1082
+ __props__.__dict__["pulumi_labels"] = None
1083
+ __props__.__dict__["state"] = None
1084
+ __props__.__dict__["state_details"] = None
1085
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "password", "pulumiLabels"])
1086
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
1087
+ super(ActiveDirectory, __self__).__init__(
1088
+ 'gcp:netapp/activeDirectory:ActiveDirectory',
1089
+ resource_name,
1090
+ __props__,
1091
+ opts)
1092
+
1093
+ @staticmethod
1094
+ def get(resource_name: str,
1095
+ id: pulumi.Input[str],
1096
+ opts: Optional[pulumi.ResourceOptions] = None,
1097
+ aes_encryption: Optional[pulumi.Input[bool]] = None,
1098
+ backup_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1099
+ create_time: Optional[pulumi.Input[str]] = None,
1100
+ description: Optional[pulumi.Input[str]] = None,
1101
+ dns: Optional[pulumi.Input[str]] = None,
1102
+ domain: Optional[pulumi.Input[str]] = None,
1103
+ effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1104
+ encrypt_dc_connections: Optional[pulumi.Input[bool]] = None,
1105
+ kdc_hostname: Optional[pulumi.Input[str]] = None,
1106
+ kdc_ip: Optional[pulumi.Input[str]] = None,
1107
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1108
+ ldap_signing: Optional[pulumi.Input[bool]] = None,
1109
+ location: Optional[pulumi.Input[str]] = None,
1110
+ name: Optional[pulumi.Input[str]] = None,
1111
+ net_bios_prefix: Optional[pulumi.Input[str]] = None,
1112
+ nfs_users_with_ldap: Optional[pulumi.Input[bool]] = None,
1113
+ organizational_unit: Optional[pulumi.Input[str]] = None,
1114
+ password: Optional[pulumi.Input[str]] = None,
1115
+ project: Optional[pulumi.Input[str]] = None,
1116
+ pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1117
+ security_operators: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1118
+ site: Optional[pulumi.Input[str]] = None,
1119
+ state: Optional[pulumi.Input[str]] = None,
1120
+ state_details: Optional[pulumi.Input[str]] = None,
1121
+ username: Optional[pulumi.Input[str]] = None) -> 'ActiveDirectory':
1122
+ """
1123
+ Get an existing ActiveDirectory resource's state with the given name, id, and optional extra
1124
+ properties used to qualify the lookup.
1125
+
1126
+ :param str resource_name: The unique name of the resulting resource.
1127
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1128
+ :param pulumi.ResourceOptions opts: Options for the resource.
1129
+ :param pulumi.Input[bool] aes_encryption: Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
1130
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] backup_operators: Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
1131
+ :param pulumi.Input[str] create_time: Create time of the active directory. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
1132
+ :param pulumi.Input[str] description: An optional description of this resource.
1133
+ :param pulumi.Input[str] dns: Comma separated list of DNS server IP addresses for the Active Directory domain.
1134
+ :param pulumi.Input[str] domain: Fully qualified domain name for the Active Directory domain.
1135
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
1136
+ :param pulumi.Input[bool] encrypt_dc_connections: If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
1137
+ :param pulumi.Input[str] kdc_hostname: Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
1138
+ :param pulumi.Input[str] kdc_ip: IP address of the Active Directory server used as Kerberos Key Distribution Center.
1139
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
1140
+
1141
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1142
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
1143
+ :param pulumi.Input[bool] ldap_signing: Specifies whether or not the LDAP traffic needs to be signed.
1144
+ :param pulumi.Input[str] location: Name of the region for the policy to apply to.
1145
+ :param pulumi.Input[str] name: The resource name of the Active Directory pool. Needs to be unique per location.
1146
+
1147
+
1148
+ - - -
1149
+ :param pulumi.Input[str] net_bios_prefix: NetBIOS name prefix of the server to be created.
1150
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
1151
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
1152
+ :param pulumi.Input[bool] nfs_users_with_ldap: Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
1153
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
1154
+ :param pulumi.Input[str] organizational_unit: Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
1155
+ Defaults to `CN=Computers` if left empty.
1156
+ :param pulumi.Input[str] password: Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
1157
+ re-apply the password, unless you use a new password in Terraform.
1158
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
1159
+ If it is not provided, the provider project is used.
1160
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] pulumi_labels: The combination of labels configured directly on the resource
1161
+ and default labels configured on the provider.
1162
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_operators: Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
1163
+ :param pulumi.Input[str] site: Specifies an Active Directory site to manage domain controller selection.
1164
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
1165
+ :param pulumi.Input[str] state: The state of the Active Directory policy (not the Active Directory itself).
1166
+ :param pulumi.Input[str] state_details: The state details of the Active Directory.
1167
+ :param pulumi.Input[str] username: Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
1168
+ """
1169
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1170
+
1171
+ __props__ = _ActiveDirectoryState.__new__(_ActiveDirectoryState)
1172
+
1173
+ __props__.__dict__["aes_encryption"] = aes_encryption
1174
+ __props__.__dict__["backup_operators"] = backup_operators
1175
+ __props__.__dict__["create_time"] = create_time
1176
+ __props__.__dict__["description"] = description
1177
+ __props__.__dict__["dns"] = dns
1178
+ __props__.__dict__["domain"] = domain
1179
+ __props__.__dict__["effective_labels"] = effective_labels
1180
+ __props__.__dict__["encrypt_dc_connections"] = encrypt_dc_connections
1181
+ __props__.__dict__["kdc_hostname"] = kdc_hostname
1182
+ __props__.__dict__["kdc_ip"] = kdc_ip
1183
+ __props__.__dict__["labels"] = labels
1184
+ __props__.__dict__["ldap_signing"] = ldap_signing
1185
+ __props__.__dict__["location"] = location
1186
+ __props__.__dict__["name"] = name
1187
+ __props__.__dict__["net_bios_prefix"] = net_bios_prefix
1188
+ __props__.__dict__["nfs_users_with_ldap"] = nfs_users_with_ldap
1189
+ __props__.__dict__["organizational_unit"] = organizational_unit
1190
+ __props__.__dict__["password"] = password
1191
+ __props__.__dict__["project"] = project
1192
+ __props__.__dict__["pulumi_labels"] = pulumi_labels
1193
+ __props__.__dict__["security_operators"] = security_operators
1194
+ __props__.__dict__["site"] = site
1195
+ __props__.__dict__["state"] = state
1196
+ __props__.__dict__["state_details"] = state_details
1197
+ __props__.__dict__["username"] = username
1198
+ return ActiveDirectory(resource_name, opts=opts, __props__=__props__)
1199
+
1200
+ @property
1201
+ @pulumi.getter(name="aesEncryption")
1202
+ def aes_encryption(self) -> pulumi.Output[Optional[bool]]:
1203
+ """
1204
+ Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
1205
+ """
1206
+ return pulumi.get(self, "aes_encryption")
1207
+
1208
+ @property
1209
+ @pulumi.getter(name="backupOperators")
1210
+ def backup_operators(self) -> pulumi.Output[Optional[Sequence[str]]]:
1211
+ """
1212
+ Domain user/group accounts to be added to the Backup Operators group of the SMB service. The Backup Operators group allows members to backup and restore files regardless of whether they have read or write access to the files. Comma-separated list.
1213
+ """
1214
+ return pulumi.get(self, "backup_operators")
1215
+
1216
+ @property
1217
+ @pulumi.getter(name="createTime")
1218
+ def create_time(self) -> pulumi.Output[str]:
1219
+ """
1220
+ Create time of the active directory. A timestamp in RFC3339 UTC "Zulu" format. Examples: "2023-06-22T09:13:01.617Z".
1221
+ """
1222
+ return pulumi.get(self, "create_time")
1223
+
1224
+ @property
1225
+ @pulumi.getter
1226
+ def description(self) -> pulumi.Output[Optional[str]]:
1227
+ """
1228
+ An optional description of this resource.
1229
+ """
1230
+ return pulumi.get(self, "description")
1231
+
1232
+ @property
1233
+ @pulumi.getter
1234
+ def dns(self) -> pulumi.Output[str]:
1235
+ """
1236
+ Comma separated list of DNS server IP addresses for the Active Directory domain.
1237
+ """
1238
+ return pulumi.get(self, "dns")
1239
+
1240
+ @property
1241
+ @pulumi.getter
1242
+ def domain(self) -> pulumi.Output[str]:
1243
+ """
1244
+ Fully qualified domain name for the Active Directory domain.
1245
+ """
1246
+ return pulumi.get(self, "domain")
1247
+
1248
+ @property
1249
+ @pulumi.getter(name="effectiveLabels")
1250
+ def effective_labels(self) -> pulumi.Output[Mapping[str, str]]:
1251
+ """
1252
+ All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
1253
+ """
1254
+ return pulumi.get(self, "effective_labels")
1255
+
1256
+ @property
1257
+ @pulumi.getter(name="encryptDcConnections")
1258
+ def encrypt_dc_connections(self) -> pulumi.Output[Optional[bool]]:
1259
+ """
1260
+ If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
1261
+ """
1262
+ return pulumi.get(self, "encrypt_dc_connections")
1263
+
1264
+ @property
1265
+ @pulumi.getter(name="kdcHostname")
1266
+ def kdc_hostname(self) -> pulumi.Output[Optional[str]]:
1267
+ """
1268
+ Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
1269
+ """
1270
+ return pulumi.get(self, "kdc_hostname")
1271
+
1272
+ @property
1273
+ @pulumi.getter(name="kdcIp")
1274
+ def kdc_ip(self) -> pulumi.Output[Optional[str]]:
1275
+ """
1276
+ IP address of the Active Directory server used as Kerberos Key Distribution Center.
1277
+ """
1278
+ return pulumi.get(self, "kdc_ip")
1279
+
1280
+ @property
1281
+ @pulumi.getter
1282
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1283
+ """
1284
+ Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
1285
+
1286
+ **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
1287
+ Please refer to the field `effective_labels` for all of the labels present on the resource.
1288
+ """
1289
+ return pulumi.get(self, "labels")
1290
+
1291
+ @property
1292
+ @pulumi.getter(name="ldapSigning")
1293
+ def ldap_signing(self) -> pulumi.Output[Optional[bool]]:
1294
+ """
1295
+ Specifies whether or not the LDAP traffic needs to be signed.
1296
+ """
1297
+ return pulumi.get(self, "ldap_signing")
1298
+
1299
+ @property
1300
+ @pulumi.getter
1301
+ def location(self) -> pulumi.Output[str]:
1302
+ """
1303
+ Name of the region for the policy to apply to.
1304
+ """
1305
+ return pulumi.get(self, "location")
1306
+
1307
+ @property
1308
+ @pulumi.getter
1309
+ def name(self) -> pulumi.Output[str]:
1310
+ """
1311
+ The resource name of the Active Directory pool. Needs to be unique per location.
1312
+
1313
+
1314
+ - - -
1315
+ """
1316
+ return pulumi.get(self, "name")
1317
+
1318
+ @property
1319
+ @pulumi.getter(name="netBiosPrefix")
1320
+ def net_bios_prefix(self) -> pulumi.Output[str]:
1321
+ """
1322
+ NetBIOS name prefix of the server to be created.
1323
+ A five-character random ID is generated automatically, for example, -6f9a, and appended to the prefix. The full UNC share path will have the following format:
1324
+ `\\\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\\SHARE_NAME`
1325
+ """
1326
+ return pulumi.get(self, "net_bios_prefix")
1327
+
1328
+ @property
1329
+ @pulumi.getter(name="nfsUsersWithLdap")
1330
+ def nfs_users_with_ldap(self) -> pulumi.Output[Optional[bool]]:
1331
+ """
1332
+ Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
1333
+ This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
1334
+ """
1335
+ return pulumi.get(self, "nfs_users_with_ldap")
1336
+
1337
+ @property
1338
+ @pulumi.getter(name="organizationalUnit")
1339
+ def organizational_unit(self) -> pulumi.Output[str]:
1340
+ """
1341
+ Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
1342
+ Defaults to `CN=Computers` if left empty.
1343
+ """
1344
+ return pulumi.get(self, "organizational_unit")
1345
+
1346
+ @property
1347
+ @pulumi.getter
1348
+ def password(self) -> pulumi.Output[str]:
1349
+ """
1350
+ Password for specified username. Note - Manual changes done to the password will not be detected. Terraform will not
1351
+ re-apply the password, unless you use a new password in Terraform.
1352
+ """
1353
+ return pulumi.get(self, "password")
1354
+
1355
+ @property
1356
+ @pulumi.getter
1357
+ def project(self) -> pulumi.Output[str]:
1358
+ """
1359
+ The ID of the project in which the resource belongs.
1360
+ If it is not provided, the provider project is used.
1361
+ """
1362
+ return pulumi.get(self, "project")
1363
+
1364
+ @property
1365
+ @pulumi.getter(name="pulumiLabels")
1366
+ def pulumi_labels(self) -> pulumi.Output[Mapping[str, str]]:
1367
+ """
1368
+ The combination of labels configured directly on the resource
1369
+ and default labels configured on the provider.
1370
+ """
1371
+ return pulumi.get(self, "pulumi_labels")
1372
+
1373
+ @property
1374
+ @pulumi.getter(name="securityOperators")
1375
+ def security_operators(self) -> pulumi.Output[Optional[Sequence[str]]]:
1376
+ """
1377
+ Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
1378
+ """
1379
+ return pulumi.get(self, "security_operators")
1380
+
1381
+ @property
1382
+ @pulumi.getter
1383
+ def site(self) -> pulumi.Output[Optional[str]]:
1384
+ """
1385
+ Specifies an Active Directory site to manage domain controller selection.
1386
+ Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
1387
+ """
1388
+ return pulumi.get(self, "site")
1389
+
1390
+ @property
1391
+ @pulumi.getter
1392
+ def state(self) -> pulumi.Output[str]:
1393
+ """
1394
+ The state of the Active Directory policy (not the Active Directory itself).
1395
+ """
1396
+ return pulumi.get(self, "state")
1397
+
1398
+ @property
1399
+ @pulumi.getter(name="stateDetails")
1400
+ def state_details(self) -> pulumi.Output[str]:
1401
+ """
1402
+ The state details of the Active Directory.
1403
+ """
1404
+ return pulumi.get(self, "state_details")
1405
+
1406
+ @property
1407
+ @pulumi.getter
1408
+ def username(self) -> pulumi.Output[str]:
1409
+ """
1410
+ Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
1411
+ """
1412
+ return pulumi.get(self, "username")
1413
+