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

com.pulumi.azurenative.aad.DomainService Maven / Gradle / Ivy

There is a newer version: 2.78.0
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.azurenative.aad;

import com.pulumi.azurenative.Utilities;
import com.pulumi.azurenative.aad.DomainServiceArgs;
import com.pulumi.azurenative.aad.outputs.ConfigDiagnosticsResponse;
import com.pulumi.azurenative.aad.outputs.DomainSecuritySettingsResponse;
import com.pulumi.azurenative.aad.outputs.LdapsSettingsResponse;
import com.pulumi.azurenative.aad.outputs.MigrationPropertiesResponse;
import com.pulumi.azurenative.aad.outputs.NotificationSettingsResponse;
import com.pulumi.azurenative.aad.outputs.ReplicaSetResponse;
import com.pulumi.azurenative.aad.outputs.ResourceForestSettingsResponse;
import com.pulumi.azurenative.aad.outputs.SystemDataResponse;
import com.pulumi.core.Alias;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;

/**
 * Domain service.
 * Azure REST API version: 2022-12-01. Prior API version in Azure Native 1.x: 2021-03-01.
 * 
 * Other available API versions: 2017-06-01.
 * 
 * ## Example Usage
 * ### Create Domain Service
 * 
 * 
 * {@code
 * package generated_program;
 * 
 * import com.pulumi.Context;
 * import com.pulumi.Pulumi;
 * import com.pulumi.core.Output;
 * import com.pulumi.azurenative.aad.DomainService;
 * import com.pulumi.azurenative.aad.DomainServiceArgs;
 * import com.pulumi.azurenative.aad.inputs.DomainSecuritySettingsArgs;
 * import com.pulumi.azurenative.aad.inputs.LdapsSettingsArgs;
 * import com.pulumi.azurenative.aad.inputs.NotificationSettingsArgs;
 * import com.pulumi.azurenative.aad.inputs.ReplicaSetArgs;
 * 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 }{{@code
 *     public static void main(String[] args) }{{@code
 *         Pulumi.run(App::stack);
 *     }}{@code
 * 
 *     public static void stack(Context ctx) }{{@code
 *         var domainService = new DomainService("domainService", DomainServiceArgs.builder()
 *             .domainName("TestDomainService.com")
 *             .domainSecuritySettings(DomainSecuritySettingsArgs.builder()
 *                 .ntlmV1("Enabled")
 *                 .syncNtlmPasswords("Enabled")
 *                 .tlsV1("Disabled")
 *                 .build())
 *             .domainServiceName("TestDomainService.com")
 *             .filteredSync("Enabled")
 *             .ldapsSettings(LdapsSettingsArgs.builder()
 *                 .externalAccess("Enabled")
 *                 .ldaps("Enabled")
 *                 .pfxCertificate("MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...")
 *                 .pfxCertificatePassword("")
 *                 .build())
 *             .notificationSettings(NotificationSettingsArgs.builder()
 *                 .additionalRecipients(                
 *                     "jicha}{@literal @}{@code microsoft.com",
 *                     "caalmont}{@literal @}{@code microsoft.com")
 *                 .notifyDcAdmins("Enabled")
 *                 .notifyGlobalAdmins("Enabled")
 *                 .build())
 *             .replicaSets(ReplicaSetArgs.builder()
 *                 .location("West US")
 *                 .subnetId("/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS")
 *                 .build())
 *             .resourceGroupName("TestResourceGroup")
 *             .build());
 * 
 *     }}{@code
 * }}{@code
 * 
 * }
 * 
* * ## Import * * An existing resource can be imported using its type token, name, and identifier, e.g. * * ```sh * $ pulumi import azure-native:aad:DomainService TestDomainService.com /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AAD/domainServices/{domainServiceName} * ``` * */ @ResourceType(type="azure-native:aad:DomainService") public class DomainService extends com.pulumi.resources.CustomResource { /** * Configuration diagnostics data containing latest execution from client. * */ @Export(name="configDiagnostics", refs={ConfigDiagnosticsResponse.class}, tree="[0]") private Output configDiagnostics; /** * @return Configuration diagnostics data containing latest execution from client. * */ public Output> configDiagnostics() { return Codegen.optional(this.configDiagnostics); } /** * Deployment Id * */ @Export(name="deploymentId", refs={String.class}, tree="[0]") private Output deploymentId; /** * @return Deployment Id * */ public Output deploymentId() { return this.deploymentId; } /** * Domain Configuration Type * */ @Export(name="domainConfigurationType", refs={String.class}, tree="[0]") private Output domainConfigurationType; /** * @return Domain Configuration Type * */ public Output> domainConfigurationType() { return Codegen.optional(this.domainConfigurationType); } /** * The name of the Azure domain that the user would like to deploy Domain Services to. * */ @Export(name="domainName", refs={String.class}, tree="[0]") private Output domainName; /** * @return The name of the Azure domain that the user would like to deploy Domain Services to. * */ public Output> domainName() { return Codegen.optional(this.domainName); } /** * DomainSecurity Settings * */ @Export(name="domainSecuritySettings", refs={DomainSecuritySettingsResponse.class}, tree="[0]") private Output domainSecuritySettings; /** * @return DomainSecurity Settings * */ public Output> domainSecuritySettings() { return Codegen.optional(this.domainSecuritySettings); } /** * Resource etag * */ @Export(name="etag", refs={String.class}, tree="[0]") private Output etag; /** * @return Resource etag * */ public Output> etag() { return Codegen.optional(this.etag); } /** * Enabled or Disabled flag to turn on Group-based filtered sync * */ @Export(name="filteredSync", refs={String.class}, tree="[0]") private Output filteredSync; /** * @return Enabled or Disabled flag to turn on Group-based filtered sync * */ public Output> filteredSync() { return Codegen.optional(this.filteredSync); } /** * Secure LDAP Settings * */ @Export(name="ldapsSettings", refs={LdapsSettingsResponse.class}, tree="[0]") private Output ldapsSettings; /** * @return Secure LDAP Settings * */ public Output> ldapsSettings() { return Codegen.optional(this.ldapsSettings); } /** * Resource location * */ @Export(name="location", refs={String.class}, tree="[0]") private Output location; /** * @return Resource location * */ public Output> location() { return Codegen.optional(this.location); } /** * Migration Properties * */ @Export(name="migrationProperties", refs={MigrationPropertiesResponse.class}, tree="[0]") private Output migrationProperties; /** * @return Migration Properties * */ public Output migrationProperties() { return this.migrationProperties; } /** * Resource name * */ @Export(name="name", refs={String.class}, tree="[0]") private Output name; /** * @return Resource name * */ public Output name() { return this.name; } /** * Notification Settings * */ @Export(name="notificationSettings", refs={NotificationSettingsResponse.class}, tree="[0]") private Output notificationSettings; /** * @return Notification Settings * */ public Output> notificationSettings() { return Codegen.optional(this.notificationSettings); } /** * the current deployment or provisioning state, which only appears in the response. * */ @Export(name="provisioningState", refs={String.class}, tree="[0]") private Output provisioningState; /** * @return the current deployment or provisioning state, which only appears in the response. * */ public Output provisioningState() { return this.provisioningState; } /** * List of ReplicaSets * */ @Export(name="replicaSets", refs={List.class,ReplicaSetResponse.class}, tree="[0,1]") private Output> replicaSets; /** * @return List of ReplicaSets * */ public Output>> replicaSets() { return Codegen.optional(this.replicaSets); } /** * Resource Forest Settings * */ @Export(name="resourceForestSettings", refs={ResourceForestSettingsResponse.class}, tree="[0]") private Output resourceForestSettings; /** * @return Resource Forest Settings * */ public Output> resourceForestSettings() { return Codegen.optional(this.resourceForestSettings); } /** * Sku Type * */ @Export(name="sku", refs={String.class}, tree="[0]") private Output sku; /** * @return Sku Type * */ public Output> sku() { return Codegen.optional(this.sku); } /** * The unique sync application id of the Azure AD Domain Services deployment. * */ @Export(name="syncApplicationId", refs={String.class}, tree="[0]") private Output syncApplicationId; /** * @return The unique sync application id of the Azure AD Domain Services deployment. * */ public Output syncApplicationId() { return this.syncApplicationId; } /** * SyncOwner ReplicaSet Id * */ @Export(name="syncOwner", refs={String.class}, tree="[0]") private Output syncOwner; /** * @return SyncOwner ReplicaSet Id * */ public Output syncOwner() { return this.syncOwner; } /** * All or CloudOnly, All users in AAD are synced to AAD DS domain or only users actively syncing in the cloud * */ @Export(name="syncScope", refs={String.class}, tree="[0]") private Output syncScope; /** * @return All or CloudOnly, All users in AAD are synced to AAD DS domain or only users actively syncing in the cloud * */ public Output> syncScope() { return Codegen.optional(this.syncScope); } /** * The system meta data relating to this resource. * */ @Export(name="systemData", refs={SystemDataResponse.class}, tree="[0]") private Output systemData; /** * @return The system meta data relating to this resource. * */ public Output systemData() { return this.systemData; } /** * Resource tags * */ @Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]") private Output> tags; /** * @return Resource tags * */ public Output>> tags() { return Codegen.optional(this.tags); } /** * Azure Active Directory Tenant Id * */ @Export(name="tenantId", refs={String.class}, tree="[0]") private Output tenantId; /** * @return Azure Active Directory Tenant Id * */ public Output tenantId() { return this.tenantId; } /** * Resource type * */ @Export(name="type", refs={String.class}, tree="[0]") private Output type; /** * @return Resource type * */ public Output type() { return this.type; } /** * Data Model Version * */ @Export(name="version", refs={Integer.class}, tree="[0]") private Output version; /** * @return Data Model Version * */ public Output version() { return this.version; } /** * * @param name The _unique_ name of the resulting resource. */ public DomainService(java.lang.String name) { this(name, DomainServiceArgs.Empty); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. */ public DomainService(java.lang.String name, DomainServiceArgs args) { this(name, args, null); } /** * * @param name The _unique_ name of the resulting resource. * @param args The arguments to use to populate this resource's properties. * @param options A bag of options that control this resource's behavior. */ public DomainService(java.lang.String name, DomainServiceArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:aad:DomainService", name, makeArgs(args, options), makeResourceOptions(options, Codegen.empty()), false); } private DomainService(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { super("azure-native:aad:DomainService", name, null, makeResourceOptions(options, id), false); } private static DomainServiceArgs makeArgs(DomainServiceArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options) { if (options != null && options.getUrn().isPresent()) { return null; } return args == null ? DomainServiceArgs.Empty : args; } private static com.pulumi.resources.CustomResourceOptions makeResourceOptions(@Nullable com.pulumi.resources.CustomResourceOptions options, @Nullable Output id) { var defaultOptions = com.pulumi.resources.CustomResourceOptions.builder() .version(Utilities.getVersion()) .aliases(List.of( Output.of(Alias.builder().type("azure-native:aad/v20170101:DomainService").build()), Output.of(Alias.builder().type("azure-native:aad/v20170601:DomainService").build()), Output.of(Alias.builder().type("azure-native:aad/v20200101:DomainService").build()), Output.of(Alias.builder().type("azure-native:aad/v20210301:DomainService").build()), Output.of(Alias.builder().type("azure-native:aad/v20210501:DomainService").build()), Output.of(Alias.builder().type("azure-native:aad/v20220901:DomainService").build()), Output.of(Alias.builder().type("azure-native:aad/v20221201:DomainService").build()) )) .build(); return com.pulumi.resources.CustomResourceOptions.merge(defaultOptions, options, id); } /** * Get an existing Host resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param options Optional settings to control the behavior of the CustomResource. */ public static DomainService get(java.lang.String name, Output id, @Nullable com.pulumi.resources.CustomResourceOptions options) { return new DomainService(name, id, options); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy