All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.aws.fsx.outputs.OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

There is a newer version: 6.60.0-alpha.1731982519
Show newest version
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.aws.fsx.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration {
    /**
     * @return A list of up to three IP addresses of DNS servers or domain controllers in the self-managed AD directory.
     * 
     */
    private List dnsIps;
    /**
     * @return The fully qualified domain name of the self-managed AD directory. For example, `corp.example.com`.
     * 
     */
    private String domainName;
    /**
     * @return The name of the domain group whose members are granted administrative privileges for the SVM. The group that you specify must already exist in your domain. Defaults to `Domain Admins`.
     * 
     */
    private @Nullable String fileSystemAdministratorsGroup;
    /**
     * @return The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, `OU=FSx,DC=yourdomain,DC=corp,DC=com`. Only accepts OU as the direct parent of the SVM. If none is provided, the SVM is created in the default location of your self-managed AD directory. To learn more, see [RFC 2253](https://tools.ietf.org/html/rfc2253).
     * 
     */
    private @Nullable String organizationalUnitDistinguishedName;
    /**
     * @return The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
     * 
     */
    private String password;
    /**
     * @return The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
     * 
     */
    private String username;

    private OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration() {}
    /**
     * @return A list of up to three IP addresses of DNS servers or domain controllers in the self-managed AD directory.
     * 
     */
    public List dnsIps() {
        return this.dnsIps;
    }
    /**
     * @return The fully qualified domain name of the self-managed AD directory. For example, `corp.example.com`.
     * 
     */
    public String domainName() {
        return this.domainName;
    }
    /**
     * @return The name of the domain group whose members are granted administrative privileges for the SVM. The group that you specify must already exist in your domain. Defaults to `Domain Admins`.
     * 
     */
    public Optional fileSystemAdministratorsGroup() {
        return Optional.ofNullable(this.fileSystemAdministratorsGroup);
    }
    /**
     * @return The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, `OU=FSx,DC=yourdomain,DC=corp,DC=com`. Only accepts OU as the direct parent of the SVM. If none is provided, the SVM is created in the default location of your self-managed AD directory. To learn more, see [RFC 2253](https://tools.ietf.org/html/rfc2253).
     * 
     */
    public Optional organizationalUnitDistinguishedName() {
        return Optional.ofNullable(this.organizationalUnitDistinguishedName);
    }
    /**
     * @return The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
     * 
     */
    public String password() {
        return this.password;
    }
    /**
     * @return The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
     * 
     */
    public String username() {
        return this.username;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private List dnsIps;
        private String domainName;
        private @Nullable String fileSystemAdministratorsGroup;
        private @Nullable String organizationalUnitDistinguishedName;
        private String password;
        private String username;
        public Builder() {}
        public Builder(OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.dnsIps = defaults.dnsIps;
    	      this.domainName = defaults.domainName;
    	      this.fileSystemAdministratorsGroup = defaults.fileSystemAdministratorsGroup;
    	      this.organizationalUnitDistinguishedName = defaults.organizationalUnitDistinguishedName;
    	      this.password = defaults.password;
    	      this.username = defaults.username;
        }

        @CustomType.Setter
        public Builder dnsIps(List dnsIps) {
            if (dnsIps == null) {
              throw new MissingRequiredPropertyException("OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration", "dnsIps");
            }
            this.dnsIps = dnsIps;
            return this;
        }
        public Builder dnsIps(String... dnsIps) {
            return dnsIps(List.of(dnsIps));
        }
        @CustomType.Setter
        public Builder domainName(String domainName) {
            if (domainName == null) {
              throw new MissingRequiredPropertyException("OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration", "domainName");
            }
            this.domainName = domainName;
            return this;
        }
        @CustomType.Setter
        public Builder fileSystemAdministratorsGroup(@Nullable String fileSystemAdministratorsGroup) {

            this.fileSystemAdministratorsGroup = fileSystemAdministratorsGroup;
            return this;
        }
        @CustomType.Setter
        public Builder organizationalUnitDistinguishedName(@Nullable String organizationalUnitDistinguishedName) {

            this.organizationalUnitDistinguishedName = organizationalUnitDistinguishedName;
            return this;
        }
        @CustomType.Setter
        public Builder password(String password) {
            if (password == null) {
              throw new MissingRequiredPropertyException("OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration", "password");
            }
            this.password = password;
            return this;
        }
        @CustomType.Setter
        public Builder username(String username) {
            if (username == null) {
              throw new MissingRequiredPropertyException("OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration", "username");
            }
            this.username = username;
            return this;
        }
        public OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration build() {
            final var _resultValue = new OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfiguration();
            _resultValue.dnsIps = dnsIps;
            _resultValue.domainName = domainName;
            _resultValue.fileSystemAdministratorsGroup = fileSystemAdministratorsGroup;
            _resultValue.organizationalUnitDistinguishedName = organizationalUnitDistinguishedName;
            _resultValue.password = password;
            _resultValue.username = username;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy