Storage Account
Overview
{
"storage_account": {
"name": "ststorage{env}",
"kind": "StorageV2",
"sku": "Standard_LRS",
"@log_analytics_workspace_name": "log-workspace-{env}",
"containers": [
{
"name": "cistdev",
"public_access": "Container",
}
],
"tier": "Cool",
"https_only": true,
"keyvault": {
"@key_vault_name": "kv-vault-{env}",
"secrets": { "connection_string": "defaultappkey" }
},
"cors": {
"max_age": 200,
"methods": [
"GET",
"POST",
"PUT"
],
"services": [
"Blob",
"Queue"
],
"origins": [
"http://localhost:8080"
],
"headers": [
"x-ms-meta-data*"
],
"exposed_headers": [
"x-ms-meta-data*"
]
},
"location": "northeurope",
"external": false,
"tags": { "example": "S0" }
}
}
Storage Account Reference
| Key | Type | Description |
|---|
name (required) | string | The name of the Storage Account (see how to name) |
kind (required) | Storage Kind Definition | Kind of the Storage Account |
sku (required) | Storage Sku Definition | Redundancy of the Storage Account |
@log_analytics_workspace_name | string (reference to a log workspace) | The name of the workspace that you want to attach to (external or not) |
containers | array of Container Definition | Organizes a set of blobs, similar to a directory in a file system (defaults to no containers) |
tier | Storage Tier | The access tier of the Storage Account, (defaults to hot) |
https_only | bool | Enforces HTTPS traffic only to storage service if set to true (defaults to true) |
keyvault | Keyvault | The name of the Keyvault that this function will have Get access (defaults to no keyvault config) |
location | string | Resource Location (defaults to the resource group location) |
external | bool | A reference to an existing Storage Account (defaults to false) |
tags | object | Additional tags for the resource (defaults to no additional tags) |
StorageKind
| Value | Description |
|---|
Storage | Outdated Kind of Storage Account, it is recommend to use “StorageV2” instead of “Storage” |
StorageV2 | Standard storage account type for blobs, file shares, queues, and tables. |
BlobStorage | Best for random read and write operations |
BlockBlobStorage | Best for high transaction rates or low storage latency, ideal for store text or binary files and to upload large files |
StorageSku
| Value | Description |
|---|
Standard_LRS | Standard Locally Redundant Storage, data replication within a single region, meaning that data is stored multiple times within a single datacenter |
Standard_GRS | Standard Geo Replicated Storage, data replication between two regions, ensuring that data is stored in two separate datacenters, at least 400 miles apart from each other |
Standard_ZRS | Standard Zone Replicated Storage, data replication within a single region across three availability zones, ensuring that data is stored in three separate datacenters in the same region |
Container
| Key | Type | Description |
|---|
name (required) | string | The name of the Container |
public_access (required) | Public Access Definition | Access level for the container |
StorageTier
| Value | Description |
|---|
Cool | Suitable for data that is not accessed frequently by applications |
Hot | Should be used for the data frequently accessed by applications, and that is read or written very often |
Premium | Ideal for workloads that require very fast response times and/or high transactions rates, such as IoT, Telemetry, AI |
PublicAccess
| Value | Description |
|---|
Blob | Allow public read access for blobs |
Container | Allow public read and list access to the entire container |
None | No anonymous access |
Keyvault
| Key | Type | Description |
|---|
name | string | Keyvault name that your Storage Account will have Get access |
secrets | Secrets | The name and the value of the secret |
Secrets
| Key | Type | Description |
|---|
connection_string | string | The name of the secret holding the connection string |