> ## Documentation Index
> Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Java: DataTerraformRemoteStateAzurermConfig

> CDKTN Core API Reference for DataTerraformRemoteStateAzurermConfig in Java.

## Initializer <a name="Initializer" id="cdktn.DataTerraformRemoteStateAzurermConfig.Initializer" />

```java theme={null}
import io.cdktn.cdktn.DataTerraformRemoteStateAzurermConfig;

DataTerraformRemoteStateAzurermConfig.builder()
//  .defaults(java.util.Map<java.lang.String, java.lang.Object>)
//  .workspace(java.lang.String)
    .containerName(java.lang.String)
    .key(java.lang.String)
    .storageAccountName(java.lang.String)
//  .accessKey(java.lang.String)
//  .clientCertificatePassword(java.lang.String)
//  .clientCertificatePath(java.lang.String)
//  .clientId(java.lang.String)
//  .clientSecret(java.lang.String)
//  .endpoint(java.lang.String)
//  .environment(java.lang.String)
//  .metadataHost(java.lang.String)
//  .msiEndpoint(java.lang.String)
//  .oidcRequestToken(java.lang.String)
//  .oidcRequestUrl(java.lang.String)
//  .oidcToken(java.lang.String)
//  .oidcTokenFilePath(java.lang.String)
//  .resourceGroupName(java.lang.String)
//  .sasToken(java.lang.String)
//  .snapshot(java.lang.Boolean)
//  .subscriptionId(java.lang.String)
//  .tenantId(java.lang.String)
//  .useAzureadAuth(java.lang.Boolean)
//  .useMicrosoftGraph(java.lang.Boolean)
//  .useMsi(java.lang.Boolean)
//  .useOidc(java.lang.Boolean)
    .build();
```

## Properties <a name="Properties" id="Properties" />

| **Name**                                                                                                                             | **Type**                                                          | **Description**                                                                                                                                                                                                                                         |
| ------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.defaults">defaults</a></code>                                   | <code>java.util.Map\< java.lang.String, java.lang.Object ></code> | *No description.*                                                                                                                                                                                                                                       |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.workspace">workspace</a></code>                                 | <code>java.lang.String</code>                                     | *No description.*                                                                                                                                                                                                                                       |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.containerName">containerName</a></code>                         | <code>java.lang.String</code>                                     | (Required) The Name of the Storage Container within the Storage Account.                                                                                                                                                                                |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.key">key</a></code>                                             | <code>java.lang.String</code>                                     | (Required) The name of the Blob used to retrieve/store Terraform's State file inside the Storage Container.                                                                                                                                             |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.storageAccountName">storageAccountName</a></code>               | <code>java.lang.String</code>                                     | (Required) The Name of the Storage Account.                                                                                                                                                                                                             |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.accessKey">accessKey</a></code>                                 | <code>java.lang.String</code>                                     | access\_key - (Optional) The Access Key used to access the Blob Storage Account.                                                                                                                                                                        |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.clientCertificatePassword">clientCertificatePassword</a></code> | <code>java.lang.String</code>                                     | (Optional) The password associated with the Client Certificate specified in client\_certificate\_path.                                                                                                                                                  |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.clientCertificatePath">clientCertificatePath</a></code>         | <code>java.lang.String</code>                                     | (Optional) The path to the PFX file used as the Client Certificate when authenticating as a Service Principal.                                                                                                                                          |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.clientId">clientId</a></code>                                   | <code>java.lang.String</code>                                     | (Optional) The Client ID of the Service Principal.                                                                                                                                                                                                      |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.clientSecret">clientSecret</a></code>                           | <code>java.lang.String</code>                                     | (Optional) The Client Secret of the Service Principal.                                                                                                                                                                                                  |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.endpoint">endpoint</a></code>                                   | <code>java.lang.String</code>                                     | (Optional) The Custom Endpoint for Azure Resource Manager. This can also be sourced from the ARM\_ENDPOINT environment variable.                                                                                                                        |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.environment">environment</a></code>                             | <code>java.lang.String</code>                                     | (Optional) The Azure Environment which should be used.                                                                                                                                                                                                  |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.metadataHost">metadataHost</a></code>                           | <code>java.lang.String</code>                                     | (Optional) The Hostname of the Azure Metadata Service (for example management.azure.com), used to obtain the Cloud Environment when using a Custom Azure Environment. This can also be sourced from the ARM\_METADATA\_HOSTNAME Environment Variable.). |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.msiEndpoint">msiEndpoint</a></code>                             | <code>java.lang.String</code>                                     | (Optional) The path to a custom Managed Service Identity endpoint which is automatically determined if not specified.                                                                                                                                   |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcRequestToken">oidcRequestToken</a></code>                   | <code>java.lang.String</code>                                     | (Optional) The bearer token for the request to the OIDC provider.                                                                                                                                                                                       |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcRequestUrl">oidcRequestUrl</a></code>                       | <code>java.lang.String</code>                                     | (Optional) The URL for the OIDC provider from which to request an ID token.                                                                                                                                                                             |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcToken">oidcToken</a></code>                                 | <code>java.lang.String</code>                                     | (Optional) The ID token when authenticating using OpenID Connect (OIDC).                                                                                                                                                                                |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcTokenFilePath">oidcTokenFilePath</a></code>                 | <code>java.lang.String</code>                                     | (Optional) The path to a file containing an ID token when authenticating using OpenID Connect (OIDC).                                                                                                                                                   |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.resourceGroupName">resourceGroupName</a></code>                 | <code>java.lang.String</code>                                     | (Required) The Name of the Resource Group in which the Storage Account exists.                                                                                                                                                                          |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.sasToken">sasToken</a></code>                                   | <code>java.lang.String</code>                                     | (Optional) The SAS Token used to access the Blob Storage Account.                                                                                                                                                                                       |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.snapshot">snapshot</a></code>                                   | <code>java.lang.Boolean</code>                                    | (Optional) Should the Blob used to store the Terraform Statefile be snapshotted before use?                                                                                                                                                             |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.subscriptionId">subscriptionId</a></code>                       | <code>java.lang.String</code>                                     | (Optional) The Subscription ID in which the Storage Account exists.                                                                                                                                                                                     |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.tenantId">tenantId</a></code>                                   | <code>java.lang.String</code>                                     | (Optional) The Tenant ID in which the Subscription exists.                                                                                                                                                                                              |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.useAzureadAuth">useAzureadAuth</a></code>                       | <code>java.lang.Boolean</code>                                    | (Optional) Should AzureAD Authentication be used to access the Blob Storage Account.                                                                                                                                                                    |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.useMicrosoftGraph">useMicrosoftGraph</a></code>                 | <code>java.lang.Boolean</code>                                    | (Optional) Should MSAL be used for authentication instead of ADAL, and should Microsoft Graph be used instead of Azure Active Directory Graph?                                                                                                          |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.useMsi">useMsi</a></code>                                       | <code>java.lang.Boolean</code>                                    | (Optional) Should Managed Service Identity authentication be used?                                                                                                                                                                                      |
| <code><a href="#cdktn.DataTerraformRemoteStateAzurermConfig.property.useOidc">useOidc</a></code>                                     | <code>java.lang.Boolean</code>                                    | (Optional) Should OIDC authentication be used? This can also be sourced from the ARM\_USE\_OIDC environment variable.                                                                                                                                   |

***

### `defaults`<sup>Optional</sup> <a name="defaults" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.defaults" />

```java theme={null}
public java.util.Map<java.lang.String, java.lang.Object> getDefaults();
```

* *Type:* java.util.Map\< java.lang.String, java.lang.Object >

***

### `workspace`<sup>Optional</sup> <a name="workspace" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.workspace" />

```java theme={null}
public java.lang.String getWorkspace();
```

* *Type:* java.lang.String

***

### `containerName`<sup>Required</sup> <a name="containerName" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.containerName" />

```java theme={null}
public java.lang.String getContainerName();
```

* *Type:* java.lang.String

(Required) The Name of the Storage Container within the Storage Account.

***

### `key`<sup>Required</sup> <a name="key" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.key" />

```java theme={null}
public java.lang.String getKey();
```

* *Type:* java.lang.String

(Required) The name of the Blob used to retrieve/store Terraform's State file inside the Storage Container.

***

### `storageAccountName`<sup>Required</sup> <a name="storageAccountName" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.storageAccountName" />

```java theme={null}
public java.lang.String getStorageAccountName();
```

* *Type:* java.lang.String

(Required) The Name of the Storage Account.

***

### `accessKey`<sup>Optional</sup> <a name="accessKey" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.accessKey" />

```java theme={null}
public java.lang.String getAccessKey();
```

* *Type:* java.lang.String

access\_key - (Optional) The Access Key used to access the Blob Storage Account.

This can also be sourced from the ARM\_ACCESS\_KEY environment variable.

***

### `clientCertificatePassword`<sup>Optional</sup> <a name="clientCertificatePassword" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.clientCertificatePassword" />

```java theme={null}
public java.lang.String getClientCertificatePassword();
```

* *Type:* java.lang.String

(Optional) The password associated with the Client Certificate specified in client\_certificate\_path.

This can also be sourced from the
ARM\_CLIENT\_CERTIFICATE\_PASSWORD environment variable.

***

### `clientCertificatePath`<sup>Optional</sup> <a name="clientCertificatePath" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.clientCertificatePath" />

```java theme={null}
public java.lang.String getClientCertificatePath();
```

* *Type:* java.lang.String

(Optional) The path to the PFX file used as the Client Certificate when authenticating as a Service Principal.

This can also be sourced from the
ARM\_CLIENT\_CERTIFICATE\_PATH environment variable.

***

### `clientId`<sup>Optional</sup> <a name="clientId" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.clientId" />

```java theme={null}
public java.lang.String getClientId();
```

* *Type:* java.lang.String

(Optional) The Client ID of the Service Principal.

This can also be sourced from the ARM\_CLIENT\_ID environment variable.

***

### `clientSecret`<sup>Optional</sup> <a name="clientSecret" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.clientSecret" />

```java theme={null}
public java.lang.String getClientSecret();
```

* *Type:* java.lang.String

(Optional) The Client Secret of the Service Principal.

This can also be sourced from the ARM\_CLIENT\_SECRET environment variable.

***

### `endpoint`<sup>Optional</sup> <a name="endpoint" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.endpoint" />

```java theme={null}
public java.lang.String getEndpoint();
```

* *Type:* java.lang.String

(Optional) The Custom Endpoint for Azure Resource Manager. This can also be sourced from the ARM\_ENDPOINT environment variable.

NOTE: An endpoint should only be configured when using Azure Stack.

***

### `environment`<sup>Optional</sup> <a name="environment" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.environment" />

```java theme={null}
public java.lang.String getEnvironment();
```

* *Type:* java.lang.String

(Optional) The Azure Environment which should be used.

This can also be sourced from the ARM\_ENVIRONMENT environment variable.
Possible values are public, china, german, stack and usgovernment. Defaults to public.

***

### `metadataHost`<sup>Optional</sup> <a name="metadataHost" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.metadataHost" />

```java theme={null}
public java.lang.String getMetadataHost();
```

* *Type:* java.lang.String

(Optional) The Hostname of the Azure Metadata Service (for example management.azure.com), used to obtain the Cloud Environment when using a Custom Azure Environment. This can also be sourced from the ARM\_METADATA\_HOSTNAME Environment Variable.).

***

### `msiEndpoint`<sup>Optional</sup> <a name="msiEndpoint" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.msiEndpoint" />

```java theme={null}
public java.lang.String getMsiEndpoint();
```

* *Type:* java.lang.String

(Optional) The path to a custom Managed Service Identity endpoint which is automatically determined if not specified.

This can also be sourced from the ARM\_MSI\_ENDPOINT environment variable.

***

### `oidcRequestToken`<sup>Optional</sup> <a name="oidcRequestToken" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcRequestToken" />

```java theme={null}
public java.lang.String getOidcRequestToken();
```

* *Type:* java.lang.String

(Optional) The bearer token for the request to the OIDC provider.

This can
also be sourced from the ARM\_OIDC\_REQUEST\_TOKEN or
ACTIONS\_ID\_TOKEN\_REQUEST\_TOKEN environment variables.

***

### `oidcRequestUrl`<sup>Optional</sup> <a name="oidcRequestUrl" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcRequestUrl" />

```java theme={null}
public java.lang.String getOidcRequestUrl();
```

* *Type:* java.lang.String

(Optional) The URL for the OIDC provider from which to request an ID token.

This can also be sourced from the ARM\_OIDC\_REQUEST\_URL or
ACTIONS\_ID\_TOKEN\_REQUEST\_URL environment variables.

***

### `oidcToken`<sup>Optional</sup> <a name="oidcToken" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcToken" />

```java theme={null}
public java.lang.String getOidcToken();
```

* *Type:* java.lang.String

(Optional) The ID token when authenticating using OpenID Connect (OIDC).

This can also be sourced from the ARM\_OIDC\_TOKEN environment variable.

***

### `oidcTokenFilePath`<sup>Optional</sup> <a name="oidcTokenFilePath" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.oidcTokenFilePath" />

```java theme={null}
public java.lang.String getOidcTokenFilePath();
```

* *Type:* java.lang.String

(Optional) The path to a file containing an ID token when authenticating using OpenID Connect (OIDC).

This can also be sourced from the ARM\_OIDC\_TOKEN\_FILE\_PATH environment variable.

***

### `resourceGroupName`<sup>Optional</sup> <a name="resourceGroupName" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.resourceGroupName" />

```java theme={null}
public java.lang.String getResourceGroupName();
```

* *Type:* java.lang.String

(Required) The Name of the Resource Group in which the Storage Account exists.

***

### `sasToken`<sup>Optional</sup> <a name="sasToken" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.sasToken" />

```java theme={null}
public java.lang.String getSasToken();
```

* *Type:* java.lang.String

(Optional) The SAS Token used to access the Blob Storage Account.

This can also be sourced from the ARM\_SAS\_TOKEN environment variable.

***

### `snapshot`<sup>Optional</sup> <a name="snapshot" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.snapshot" />

```java theme={null}
public java.lang.Boolean getSnapshot();
```

* *Type:* java.lang.Boolean

(Optional) Should the Blob used to store the Terraform Statefile be snapshotted before use?

Defaults to false. This value can also be sourced
from the ARM\_SNAPSHOT environment variable.

***

### `subscriptionId`<sup>Optional</sup> <a name="subscriptionId" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.subscriptionId" />

```java theme={null}
public java.lang.String getSubscriptionId();
```

* *Type:* java.lang.String

(Optional) The Subscription ID in which the Storage Account exists.

This can also be sourced from the ARM\_SUBSCRIPTION\_ID environment variable.

***

### `tenantId`<sup>Optional</sup> <a name="tenantId" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.tenantId" />

```java theme={null}
public java.lang.String getTenantId();
```

* *Type:* java.lang.String

(Optional) The Tenant ID in which the Subscription exists.

This can also be sourced from the ARM\_TENANT\_ID environment variable.

***

### `useAzureadAuth`<sup>Optional</sup> <a name="useAzureadAuth" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.useAzureadAuth" />

```java theme={null}
public java.lang.Boolean getUseAzureadAuth();
```

* *Type:* java.lang.Boolean

(Optional) Should AzureAD Authentication be used to access the Blob Storage Account.

This can also be sourced from the ARM\_USE\_AZUREAD environment
variable.

Note: When using AzureAD for Authentication to Storage you also need to
ensure the Storage Blob Data Owner role is assigned.

***

### `useMicrosoftGraph`<sup>Optional</sup> <a name="useMicrosoftGraph" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.useMicrosoftGraph" />

```java theme={null}
public java.lang.Boolean getUseMicrosoftGraph();
```

* *Type:* java.lang.Boolean

(Optional) Should MSAL be used for authentication instead of ADAL, and should Microsoft Graph be used instead of Azure Active Directory Graph?

Defaults to true.

Note: In Terraform 1.2 the Azure Backend uses MSAL (and Microsoft Graph)
rather than ADAL (and Azure Active Directory Graph) for authentication by
default - you can disable this by setting use\_microsoft\_graph to false.
This setting will be removed in Terraform 1.3, due to Microsoft's
deprecation of ADAL.

***

### `useMsi`<sup>Optional</sup> <a name="useMsi" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.useMsi" />

```java theme={null}
public java.lang.Boolean getUseMsi();
```

* *Type:* java.lang.Boolean

(Optional) Should Managed Service Identity authentication be used?

This can also be sourced from the ARM\_USE\_MSI environment variable.

***

### `useOidc`<sup>Optional</sup> <a name="useOidc" id="cdktn.DataTerraformRemoteStateAzurermConfig.property.useOidc" />

```java theme={null}
public java.lang.Boolean getUseOidc();
```

* *Type:* java.lang.Boolean

(Optional) Should OIDC authentication be used? This can also be sourced from the ARM\_USE\_OIDC environment variable.

Note: When using OIDC for authentication, use\_microsoft\_graph
must be set to true (which is the default).

***
