Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.netapp.kotlin
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.netapp.ActiveDirectoryArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* ActiveDirectory is the public representation of the active directory config.
* To get more information about activeDirectory, see:
* * [API documentation](https://cloud.google.com/netapp/volumes/docs/reference/rest/v1/projects.locations.activeDirectories)
* * How-to Guides
* * [Official Documentation](https://cloud.google.com/netapp/volumes/docs/configure-and-use/active-directory/about-ad)
* ## Example Usage
* ### Netapp Active Directory Full
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
* const testActiveDirectoryFull = new gcp.netapp.ActiveDirectory("test_active_directory_full", {
* name: "test-active-directory-full",
* location: "us-central1",
* domain: "ad.internal",
* dns: "172.30.64.3",
* netBiosPrefix: "smbserver",
* username: "user",
* password: "pass",
* aesEncryption: false,
* backupOperators: [
* "test1",
* "test2",
* ],
* description: "ActiveDirectory is the public representation of the active directory config.",
* encryptDcConnections: false,
* kdcHostname: "hostname",
* kdcIp: "10.10.0.11",
* labels: {
* foo: "bar",
* },
* ldapSigning: false,
* nfsUsersWithLdap: false,
* organizationalUnit: "CN=Computers",
* securityOperators: [
* "test1",
* "test2",
* ],
* site: "test-site",
* });
* ```
* ```python
* import pulumi
* import pulumi_gcp as gcp
* test_active_directory_full = gcp.netapp.ActiveDirectory("test_active_directory_full",
* name="test-active-directory-full",
* location="us-central1",
* domain="ad.internal",
* dns="172.30.64.3",
* net_bios_prefix="smbserver",
* username="user",
* password="pass",
* aes_encryption=False,
* backup_operators=[
* "test1",
* "test2",
* ],
* description="ActiveDirectory is the public representation of the active directory config.",
* encrypt_dc_connections=False,
* kdc_hostname="hostname",
* kdc_ip="10.10.0.11",
* labels={
* "foo": "bar",
* },
* ldap_signing=False,
* nfs_users_with_ldap=False,
* organizational_unit="CN=Computers",
* security_operators=[
* "test1",
* "test2",
* ],
* site="test-site")
* ```
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using Gcp = Pulumi.Gcp;
* return await Deployment.RunAsync(() =>
* {
* var testActiveDirectoryFull = new Gcp.Netapp.ActiveDirectory("test_active_directory_full", new()
* {
* Name = "test-active-directory-full",
* Location = "us-central1",
* Domain = "ad.internal",
* Dns = "172.30.64.3",
* NetBiosPrefix = "smbserver",
* Username = "user",
* Password = "pass",
* AesEncryption = false,
* BackupOperators = new[]
* {
* "test1",
* "test2",
* },
* Description = "ActiveDirectory is the public representation of the active directory config.",
* EncryptDcConnections = false,
* KdcHostname = "hostname",
* KdcIp = "10.10.0.11",
* Labels =
* {
* { "foo", "bar" },
* },
* LdapSigning = false,
* NfsUsersWithLdap = false,
* OrganizationalUnit = "CN=Computers",
* SecurityOperators = new[]
* {
* "test1",
* "test2",
* },
* Site = "test-site",
* });
* });
* ```
* ```go
* package main
* import (
* "github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/netapp"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := netapp.NewActiveDirectory(ctx, "test_active_directory_full", &netapp.ActiveDirectoryArgs{
* Name: pulumi.String("test-active-directory-full"),
* Location: pulumi.String("us-central1"),
* Domain: pulumi.String("ad.internal"),
* Dns: pulumi.String("172.30.64.3"),
* NetBiosPrefix: pulumi.String("smbserver"),
* Username: pulumi.String("user"),
* Password: pulumi.String("pass"),
* AesEncryption: pulumi.Bool(false),
* BackupOperators: pulumi.StringArray{
* pulumi.String("test1"),
* pulumi.String("test2"),
* },
* Description: pulumi.String("ActiveDirectory is the public representation of the active directory config."),
* EncryptDcConnections: pulumi.Bool(false),
* KdcHostname: pulumi.String("hostname"),
* KdcIp: pulumi.String("10.10.0.11"),
* Labels: pulumi.StringMap{
* "foo": pulumi.String("bar"),
* },
* LdapSigning: pulumi.Bool(false),
* NfsUsersWithLdap: pulumi.Bool(false),
* OrganizationalUnit: pulumi.String("CN=Computers"),
* SecurityOperators: pulumi.StringArray{
* pulumi.String("test1"),
* pulumi.String("test2"),
* },
* Site: pulumi.String("test-site"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.gcp.netapp.ActiveDirectory;
* import com.pulumi.gcp.netapp.ActiveDirectoryArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }
* public static void stack(Context ctx) {
* var testActiveDirectoryFull = new ActiveDirectory("testActiveDirectoryFull", ActiveDirectoryArgs.builder()
* .name("test-active-directory-full")
* .location("us-central1")
* .domain("ad.internal")
* .dns("172.30.64.3")
* .netBiosPrefix("smbserver")
* .username("user")
* .password("pass")
* .aesEncryption(false)
* .backupOperators(
* "test1",
* "test2")
* .description("ActiveDirectory is the public representation of the active directory config.")
* .encryptDcConnections(false)
* .kdcHostname("hostname")
* .kdcIp("10.10.0.11")
* .labels(Map.of("foo", "bar"))
* .ldapSigning(false)
* .nfsUsersWithLdap(false)
* .organizationalUnit("CN=Computers")
* .securityOperators(
* "test1",
* "test2")
* .site("test-site")
* .build());
* }
* }
* ```
* ```yaml
* resources:
* testActiveDirectoryFull:
* type: gcp:netapp:ActiveDirectory
* name: test_active_directory_full
* properties:
* name: test-active-directory-full
* location: us-central1
* domain: ad.internal
* dns: 172.30.64.3
* netBiosPrefix: smbserver
* username: user
* password: pass
* aesEncryption: false
* backupOperators:
* - test1
* - test2
* description: ActiveDirectory is the public representation of the active directory config.
* encryptDcConnections: false
* kdcHostname: hostname
* kdcIp: 10.10.0.11
* labels:
* foo: bar
* ldapSigning: false
* nfsUsersWithLdap: false
* organizationalUnit: CN=Computers
* securityOperators:
* - test1
* - test2
* site: test-site
* ```
*
* ## Import
* activeDirectory can be imported using any of these accepted formats:
* * `projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}`
* * `{{project}}/{{location}}/{{name}}`
* * `{{location}}/{{name}}`
* When using the `pulumi import` command, activeDirectory can be imported using one of the formats above. For example:
* ```sh
* $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default projects/{{project}}/locations/{{location}}/activeDirectories/{{name}}
* ```
* ```sh
* $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default {{project}}/{{location}}/{{name}}
* ```
* ```sh
* $ pulumi import gcp:netapp/activeDirectory:ActiveDirectory default {{location}}/{{name}}
* ```
* @property aesEncryption Enables AES-128 and AES-256 encryption for Kerberos-based communication with Active Directory.
* @property backupOperators 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.
* @property description An optional description of this resource.
* @property dns Comma separated list of DNS server IP addresses for the Active Directory domain.
* @property domain Fully qualified domain name for the Active Directory domain.
* @property encryptDcConnections If enabled, traffic between the SMB server to Domain Controller (DC) will be encrypted.
* @property kdcHostname Hostname of the Active Directory server used as Kerberos Key Distribution Center. Only requried for volumes using kerberized NFSv4.1
* @property kdcIp IP address of the Active Directory server used as Kerberos Key Distribution Center.
* @property labels Labels as key value pairs. Example: `{ "owner": "Bob", "department": "finance", "purpose": "testing" }`.
* **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
* Please refer to the field `effective_labels` for all of the labels present on the resource.
* @property ldapSigning Specifies whether or not the LDAP traffic needs to be signed.
* @property location Name of the region for the policy to apply to.
* @property name The resource name of the Active Directory pool. Needs to be unique per location.
* - - -
* @property netBiosPrefix NetBIOS name prefix of the server to be created.
* 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:
* `\\NetBIOS_PREFIX-ABCD.DOMAIN_NAME\SHARE_NAME`
* @property nfsUsersWithLdap Local UNIX users on clients without valid user information in Active Directory are blocked from access to LDAP enabled volumes.
* This option can be used to temporarily switch such volumes to AUTH_SYS authentication (user ID + 1-16 groups).
* @property organizationalUnit Name of the Organizational Unit where you intend to create the computer account for NetApp Volumes.
* Defaults to `CN=Computers` if left empty.
* @property password
* @property project The ID of the project in which the resource belongs.
* If it is not provided, the provider project is used.
* @property securityOperators Domain accounts that require elevated privileges such as `SeSecurityPrivilege` to manage security logs. Comma-separated list.
* @property site Specifies an Active Directory site to manage domain controller selection.
* Use when Active Directory domain controllers in multiple regions are configured. Defaults to `Default-First-Site-Name` if left empty.
* @property username Username for the Active Directory account with permissions to create the compute account within the specified organizational unit.
*/
public data class ActiveDirectoryArgs(
public val aesEncryption: Output? = null,
public val backupOperators: Output>? = null,
public val description: Output? = null,
public val dns: Output? = null,
public val domain: Output? = null,
public val encryptDcConnections: Output? = null,
public val kdcHostname: Output? = null,
public val kdcIp: Output? = null,
public val labels: Output