Skip to main content

Initializer

using Io.Cdktn;

new OssBackendConfig {
    string Bucket,
    string AccessKey = null,
    string Acl = null,
    OssAssumeRole AssumeRole = null,
    string AssumeRolePolicy = null,
    string AssumeRoleRoleArn = null,
    double AssumeRoleSessionExpiration = null,
    string AssumeRoleSessionName = null,
    string EcsRoleName = null,
    bool Encrypt = null,
    string Endpoint = null,
    string Key = null,
    string Prefix = null,
    string Profile = null,
    string Region = null,
    string SecretKey = null,
    string SecurityToken = null,
    string SharedCredentialsFile = null,
    string StsEndpoint = null,
    string TablestoreEndpoint = null,
    string TablestoreTable = null
};

Properties

NameTypeDescription
Bucketstring(Required) The name of the OSS bucket.
AccessKeystring(Optional) Alibaba Cloud access key.
Aclstring(Optional) Object ACL to be applied to the state file.
AssumeRoleOssAssumeRoleNo description.
AssumeRolePolicystring(Optional, Available in 1.1.0+) A more restrictive policy to apply to the temporary credentials. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use this policy to grant permissions that exceed those of the role that is being assumed.
AssumeRoleRoleArnstring(Optional, Available in 1.1.0+) The ARN of the role to assume. If ARN is set to an empty string, it does not perform role switching. It supports the environment variable ALICLOUD_ASSUME_ROLE_ARN. Terraform executes configuration on account with provided credentials.
AssumeRoleSessionExpirationdouble(Optional, Available in 1.1.0+) The time after which the established session for assuming role expires. Valid value range: [900-3600] seconds. Default to 3600 (in this case Alibaba Cloud uses its own default value). It supports environment variable ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION.
AssumeRoleSessionNamestring(Optional, Available in 1.1.0+) The session name to use when assuming the role. If omitted, ‘terraform’ is passed to the AssumeRole call as session name. It supports environment variable ALICLOUD_ASSUME_ROLE_SESSION_NAME.
EcsRoleNamestring(Optional, Available in 0.12.14+) The RAM Role Name attached on a ECS instance for API operations. You can retrieve this from the ‘Access Control’ section of the Alibaba Cloud console.
Encryptbool(Optional) Whether to enable server side encryption of the state file.
Endpointstring(Optional) A custom endpoint for the OSS API.
Keystring(Optional) The name of the state file.
Prefixstring(Optional) The path directory of the state file will be stored.
Profilestring(Optional, Available in 0.12.8+) This is the Alibaba Cloud profile name as set in the shared credentials file. It can also be sourced from the ALICLOUD_PROFILE environment variable.
Regionstring(Optional) The region of the OSS bucket.
SecretKeystring(Optional) Alibaba Cloud secret access key.
SecurityTokenstring(Optional) STS access token.
SharedCredentialsFilestring(Optional, Available in 0.12.8+) This is the path to the shared credentials file. It can also be sourced from the ALICLOUD_SHARED_CREDENTIALS_FILE environment variable. If this is not set and a profile is specified, ~/.aliyun/config.json will be used.
StsEndpointstring(Optional, Available in 1.0.11+) Custom endpoint for the AliCloud Security Token Service (STS) API. It supports environment variable ALICLOUD_STS_ENDPOINT.
TablestoreEndpointstring(Optional) A custom endpoint for the TableStore API.
TablestoreTablestring(Optional) A TableStore table for state locking and consistency.

BucketRequired

public string Bucket { get; set; }
  • Type: string
(Required) The name of the OSS bucket.

AccessKeyOptional

public string AccessKey { get; set; }
  • Type: string
(Optional) Alibaba Cloud access key. It supports environment variables ALICLOUD_ACCESS_KEY and ALICLOUD_ACCESS_KEY_ID.

AclOptional

public string Acl { get; set; }
  • Type: string
(Optional) Object ACL to be applied to the state file.

AssumeRoleOptional

  • Deprecated: Use flattened assume role options
public OssAssumeRole AssumeRole { get; set; }

AssumeRolePolicyOptional

public string AssumeRolePolicy { get; set; }
  • Type: string
(Optional, Available in 1.1.0+) A more restrictive policy to apply to the temporary credentials. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use this policy to grant permissions that exceed those of the role that is being assumed.

AssumeRoleRoleArnOptional

public string AssumeRoleRoleArn { get; set; }
  • Type: string
(Optional, Available in 1.1.0+) The ARN of the role to assume. If ARN is set to an empty string, it does not perform role switching. It supports the environment variable ALICLOUD_ASSUME_ROLE_ARN. Terraform executes configuration on account with provided credentials.

AssumeRoleSessionExpirationOptional

public double AssumeRoleSessionExpiration { get; set; }
  • Type: double
(Optional, Available in 1.1.0+) The time after which the established session for assuming role expires. Valid value range: [900-3600] seconds. Default to 3600 (in this case Alibaba Cloud uses its own default value). It supports environment variable ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION.

AssumeRoleSessionNameOptional

public string AssumeRoleSessionName { get; set; }
  • Type: string
(Optional, Available in 1.1.0+) The session name to use when assuming the role. If omitted, ‘terraform’ is passed to the AssumeRole call as session name. It supports environment variable ALICLOUD_ASSUME_ROLE_SESSION_NAME.

EcsRoleNameOptional

public string EcsRoleName { get; set; }
  • Type: string
(Optional, Available in 0.12.14+) The RAM Role Name attached on a ECS instance for API operations. You can retrieve this from the ‘Access Control’ section of the Alibaba Cloud console.

EncryptOptional

public bool Encrypt { get; set; }
  • Type: bool
(Optional) Whether to enable server side encryption of the state file. If it is true, OSS will use ‘AES256’ encryption algorithm to encrypt state file.

EndpointOptional

public string Endpoint { get; set; }
  • Type: string
(Optional) A custom endpoint for the OSS API. It supports environment variables ALICLOUD_OSS_ENDPOINT and OSS_ENDPOINT.

KeyOptional

public string Key { get; set; }
  • Type: string
(Optional) The name of the state file. Defaults to terraform.tfstate.

PrefixOptional

public string Prefix { get; set; }
  • Type: string
(Optional) The path directory of the state file will be stored. Default to “env:”.

ProfileOptional

public string Profile { get; set; }
  • Type: string
(Optional, Available in 0.12.8+) This is the Alibaba Cloud profile name as set in the shared credentials file. It can also be sourced from the ALICLOUD_PROFILE environment variable.

RegionOptional

public string Region { get; set; }
  • Type: string
(Optional) The region of the OSS bucket. It supports environment variables ALICLOUD_REGION and ALICLOUD_DEFAULT_REGION.

SecretKeyOptional

public string SecretKey { get; set; }
  • Type: string
(Optional) Alibaba Cloud secret access key. It supports environment variables ALICLOUD_SECRET_KEY and ALICLOUD_ACCESS_KEY_SECRET.

SecurityTokenOptional

public string SecurityToken { get; set; }
  • Type: string
(Optional) STS access token. It supports environment variable ALICLOUD_SECURITY_TOKEN.

SharedCredentialsFileOptional

public string SharedCredentialsFile { get; set; }
  • Type: string
(Optional, Available in 0.12.8+) This is the path to the shared credentials file. It can also be sourced from the ALICLOUD_SHARED_CREDENTIALS_FILE environment variable. If this is not set and a profile is specified, ~/.aliyun/config.json will be used.

StsEndpointOptional

public string StsEndpoint { get; set; }
  • Type: string
(Optional, Available in 1.0.11+) Custom endpoint for the AliCloud Security Token Service (STS) API. It supports environment variable ALICLOUD_STS_ENDPOINT.

TablestoreEndpointOptional

public string TablestoreEndpoint { get; set; }
  • Type: string
(Optional) A custom endpoint for the TableStore API.

TablestoreTableOptional

public string TablestoreTable { get; set; }
  • Type: string
(Optional) A TableStore table for state locking and consistency. The table must have a primary key named LockID of type String.