An Azure storage account is a namespace and policy boundary for Blob object storage, Azure Files shares, Queue messages, and Table key-value data. Choose its region, performance, redundancy, network access, authorization, data protection, and lifecycle rules deliberately. Prefer Microsoft Entra authorization over shared account keys.
Lab: 40 minutes · Cost: small storage and transaction charges can occur · Creates: storage account, blob container, small test blob · Cleanup: delete the resource group or storage account.
Ways to build
Choose the Azure tool you want to use. The underlying resource stays the same.
Search Storage accounts, select Create, and review every tab.

For a learning account:
Storage account names are globally unique, 3–24 characters, lowercase letters and numbers only.
Geo-replication is not an application failover plan. Understand recovery behavior, last-sync time, account failover implications, DNS, and write availability.
Hot, cool, cold where available, and archive tiers trade storage price against access and retrieval costs. Minimum retention and rehydration behavior matter. Use lifecycle management to move or delete objects based on age and prefixes.
Example policy idea: move completed source documents to cool after 30 days, archive after 180 days, delete old versions after 365 days. Test against legal retention and recovery requirements before enabling deletion.
allowSharedKeyAccess: false is a strong target, but enable it only after every client uses Entra ID or an approved alternative. A private endpoint, private DNS zone, and RBAC assignments must be part of the full production deployment.
Terraform equivalents include azurerm_storage_account, azurerm_storage_container, azurerm_private_endpoint, private DNS resources, and role assignments. Treat the state file as sensitive.
Protection features can increase capacity and transaction costs. Define retention from recovery and compliance needs, not from the largest number the portal permits.
Delete the self-contained lab group: