Microsoft.Storage storageAccounts
Bicep 리소스 정의
storageAccounts 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.Storage/storageAccounts 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.
resource symbolicname 'Microsoft.Storage/storageAccounts@2023-05-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
sku: {
name: 'string'
}
kind: 'string'
extendedLocation: {
name: 'string'
type: 'EdgeZone'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
properties: {
accessTier: 'string'
allowBlobPublicAccess: bool
allowCrossTenantReplication: bool
allowedCopyScope: 'string'
allowSharedKeyAccess: bool
azureFilesIdentityBasedAuthentication: {
activeDirectoryProperties: {
accountType: 'string'
azureStorageSid: 'string'
domainGuid: 'string'
domainName: 'string'
domainSid: 'string'
forestName: 'string'
netBiosDomainName: 'string'
samAccountName: 'string'
}
defaultSharePermission: 'string'
directoryServiceOptions: 'string'
}
customDomain: {
name: 'string'
useSubDomainName: bool
}
defaultToOAuthAuthentication: bool
dnsEndpointType: 'string'
enableExtendedGroups: bool
encryption: {
identity: {
federatedIdentityClientId: 'string'
userAssignedIdentity: 'string'
}
keySource: 'string'
keyvaultproperties: {
keyname: 'string'
keyvaulturi: 'string'
keyversion: 'string'
}
requireInfrastructureEncryption: bool
services: {
blob: {
enabled: bool
keyType: 'string'
}
file: {
enabled: bool
keyType: 'string'
}
queue: {
enabled: bool
keyType: 'string'
}
table: {
enabled: bool
keyType: 'string'
}
}
}
immutableStorageWithVersioning: {
enabled: bool
immutabilityPolicy: {
allowProtectedAppendWrites: bool
immutabilityPeriodSinceCreationInDays: int
state: 'string'
}
}
isHnsEnabled: bool
isLocalUserEnabled: bool
isNfsV3Enabled: bool
isSftpEnabled: bool
keyPolicy: {
keyExpirationPeriodInDays: int
}
largeFileSharesState: 'string'
minimumTlsVersion: 'string'
networkAcls: {
bypass: 'string'
defaultAction: 'string'
ipRules: [
{
action: 'Allow'
value: 'string'
}
]
resourceAccessRules: [
{
resourceId: 'string'
tenantId: 'string'
}
]
virtualNetworkRules: [
{
action: 'Allow'
id: 'string'
state: 'string'
}
]
}
publicNetworkAccess: 'string'
routingPreference: {
publishInternetEndpoints: bool
publishMicrosoftEndpoints: bool
routingChoice: 'string'
}
sasPolicy: {
expirationAction: 'string'
sasExpirationPeriod: 'string'
}
supportsHttpsTrafficOnly: bool
}
}
속성 값
storageAccounts
이름 | 묘사 | 값 |
---|---|---|
이름 | 리소스 이름 | string(필수) 문자 제한: 3-24 유효한 문자: 소문자 및 숫자입니다. 리소스 이름은 Azure에서 고유해야 합니다. |
위치 | 필수. 리소스의 위치를 가져오거나 설정합니다. 지원되고 등록된 Azure 지역(예: 미국 서부, 미국 동부, 동남 아시아 등) 중 하나가 됩니다. 리소스를 만든 후에는 리소스의 지리적 영역을 변경할 수 없지만 업데이트할 때 동일한 지역 지역을 지정하면 요청이 성공합니다. | string(필수) |
태그 | 리소스를 설명하는 키 값 쌍 목록을 가져오거나 설정합니다. 이러한 태그는 리소스 그룹 전체에서 이 리소스를 보고 그룹화할 때 사용할 수 있습니다. 리소스에 대해 최대 15개의 태그를 제공할 수 있습니다. 각 태그에는 길이가 128자 이하이고 길이가 256자 이하인 값이 있어야 합니다. | 태그 이름 및 값의 사전입니다. 템플릿 |
sku | 필수. SKU 이름을 가져오거나 설정합니다. | Sku(필수) |
종류 | 필수. 스토리지 계정의 유형을 나타냅니다. | 'BlobStorage' 'BlockBlobStorage' 'FileStorage' 'Storage' 'StorageV2'(필수) |
extendedLocation | 선택적. 리소스의 확장된 위치를 설정합니다. 설정하지 않으면 스토리지 계정이 Azure 주 지역에 만들어집니다. 그렇지 않으면 지정된 확장 위치에 만들어집니다. | ExtendedLocation |
신원 | 리소스의 ID입니다. | ID |
속성 | 스토리지 계정을 만드는 데 사용되는 매개 변수입니다. | storageAccountPropertiesCreateParametersOrStorageAcc ... |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'EdgeZone' |
신원
이름 | 묘사 | 값 |
---|---|---|
형 | ID 형식입니다. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned'(필수) |
userAssignedIdentities | 이 스토리지 계정에서 사용할 사용자 할당 ID 집합을 설명하는 키 값 쌍 목록을 가져오거나 설정합니다. 키는 ID의 ARM 리소스 식별자입니다. 여기서는 사용자 할당 ID가 1명만 허용됩니다. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
이름 | 묘사 | 값 |
---|---|---|
{customized property} | UserAssignedIdentity |
UserAssignedIdentity
이 개체에는 배포 중에 설정할 속성이 없습니다. 모든 속성은 ReadOnly입니다.
StorageAccountPropertiesCreateParametersOrStorageAcc...
이름 | 묘사 | 값 |
---|---|---|
accessTier | 종류 = BlobStorage인 스토리지 계정에 필요합니다. 액세스 계층은 청구에 사용됩니다. '프리미엄' 액세스 계층은 프리미엄 블록 Blob 스토리지 계정 유형의 기본값이며 프리미엄 블록 Blob 스토리지 계정 유형에 대해 변경할 수 없습니다. | '콜드' '쿨' '핫' '프리미엄' |
allowBlobPublicAccess | 스토리지 계정의 모든 Blob 또는 컨테이너에 대한 공용 액세스를 허용하거나 허용하지 않습니다. 이 속성에 대한 기본 해석은 false입니다. | bool |
allowCrossTenantReplication | 교차 AAD 테넌트 개체 복제를 허용하거나 허용하지 않습니다. 개체 복제 정책에 다른 AAD 테넌트에서 스토리지 계정이 포함된 경우에만 새 계정 또는 기존 계정에 대해 이 속성을 true로 설정합니다. 새 계정이 기본적으로 모범 보안 방법을 따르도록 기본 해석은 false입니다. | bool |
allowedCopyScope | AAD 테넌트 내 또는 프라이빗 링크를 사용하여 스토리지 계정 간 복사를 동일한 VNet으로 제한합니다. | 'AAD' 'PrivateLink' |
allowSharedKeyAccess | 스토리지 계정이 공유 키를 통해 계정 액세스 키로 요청을 승인하도록 허용하는지 여부를 나타냅니다. false이면 공유 액세스 서명을 포함한 모든 요청은 Azure AD(Azure Active Directory)로 권한을 부여받아야 합니다. 기본값은 null이며 true와 동일합니다. | bool |
azureFilesIdentityBasedAuthentication | Azure Files에 대한 ID 기반 인증 설정을 제공합니다. | AzureFilesIdentityBasedAuthentication |
customDomain | 스토리지 계정에 할당된 사용자 도메인입니다. 이름은 CNAME 원본입니다. 현재 스토리지 계정당 하나의 사용자 지정 도메인만 지원됩니다. 기존 사용자 지정 도메인을 지우려면 사용자 지정 도메인 이름 속성에 빈 문자열을 사용합니다. | CustomDomain |
defaultToOAuthAuthentication | 기본 인증이 OAuth인지 여부를 나타내는 부울 플래그입니다. 이 속성에 대한 기본 해석은 false입니다. | bool |
dnsEndpointType | 엔드포인트 유형을 지정할 수 있습니다. 이를 AzureDNSZone으로 설정하여 단일 구독에서 많은 수의 계정을 만듭니다. 이 계정은 Azure DNS 영역에 계정을 만들고 엔드포인트 URL에는 영숫자 DNS 영역 식별자가 있습니다. | 'AzureDnsZone' 'Standard' |
enableExtendedGroups | true로 설정된 경우 로컬 사용자 기능을 사용하여 확장 그룹 지원을 사용하도록 설정합니다. | bool |
암호화 | 스토리지 계정의 서버 쪽 암호화에 사용할 암호화 설정입니다. | 암호화 |
immutableStorageWithVersioning | 이 속성은 변경할 수 없으며 계정 생성 시간에만 true로 설정할 수 있습니다. true로 설정하면 기본적으로 계정의 모든 새 컨테이너에 대해 개체 수준 불변성을 사용할 수 있습니다. | ImmutableStorageAccount |
isHnsEnabled | true로 설정된 경우 계정 HierarchicalNamespace를 사용하도록 설정합니다. | bool |
isLocalUserEnabled | true로 설정된 경우 로컬 사용자 기능을 사용하도록 설정합니다. | bool |
isNfsV3Enabled | true로 설정된 경우 NFS 3.0 프로토콜 지원을 사용하도록 설정합니다. | bool |
isSftpEnabled | true로 설정된 경우 보안 파일 전송 프로토콜을 사용하도록 설정합니다. | bool |
keyPolicy | 스토리지 계정에 할당된 KeyPolicy입니다. | KeyPolicy |
largeFileSharesState | 사용으로 설정된 경우 대용량 파일 공유를 허용합니다. 사용하도록 설정한 후에는 사용하지 않도록 설정할 수 없습니다. | '사용 안 함' 'Enabled' |
minimumTlsVersion | 스토리지에 대한 요청에 허용되는 최소 TLS 버전을 설정합니다. 이 속성에 대한 기본 해석은 TLS 1.0입니다. | 'TLS1_0' 'TLS1_1' 'TLS1_2' 'TLS1_3' |
networkAcls | 네트워크 규칙 집합 | NetworkRuleSet |
publicNetworkAccess | 네트워크 보안 경계 구성이 스토리지 계정에 대한 공용 네트워크 액세스를 평가하도록 허용하거나 허용하지 않거나 허용합니다. 값은 선택 사항이지만 전달된 경우 '사용', '사용 안 함' 또는 'SecuredByPerimeter'여야 합니다. | '사용 안 함' 'Enabled' 'SecuredByPerimeter' |
routingPreference | 사용자가 데이터 전송을 위해 선택한 네트워크 라우팅 선택에 대한 정보를 유지 관리합니다. | RoutingPreference |
sasPolicy | 스토리지 계정에 할당된 SasPolicy입니다. | sasPolicy |
supportsHttpsTrafficOnly | true로 설정한 경우 스토리지 서비스에 대한 https 트래픽만 허용합니다. 기본값은 API 버전 2019-04-01 이후 true입니다. | bool |
AzureFilesIdentityBasedAuthentication
이름 | 묘사 | 값 |
---|---|---|
activeDirectoryProperties | directoryServiceOptions가 AD인 경우 필수이며, AADKERB인 경우 선택 사항입니다. | ActiveDirectoryProperties |
defaultSharePermission | RBAC 역할이 할당되지 않은 경우 Kerberos 인증을 사용하는 사용자의 기본 공유 권한입니다. | 'None' 'StorageFileDataSmbShareContributor' 'StorageFileDataSmbShareElevatedContributor' 'StorageFileDataSmbShareReader' |
directoryServiceOptions | 사용된 디렉터리 서비스를 나타냅니다. 이 열거형은 나중에 확장될 수 있습니다. | 'AADDS' 'AADKERB' 'AD' 'None'(필수) |
ActiveDirectoryProperties
이름 | 묘사 | 값 |
---|---|---|
accountType | Azure Storage에 대한 Active Directory 계정 유형을 지정합니다. | 'Computer' 'User' |
azureStorageSid | Azure Storage의 SID(보안 식별자)를 지정합니다. | 문자열 |
domainGuid | 도메인 GUID를 지정합니다. | string(필수) |
domainName | AD DNS 서버가 신뢰할 수 있는 기본 도메인을 지정합니다. | string(필수) |
domainSid | SID(보안 식별자)를 지정합니다. | 문자열 |
forestName | 가져올 Active Directory 포리스트를 지정합니다. | 문자열 |
netBiosDomainName | NetBIOS 도메인 이름을 지정합니다. | 문자열 |
samAccountName | Azure Storage에 대한 Active Directory SAMAccountName을 지정합니다. | 문자열 |
CustomDomain
이름 | 묘사 | 값 |
---|---|---|
이름 | 스토리지 계정에 할당된 사용자 지정 도메인 이름을 가져오거나 설정합니다. 이름은 CNAME 원본입니다. | string(필수) |
useSubDomainName | 간접 CName 유효성 검사를 사용할 수 있는지 여부를 나타냅니다. 기본값은 false입니다. 이 설정은 업데이트에서만 설정해야 합니다. | bool |
암호화
이름 | 묘사 | 값 |
---|---|---|
신원 | 미사용 서비스 쪽 암호화에 사용할 ID입니다. | EncryptionIdentity |
keySource | 암호화 keySource(공급자)입니다. 가능한 값(대/소문자를 구분하지 않습니다): Microsoft.Storage, Microsoft.Keyvault | 'Microsoft.Keyvault' 'Microsoft.Storage' |
keyvaultproperties | 키 자격 증명 모음에서 제공하는 속성입니다. | KeyVaultProperties |
requireInfrastructureEncryption | 서비스가 미사용 데이터에 대해 플랫폼 관리 키를 사용하여 보조 암호화 계층을 적용하는지 여부를 나타내는 부울입니다. | bool |
서비스 | 암호화를 지원하는 서비스 목록입니다. | EncryptionServices |
EncryptionIdentity
이름 | 묘사 | 값 |
---|---|---|
federatedIdentityClientId | 스토리지 계정에서 테넌트 간 고객 관리형 키 서버 쪽 암호화를 위해 사용자 할당 ID와 함께 사용할 다중 테넌트 애플리케이션의 ClientId입니다. | 문자열 |
userAssignedIdentity | 스토리지 계정의 서버 쪽 암호화와 연결할 UserAssigned ID의 리소스 식별자입니다. | 문자열 |
KeyVaultProperties
이름 | 묘사 | 값 |
---|---|---|
키 이름 | KeyVault 키의 이름입니다. | 문자열 |
keyvaulturi | KeyVault의 URI입니다. | 문자열 |
keyversion | KeyVault 키의 버전입니다. | 문자열 |
EncryptionServices
이름 | 묘사 | 값 |
---|---|---|
Blob | Blob Storage 서비스의 암호화 함수입니다. | EncryptionService |
파일 | 파일 스토리지 서비스의 암호화 함수입니다. | EncryptionService |
큐 | Queue Storage 서비스의 암호화 함수입니다. | EncryptionService |
테이블 | Table Storage 서비스의 암호화 함수입니다. | EncryptionService |
EncryptionService
이름 | 묘사 | 값 |
---|---|---|
사용 | 서비스가 저장된 데이터를 암호화하는지 여부를 나타내는 부울입니다. 미사용 데이터 암호화는 현재 기본적으로 사용하도록 설정되어 있으며 사용하지 않도록 설정할 수 없습니다. | bool |
keyType | 암호화 서비스에 사용할 암호화 키 유형입니다. '계정' 키 유형은 계정 범위 암호화 키가 사용됨을 의미합니다. '서비스' 키 유형은 기본 서비스 키가 사용됨을 의미합니다. | '계정' '서비스' |
ImmutableStorageAccount
이름 | 묘사 | 값 |
---|---|---|
사용 | 계정 수준 불변성을 가능하게 하는 부울 플래그입니다. 이러한 계정의 모든 컨테이너는 기본적으로 개체 수준 불변성을 사용하도록 설정되어 있습니다. | bool |
immutabilityPolicy | 개체 수준에서 명시적 불변성 정책을 소유하지 않는 개체에 상속되고 적용되는 기본 계정 수준 불변성 정책을 지정합니다. 개체 수준 불변성 정책은 계정 수준 불변성 정책보다 우선 순위가 높은 컨테이너 수준 불변성 정책보다 우선 순위가 높습니다. | AccountImmutabilityPolicyProperties |
AccountImmutabilityPolicyProperties
이름 | 묘사 | 값 |
---|---|---|
allowProtectedAppendWrites | 이 속성은 사용 안 함 및 잠금 해제된 시간 기반 보존 정책에 대해서만 변경할 수 있습니다. 사용하도록 설정하면 불변성 보호 및 규정 준수를 유지하면서 새 블록을 추가 Blob에 쓸 수 있습니다. 새 블록만 추가할 수 있으며 기존 블록은 수정하거나 삭제할 수 없습니다. | bool |
immutabilityPeriodSinceCreationInDays | 정책을 만든 이후 컨테이너의 Blob에 대한 불변성 기간(일)입니다. | int 제약 조건: 최소값 = 1 최대값 = 146000 |
상태 | ImmutabilityPolicy 상태는 정책의 모드를 정의합니다. 비활성화된 상태는 정책을 사용하지 않도록 설정하고, 잠금 해제된 상태는 불변성 보존 시간을 늘리거나 줄일 수 있으며 allowProtectedAppendWrites 속성을 토글할 수도 있습니다. 잠긴 상태는 불변성 보존 시간만 늘릴 수 있습니다. 정책은 사용 안 함 또는 잠금 해제 상태에서만 만들 수 있으며 두 상태 간에 전환할 수 있습니다. 잠금 해제 상태의 정책만 되돌릴 수 없는 잠긴 상태로 전환할 수 있습니다. | '사용 안 함' '잠김' '잠금 해제됨' |
KeyPolicy
이름 | 묘사 | 값 |
---|---|---|
keyExpirationPeriodInDays | 키 만료 기간(일)입니다. | int(필수) |
NetworkRuleSet
이름 | 묘사 | 값 |
---|---|---|
우회 | 트래픽이 로깅/메트릭/AzureServices에 대해 무시되는지 여부를 지정합니다. 가능한 값은 로깅, 메트릭, AzureServices(예: "로깅, 메트릭") 또는 해당 트래픽을 무시하지 않는 None의 조합입니다. | 'AzureServices' '로깅' '메트릭' 'None' |
defaultAction | 다른 규칙이 일치하지 않을 때 허용 또는 거부의 기본 동작을 지정합니다. | '허용' 'Deny'(필수) |
ipRules | IP ACL 규칙 설정 | IPRule |
resourceAccessRules | 리소스 액세스 규칙 설정 | ResourceAccessRule[] |
virtualNetworkRules | 가상 네트워크 규칙 설정 | VirtualNetworkRule[] |
IPRule
이름 | 묘사 | 값 |
---|---|---|
행동 | IP ACL 규칙의 동작입니다. | '허용' |
값 | IP 또는 IP 범위를 CIDR 형식으로 지정합니다. IPV4 주소만 허용됩니다. | string(필수) |
ResourceAccessRule
이름 | 묘사 | 값 |
---|---|---|
resourceId | 리소스 ID | 문자열 |
tenantId | 테넌트 ID | 문자열 |
VirtualNetworkRule
이름 | 묘사 | 값 |
---|---|---|
행동 | 가상 네트워크 규칙의 동작입니다. | '허용' |
아이디 | 서브넷의 리소스 ID(예: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}). | string(필수) |
상태 | 가상 네트워크 규칙의 상태를 가져옵니다. | '프로비전 해제' '실패' 'NetworkSourceDeleted' '프로비전' '성공' |
RoutingPreference
이름 | 묘사 | 값 |
---|---|---|
publishInternetEndpoints | 인터넷 라우팅 스토리지 엔드포인트를 게시할지 여부를 나타내는 부울 플래그 | bool |
publishMicrosoftEndpoints | Microsoft 라우팅 스토리지 엔드포인트를 게시할지 여부를 나타내는 부울 플래그 | bool |
routingChoice | 라우팅 선택은 사용자가 선택한 네트워크 라우팅의 종류를 정의합니다. | 'InternetRouting' 'MicrosoftRouting' |
SasPolicy
이름 | 묘사 | 값 |
---|---|---|
expirationAction | SAS 만료 작업은 sasPolicy.sasExpirationPeriod를 위반할 때 수행할 작업을 정의합니다. '로그' 작업은 감사 목적으로 사용할 수 있으며 '차단' 작업을 사용하여 sas 정책 만료 기간을 준수하지 않는 SAS 토큰의 사용을 차단하고 거부할 수 있습니다. | 'Block' 'Log'(필수) |
sasExpirationPeriod | SAS 만료 기간인 DD.HH:MM:SS입니다. | string(필수) |
Sku
이름 | 묘사 | 값 |
---|---|---|
이름 | SKU 이름입니다. 계정을 만드는 데 필요합니다. 업데이트에 대한 선택 사항입니다. 이전 버전에서는 SKU 이름을 accountType이라고 했습니다. | 'Premium_LRS' 'Premium_ZRS' 'Standard_GRS' 'Standard_GZRS' 'Standard_LRS' 'Standard_RAGRS' 'Standard_RAGZRS' 'Standard_ZRS'(필수) |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.
템플렛 | 묘사 |
---|---|
프라이빗 엔드포인트 통해 VM에서 스토리지 계정에 연결 Azure 배포 |
이 샘플에서는 가상 네트워크를 연결하여 프라이빗 엔드포인트를 통해 Blob Storage 계정에 액세스하는 방법을 보여 줍니다. |
프라이빗 엔드포인트를 통해 Azure 파일 공유에 연결 Azure 배포 |
이 샘플에서는 가상 네트워크 및 프라이빗 DNS 영역을 구성하여 프라이빗 엔드포인트를 통해 Azure 파일 공유에 액세스하는 방법을 보여줍니다. |
Standard Storage 계정 만들기 Azure 배포 |
이 템플릿은 표준 스토리지 계정을 만듭니다. |
SSE 사용하여 스토리지 계정 만들기 Azure 배포 |
이 템플릿은 미사용 데이터에 대한 스토리지 서비스 암호화를 사용하여 스토리지 계정을 만듭니다. |
Advanced Threat Protection 사용하여 스토리지 계정 Azure |
이 템플릿을 사용하면 Advanced Threat Protection을 사용하도록 설정된 Azure Storage 계정을 배포할 수 있습니다. |
Azure Azure Storage 계정 및 Blob 컨테이너 만들기 Azure 배포 |
이 템플릿은 Azure Storage 계정 및 Blob 컨테이너를 만듭니다. |
SSE 및 Blob 삭제 보존 정책 사용하여 스토리지 계정 Azure |
이 템플릿은 Storage 서비스 암호화 및 Blob 삭제 보존 정책을 사용하여 스토리지 계정을 만듭니다. |
고객 관리형 키 사용하여 Azure Storage 계정 암호화 Azure |
이 템플릿은 Key Vault 내에 생성되고 배치되는 암호화를 위해 고객 관리형 키를 사용하여 스토리지 계정을 배포합니다. |
파일 공유를 사용하여 스토리지 계정 만들기 Azure 배포 |
이 템플릿은 Azure Storage 계정 및 파일 공유를 만듭니다. |
여러 Blob 컨테이너가 있는 스토리지 계정 만들기 Azure 배포 |
Azure Storage 계정 및 여러 Blob 컨테이너를 만듭니다. |
여러 파일 공유를 사용하여 스토리지 계정 만들기 Azure 배포 |
Azure Storage 계정 및 여러 파일 공유를 만듭니다. |
SFTP를 사용하도록 설정된 스토리지 계정 만들기 Azure 배포 |
SFTP 프로토콜을 사용하여 액세스할 수 있는 Azure Storage 계정 및 Blob 컨테이너를 만듭니다. 액세스는 암호 또는 공개 키 기반일 수 있습니다. |
정적 웹 사이트 배포 Azure 배포 |
백업 스토리지 계정을 사용하여 정적 웹 사이트 배포 |
ARM 템플릿 리소스 정의
storageAccounts 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.Storage/storageAccounts 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2023-05-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"sku": {
"name": "string"
},
"kind": "string",
"extendedLocation": {
"name": "string",
"type": "EdgeZone"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"properties": {
"accessTier": "string",
"allowBlobPublicAccess": "bool",
"allowCrossTenantReplication": "bool",
"allowedCopyScope": "string",
"allowSharedKeyAccess": "bool",
"azureFilesIdentityBasedAuthentication": {
"activeDirectoryProperties": {
"accountType": "string",
"azureStorageSid": "string",
"domainGuid": "string",
"domainName": "string",
"domainSid": "string",
"forestName": "string",
"netBiosDomainName": "string",
"samAccountName": "string"
},
"defaultSharePermission": "string",
"directoryServiceOptions": "string"
},
"customDomain": {
"name": "string",
"useSubDomainName": "bool"
},
"defaultToOAuthAuthentication": "bool",
"dnsEndpointType": "string",
"enableExtendedGroups": "bool",
"encryption": {
"identity": {
"federatedIdentityClientId": "string",
"userAssignedIdentity": "string"
},
"keySource": "string",
"keyvaultproperties": {
"keyname": "string",
"keyvaulturi": "string",
"keyversion": "string"
},
"requireInfrastructureEncryption": "bool",
"services": {
"blob": {
"enabled": "bool",
"keyType": "string"
},
"file": {
"enabled": "bool",
"keyType": "string"
},
"queue": {
"enabled": "bool",
"keyType": "string"
},
"table": {
"enabled": "bool",
"keyType": "string"
}
}
},
"immutableStorageWithVersioning": {
"enabled": "bool",
"immutabilityPolicy": {
"allowProtectedAppendWrites": "bool",
"immutabilityPeriodSinceCreationInDays": "int",
"state": "string"
}
},
"isHnsEnabled": "bool",
"isLocalUserEnabled": "bool",
"isNfsV3Enabled": "bool",
"isSftpEnabled": "bool",
"keyPolicy": {
"keyExpirationPeriodInDays": "int"
},
"largeFileSharesState": "string",
"minimumTlsVersion": "string",
"networkAcls": {
"bypass": "string",
"defaultAction": "string",
"ipRules": [
{
"action": "Allow",
"value": "string"
}
],
"resourceAccessRules": [
{
"resourceId": "string",
"tenantId": "string"
}
],
"virtualNetworkRules": [
{
"action": "Allow",
"id": "string",
"state": "string"
}
]
},
"publicNetworkAccess": "string",
"routingPreference": {
"publishInternetEndpoints": "bool",
"publishMicrosoftEndpoints": "bool",
"routingChoice": "string"
},
"sasPolicy": {
"expirationAction": "string",
"sasExpirationPeriod": "string"
},
"supportsHttpsTrafficOnly": "bool"
}
}
속성 값
storageAccounts
이름 | 묘사 | 값 |
---|---|---|
형 | 리소스 종류 | 'Microsoft.Storage/storageAccounts' |
apiVersion | 리소스 api 버전 | '2023-05-01' |
이름 | 리소스 이름 | string(필수) 문자 제한: 3-24 유효한 문자: 소문자 및 숫자입니다. 리소스 이름은 Azure에서 고유해야 합니다. |
위치 | 필수. 리소스의 위치를 가져오거나 설정합니다. 지원되고 등록된 Azure 지역(예: 미국 서부, 미국 동부, 동남 아시아 등) 중 하나가 됩니다. 리소스를 만든 후에는 리소스의 지리적 영역을 변경할 수 없지만 업데이트할 때 동일한 지역 지역을 지정하면 요청이 성공합니다. | string(필수) |
태그 | 리소스를 설명하는 키 값 쌍 목록을 가져오거나 설정합니다. 이러한 태그는 리소스 그룹 전체에서 이 리소스를 보고 그룹화할 때 사용할 수 있습니다. 리소스에 대해 최대 15개의 태그를 제공할 수 있습니다. 각 태그에는 길이가 128자 이하이고 길이가 256자 이하인 값이 있어야 합니다. | 태그 이름 및 값의 사전입니다. 템플릿 |
sku | 필수. SKU 이름을 가져오거나 설정합니다. | Sku(필수) |
종류 | 필수. 스토리지 계정의 유형을 나타냅니다. | 'BlobStorage' 'BlockBlobStorage' 'FileStorage' 'Storage' 'StorageV2'(필수) |
extendedLocation | 선택적. 리소스의 확장된 위치를 설정합니다. 설정하지 않으면 스토리지 계정이 Azure 주 지역에 만들어집니다. 그렇지 않으면 지정된 확장 위치에 만들어집니다. | ExtendedLocation |
신원 | 리소스의 ID입니다. | ID |
속성 | 스토리지 계정을 만드는 데 사용되는 매개 변수입니다. | storageAccountPropertiesCreateParametersOrStorageAcc ... |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | 'EdgeZone' |
신원
이름 | 묘사 | 값 |
---|---|---|
형 | ID 형식입니다. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned'(필수) |
userAssignedIdentities | 이 스토리지 계정에서 사용할 사용자 할당 ID 집합을 설명하는 키 값 쌍 목록을 가져오거나 설정합니다. 키는 ID의 ARM 리소스 식별자입니다. 여기서는 사용자 할당 ID가 1명만 허용됩니다. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
이름 | 묘사 | 값 |
---|---|---|
{customized property} | UserAssignedIdentity |
UserAssignedIdentity
이 개체에는 배포 중에 설정할 속성이 없습니다. 모든 속성은 ReadOnly입니다.
StorageAccountPropertiesCreateParametersOrStorageAcc...
이름 | 묘사 | 값 |
---|---|---|
accessTier | 종류 = BlobStorage인 스토리지 계정에 필요합니다. 액세스 계층은 청구에 사용됩니다. '프리미엄' 액세스 계층은 프리미엄 블록 Blob 스토리지 계정 유형의 기본값이며 프리미엄 블록 Blob 스토리지 계정 유형에 대해 변경할 수 없습니다. | '콜드' '쿨' '핫' '프리미엄' |
allowBlobPublicAccess | 스토리지 계정의 모든 Blob 또는 컨테이너에 대한 공용 액세스를 허용하거나 허용하지 않습니다. 이 속성에 대한 기본 해석은 false입니다. | bool |
allowCrossTenantReplication | 교차 AAD 테넌트 개체 복제를 허용하거나 허용하지 않습니다. 개체 복제 정책에 다른 AAD 테넌트에서 스토리지 계정이 포함된 경우에만 새 계정 또는 기존 계정에 대해 이 속성을 true로 설정합니다. 새 계정이 기본적으로 모범 보안 방법을 따르도록 기본 해석은 false입니다. | bool |
allowedCopyScope | AAD 테넌트 내 또는 프라이빗 링크를 사용하여 스토리지 계정 간 복사를 동일한 VNet으로 제한합니다. | 'AAD' 'PrivateLink' |
allowSharedKeyAccess | 스토리지 계정이 공유 키를 통해 계정 액세스 키로 요청을 승인하도록 허용하는지 여부를 나타냅니다. false이면 공유 액세스 서명을 포함한 모든 요청은 Azure AD(Azure Active Directory)로 권한을 부여받아야 합니다. 기본값은 null이며 true와 동일합니다. | bool |
azureFilesIdentityBasedAuthentication | Azure Files에 대한 ID 기반 인증 설정을 제공합니다. | AzureFilesIdentityBasedAuthentication |
customDomain | 스토리지 계정에 할당된 사용자 도메인입니다. 이름은 CNAME 원본입니다. 현재 스토리지 계정당 하나의 사용자 지정 도메인만 지원됩니다. 기존 사용자 지정 도메인을 지우려면 사용자 지정 도메인 이름 속성에 빈 문자열을 사용합니다. | CustomDomain |
defaultToOAuthAuthentication | 기본 인증이 OAuth인지 여부를 나타내는 부울 플래그입니다. 이 속성에 대한 기본 해석은 false입니다. | bool |
dnsEndpointType | 엔드포인트 유형을 지정할 수 있습니다. 이를 AzureDNSZone으로 설정하여 단일 구독에서 많은 수의 계정을 만듭니다. 이 계정은 Azure DNS 영역에 계정을 만들고 엔드포인트 URL에는 영숫자 DNS 영역 식별자가 있습니다. | 'AzureDnsZone' 'Standard' |
enableExtendedGroups | true로 설정된 경우 로컬 사용자 기능을 사용하여 확장 그룹 지원을 사용하도록 설정합니다. | bool |
암호화 | 스토리지 계정의 서버 쪽 암호화에 사용할 암호화 설정입니다. | 암호화 |
immutableStorageWithVersioning | 이 속성은 변경할 수 없으며 계정 생성 시간에만 true로 설정할 수 있습니다. true로 설정하면 기본적으로 계정의 모든 새 컨테이너에 대해 개체 수준 불변성을 사용할 수 있습니다. | ImmutableStorageAccount |
isHnsEnabled | true로 설정된 경우 계정 HierarchicalNamespace를 사용하도록 설정합니다. | bool |
isLocalUserEnabled | true로 설정된 경우 로컬 사용자 기능을 사용하도록 설정합니다. | bool |
isNfsV3Enabled | true로 설정된 경우 NFS 3.0 프로토콜 지원을 사용하도록 설정합니다. | bool |
isSftpEnabled | true로 설정된 경우 보안 파일 전송 프로토콜을 사용하도록 설정합니다. | bool |
keyPolicy | 스토리지 계정에 할당된 KeyPolicy입니다. | KeyPolicy |
largeFileSharesState | 사용으로 설정된 경우 대용량 파일 공유를 허용합니다. 사용하도록 설정한 후에는 사용하지 않도록 설정할 수 없습니다. | '사용 안 함' 'Enabled' |
minimumTlsVersion | 스토리지에 대한 요청에 허용되는 최소 TLS 버전을 설정합니다. 이 속성에 대한 기본 해석은 TLS 1.0입니다. | 'TLS1_0' 'TLS1_1' 'TLS1_2' 'TLS1_3' |
networkAcls | 네트워크 규칙 집합 | NetworkRuleSet |
publicNetworkAccess | 네트워크 보안 경계 구성이 스토리지 계정에 대한 공용 네트워크 액세스를 평가하도록 허용하거나 허용하지 않거나 허용합니다. 값은 선택 사항이지만 전달된 경우 '사용', '사용 안 함' 또는 'SecuredByPerimeter'여야 합니다. | '사용 안 함' 'Enabled' 'SecuredByPerimeter' |
routingPreference | 사용자가 데이터 전송을 위해 선택한 네트워크 라우팅 선택에 대한 정보를 유지 관리합니다. | RoutingPreference |
sasPolicy | 스토리지 계정에 할당된 SasPolicy입니다. | sasPolicy |
supportsHttpsTrafficOnly | true로 설정한 경우 스토리지 서비스에 대한 https 트래픽만 허용합니다. 기본값은 API 버전 2019-04-01 이후 true입니다. | bool |
AzureFilesIdentityBasedAuthentication
이름 | 묘사 | 값 |
---|---|---|
activeDirectoryProperties | directoryServiceOptions가 AD인 경우 필수이며, AADKERB인 경우 선택 사항입니다. | ActiveDirectoryProperties |
defaultSharePermission | RBAC 역할이 할당되지 않은 경우 Kerberos 인증을 사용하는 사용자의 기본 공유 권한입니다. | 'None' 'StorageFileDataSmbShareContributor' 'StorageFileDataSmbShareElevatedContributor' 'StorageFileDataSmbShareReader' |
directoryServiceOptions | 사용된 디렉터리 서비스를 나타냅니다. 이 열거형은 나중에 확장될 수 있습니다. | 'AADDS' 'AADKERB' 'AD' 'None'(필수) |
ActiveDirectoryProperties
이름 | 묘사 | 값 |
---|---|---|
accountType | Azure Storage에 대한 Active Directory 계정 유형을 지정합니다. | 'Computer' 'User' |
azureStorageSid | Azure Storage의 SID(보안 식별자)를 지정합니다. | 문자열 |
domainGuid | 도메인 GUID를 지정합니다. | string(필수) |
domainName | AD DNS 서버가 신뢰할 수 있는 기본 도메인을 지정합니다. | string(필수) |
domainSid | SID(보안 식별자)를 지정합니다. | 문자열 |
forestName | 가져올 Active Directory 포리스트를 지정합니다. | 문자열 |
netBiosDomainName | NetBIOS 도메인 이름을 지정합니다. | 문자열 |
samAccountName | Azure Storage에 대한 Active Directory SAMAccountName을 지정합니다. | 문자열 |
CustomDomain
이름 | 묘사 | 값 |
---|---|---|
이름 | 스토리지 계정에 할당된 사용자 지정 도메인 이름을 가져오거나 설정합니다. 이름은 CNAME 원본입니다. | string(필수) |
useSubDomainName | 간접 CName 유효성 검사를 사용할 수 있는지 여부를 나타냅니다. 기본값은 false입니다. 이 설정은 업데이트에서만 설정해야 합니다. | bool |
암호화
이름 | 묘사 | 값 |
---|---|---|
신원 | 미사용 서비스 쪽 암호화에 사용할 ID입니다. | EncryptionIdentity |
keySource | 암호화 keySource(공급자)입니다. 가능한 값(대/소문자를 구분하지 않습니다): Microsoft.Storage, Microsoft.Keyvault | 'Microsoft.Keyvault' 'Microsoft.Storage' |
keyvaultproperties | 키 자격 증명 모음에서 제공하는 속성입니다. | KeyVaultProperties |
requireInfrastructureEncryption | 서비스가 미사용 데이터에 대해 플랫폼 관리 키를 사용하여 보조 암호화 계층을 적용하는지 여부를 나타내는 부울입니다. | bool |
서비스 | 암호화를 지원하는 서비스 목록입니다. | EncryptionServices |
EncryptionIdentity
이름 | 묘사 | 값 |
---|---|---|
federatedIdentityClientId | 스토리지 계정에서 테넌트 간 고객 관리형 키 서버 쪽 암호화를 위해 사용자 할당 ID와 함께 사용할 다중 테넌트 애플리케이션의 ClientId입니다. | 문자열 |
userAssignedIdentity | 스토리지 계정의 서버 쪽 암호화와 연결할 UserAssigned ID의 리소스 식별자입니다. | 문자열 |
KeyVaultProperties
이름 | 묘사 | 값 |
---|---|---|
키 이름 | KeyVault 키의 이름입니다. | 문자열 |
keyvaulturi | KeyVault의 URI입니다. | 문자열 |
keyversion | KeyVault 키의 버전입니다. | 문자열 |
EncryptionServices
이름 | 묘사 | 값 |
---|---|---|
Blob | Blob Storage 서비스의 암호화 함수입니다. | EncryptionService |
파일 | 파일 스토리지 서비스의 암호화 함수입니다. | EncryptionService |
큐 | Queue Storage 서비스의 암호화 함수입니다. | EncryptionService |
테이블 | Table Storage 서비스의 암호화 함수입니다. | EncryptionService |
EncryptionService
이름 | 묘사 | 값 |
---|---|---|
사용 | 서비스가 저장된 데이터를 암호화하는지 여부를 나타내는 부울입니다. 미사용 데이터 암호화는 현재 기본적으로 사용하도록 설정되어 있으며 사용하지 않도록 설정할 수 없습니다. | bool |
keyType | 암호화 서비스에 사용할 암호화 키 유형입니다. '계정' 키 유형은 계정 범위 암호화 키가 사용됨을 의미합니다. '서비스' 키 유형은 기본 서비스 키가 사용됨을 의미합니다. | '계정' '서비스' |
ImmutableStorageAccount
이름 | 묘사 | 값 |
---|---|---|
사용 | 계정 수준 불변성을 가능하게 하는 부울 플래그입니다. 이러한 계정의 모든 컨테이너는 기본적으로 개체 수준 불변성을 사용하도록 설정되어 있습니다. | bool |
immutabilityPolicy | 개체 수준에서 명시적 불변성 정책을 소유하지 않는 개체에 상속되고 적용되는 기본 계정 수준 불변성 정책을 지정합니다. 개체 수준 불변성 정책은 계정 수준 불변성 정책보다 우선 순위가 높은 컨테이너 수준 불변성 정책보다 우선 순위가 높습니다. | AccountImmutabilityPolicyProperties |
AccountImmutabilityPolicyProperties
이름 | 묘사 | 값 |
---|---|---|
allowProtectedAppendWrites | 이 속성은 사용 안 함 및 잠금 해제된 시간 기반 보존 정책에 대해서만 변경할 수 있습니다. 사용하도록 설정하면 불변성 보호 및 규정 준수를 유지하면서 새 블록을 추가 Blob에 쓸 수 있습니다. 새 블록만 추가할 수 있으며 기존 블록은 수정하거나 삭제할 수 없습니다. | bool |
immutabilityPeriodSinceCreationInDays | 정책을 만든 이후 컨테이너의 Blob에 대한 불변성 기간(일)입니다. | int 제약 조건: 최소값 = 1 최대값 = 146000 |
상태 | ImmutabilityPolicy 상태는 정책의 모드를 정의합니다. 비활성화된 상태는 정책을 사용하지 않도록 설정하고, 잠금 해제된 상태는 불변성 보존 시간을 늘리거나 줄일 수 있으며 allowProtectedAppendWrites 속성을 토글할 수도 있습니다. 잠긴 상태는 불변성 보존 시간만 늘릴 수 있습니다. 정책은 사용 안 함 또는 잠금 해제 상태에서만 만들 수 있으며 두 상태 간에 전환할 수 있습니다. 잠금 해제 상태의 정책만 되돌릴 수 없는 잠긴 상태로 전환할 수 있습니다. | '사용 안 함' '잠김' '잠금 해제됨' |
KeyPolicy
이름 | 묘사 | 값 |
---|---|---|
keyExpirationPeriodInDays | 키 만료 기간(일)입니다. | int(필수) |
NetworkRuleSet
이름 | 묘사 | 값 |
---|---|---|
우회 | 트래픽이 로깅/메트릭/AzureServices에 대해 무시되는지 여부를 지정합니다. 가능한 값은 로깅, 메트릭, AzureServices(예: "로깅, 메트릭") 또는 해당 트래픽을 무시하지 않는 None의 조합입니다. | 'AzureServices' '로깅' '메트릭' 'None' |
defaultAction | 다른 규칙이 일치하지 않을 때 허용 또는 거부의 기본 동작을 지정합니다. | '허용' 'Deny'(필수) |
ipRules | IP ACL 규칙 설정 | IPRule |
resourceAccessRules | 리소스 액세스 규칙 설정 | ResourceAccessRule[] |
virtualNetworkRules | 가상 네트워크 규칙 설정 | VirtualNetworkRule[] |
IPRule
이름 | 묘사 | 값 |
---|---|---|
행동 | IP ACL 규칙의 동작입니다. | '허용' |
값 | IP 또는 IP 범위를 CIDR 형식으로 지정합니다. IPV4 주소만 허용됩니다. | string(필수) |
ResourceAccessRule
이름 | 묘사 | 값 |
---|---|---|
resourceId | 리소스 ID | 문자열 |
tenantId | 테넌트 ID | 문자열 |
VirtualNetworkRule
이름 | 묘사 | 값 |
---|---|---|
행동 | 가상 네트워크 규칙의 동작입니다. | '허용' |
아이디 | 서브넷의 리소스 ID(예: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}). | string(필수) |
상태 | 가상 네트워크 규칙의 상태를 가져옵니다. | '프로비전 해제' '실패' 'NetworkSourceDeleted' '프로비전' '성공' |
RoutingPreference
이름 | 묘사 | 값 |
---|---|---|
publishInternetEndpoints | 인터넷 라우팅 스토리지 엔드포인트를 게시할지 여부를 나타내는 부울 플래그 | bool |
publishMicrosoftEndpoints | Microsoft 라우팅 스토리지 엔드포인트를 게시할지 여부를 나타내는 부울 플래그 | bool |
routingChoice | 라우팅 선택은 사용자가 선택한 네트워크 라우팅의 종류를 정의합니다. | 'InternetRouting' 'MicrosoftRouting' |
SasPolicy
이름 | 묘사 | 값 |
---|---|---|
expirationAction | SAS 만료 작업은 sasPolicy.sasExpirationPeriod를 위반할 때 수행할 작업을 정의합니다. '로그' 작업은 감사 목적으로 사용할 수 있으며 '차단' 작업을 사용하여 sas 정책 만료 기간을 준수하지 않는 SAS 토큰의 사용을 차단하고 거부할 수 있습니다. | 'Block' 'Log'(필수) |
sasExpirationPeriod | SAS 만료 기간인 DD.HH:MM:SS입니다. | string(필수) |
Sku
이름 | 묘사 | 값 |
---|---|---|
이름 | SKU 이름입니다. 계정을 만드는 데 필요합니다. 업데이트에 대한 선택 사항입니다. 이전 버전에서는 SKU 이름을 accountType이라고 했습니다. | 'Premium_LRS' 'Premium_ZRS' 'Standard_GRS' 'Standard_GZRS' 'Standard_LRS' 'Standard_RAGRS' 'Standard_RAGZRS' 'Standard_ZRS'(필수) |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.
템플렛 | 묘사 |
---|---|
프라이빗 엔드포인트 통해 VM에서 스토리지 계정에 연결 Azure 배포 |
이 샘플에서는 가상 네트워크를 연결하여 프라이빗 엔드포인트를 통해 Blob Storage 계정에 액세스하는 방법을 보여 줍니다. |
프라이빗 엔드포인트를 통해 Azure 파일 공유에 연결 Azure 배포 |
이 샘플에서는 가상 네트워크 및 프라이빗 DNS 영역을 구성하여 프라이빗 엔드포인트를 통해 Azure 파일 공유에 액세스하는 방법을 보여줍니다. |
Standard Storage 계정 만들기 Azure 배포 |
이 템플릿은 표준 스토리지 계정을 만듭니다. |
SSE 사용하여 스토리지 계정 만들기 Azure 배포 |
이 템플릿은 미사용 데이터에 대한 스토리지 서비스 암호화를 사용하여 스토리지 계정을 만듭니다. |
Advanced Threat Protection 사용하여 스토리지 계정 Azure |
이 템플릿을 사용하면 Advanced Threat Protection을 사용하도록 설정된 Azure Storage 계정을 배포할 수 있습니다. |
Azure Azure Storage 계정 및 Blob 컨테이너 만들기 Azure 배포 |
이 템플릿은 Azure Storage 계정 및 Blob 컨테이너를 만듭니다. |
SSE 및 Blob 삭제 보존 정책 사용하여 스토리지 계정 Azure |
이 템플릿은 Storage 서비스 암호화 및 Blob 삭제 보존 정책을 사용하여 스토리지 계정을 만듭니다. |
고객 관리형 키 사용하여 Azure Storage 계정 암호화 Azure |
이 템플릿은 Key Vault 내에 생성되고 배치되는 암호화를 위해 고객 관리형 키를 사용하여 스토리지 계정을 배포합니다. |
파일 공유를 사용하여 스토리지 계정 만들기 Azure 배포 |
이 템플릿은 Azure Storage 계정 및 파일 공유를 만듭니다. |
여러 Blob 컨테이너가 있는 스토리지 계정 만들기 Azure 배포 |
Azure Storage 계정 및 여러 Blob 컨테이너를 만듭니다. |
여러 파일 공유를 사용하여 스토리지 계정 만들기 Azure 배포 |
Azure Storage 계정 및 여러 파일 공유를 만듭니다. |
SFTP를 사용하도록 설정된 스토리지 계정 만들기 Azure 배포 |
SFTP 프로토콜을 사용하여 액세스할 수 있는 Azure Storage 계정 및 Blob 컨테이너를 만듭니다. 액세스는 암호 또는 공개 키 기반일 수 있습니다. |
정적 웹 사이트 배포 Azure 배포 |
백업 스토리지 계정을 사용하여 정적 웹 사이트 배포 |
Terraform(AzAPI 공급자) 리소스 정의
storageAccounts 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.Storage/storageAccounts 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Storage/storageAccounts@2023-05-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
accessTier = "string"
allowBlobPublicAccess = bool
allowCrossTenantReplication = bool
allowedCopyScope = "string"
allowSharedKeyAccess = bool
azureFilesIdentityBasedAuthentication = {
activeDirectoryProperties = {
accountType = "string"
azureStorageSid = "string"
domainGuid = "string"
domainName = "string"
domainSid = "string"
forestName = "string"
netBiosDomainName = "string"
samAccountName = "string"
}
defaultSharePermission = "string"
directoryServiceOptions = "string"
}
customDomain = {
name = "string"
useSubDomainName = bool
}
defaultToOAuthAuthentication = bool
dnsEndpointType = "string"
enableExtendedGroups = bool
encryption = {
identity = {
federatedIdentityClientId = "string"
userAssignedIdentity = "string"
}
keySource = "string"
keyvaultproperties = {
keyname = "string"
keyvaulturi = "string"
keyversion = "string"
}
requireInfrastructureEncryption = bool
services = {
blob = {
enabled = bool
keyType = "string"
}
file = {
enabled = bool
keyType = "string"
}
queue = {
enabled = bool
keyType = "string"
}
table = {
enabled = bool
keyType = "string"
}
}
}
immutableStorageWithVersioning = {
enabled = bool
immutabilityPolicy = {
allowProtectedAppendWrites = bool
immutabilityPeriodSinceCreationInDays = int
state = "string"
}
}
isHnsEnabled = bool
isLocalUserEnabled = bool
isNfsV3Enabled = bool
isSftpEnabled = bool
keyPolicy = {
keyExpirationPeriodInDays = int
}
largeFileSharesState = "string"
minimumTlsVersion = "string"
networkAcls = {
bypass = "string"
defaultAction = "string"
ipRules = [
{
action = "Allow"
value = "string"
}
]
resourceAccessRules = [
{
resourceId = "string"
tenantId = "string"
}
]
virtualNetworkRules = [
{
action = "Allow"
id = "string"
state = "string"
}
]
}
publicNetworkAccess = "string"
routingPreference = {
publishInternetEndpoints = bool
publishMicrosoftEndpoints = bool
routingChoice = "string"
}
sasPolicy = {
expirationAction = "string"
sasExpirationPeriod = "string"
}
supportsHttpsTrafficOnly = bool
}
sku = {
name = "string"
}
kind = "string"
extendedLocation = {
name = "string"
type = "EdgeZone"
}
})
}
속성 값
storageAccounts
이름 | 묘사 | 값 |
---|---|---|
형 | 리소스 종류 | "Microsoft.Storage/storageAccounts@2023-05-01" |
이름 | 리소스 이름 | string(필수) 문자 제한: 3-24 유효한 문자: 소문자 및 숫자입니다. 리소스 이름은 Azure에서 고유해야 합니다. |
위치 | 필수. 리소스의 위치를 가져오거나 설정합니다. 지원되고 등록된 Azure 지역(예: 미국 서부, 미국 동부, 동남 아시아 등) 중 하나가 됩니다. 리소스를 만든 후에는 리소스의 지리적 영역을 변경할 수 없지만 업데이트할 때 동일한 지역 지역을 지정하면 요청이 성공합니다. | string(필수) |
parent_id | 리소스 그룹에 배포하려면 해당 리소스 그룹의 ID를 사용합니다. | string(필수) |
태그 | 리소스를 설명하는 키 값 쌍 목록을 가져오거나 설정합니다. 이러한 태그는 리소스 그룹 전체에서 이 리소스를 보고 그룹화할 때 사용할 수 있습니다. 리소스에 대해 최대 15개의 태그를 제공할 수 있습니다. 각 태그에는 길이가 128자 이하이고 길이가 256자 이하인 값이 있어야 합니다. | 태그 이름 및 값의 사전입니다. |
sku | 필수. SKU 이름을 가져오거나 설정합니다. | Sku(필수) |
종류 | 필수. 스토리지 계정의 유형을 나타냅니다. | "BlobStorage" "BlockBlobStorage" "FileStorage" "스토리지" "StorageV2"(필수) |
extendedLocation | 선택적. 리소스의 확장된 위치를 설정합니다. 설정하지 않으면 스토리지 계정이 Azure 주 지역에 만들어집니다. 그렇지 않으면 지정된 확장 위치에 만들어집니다. | ExtendedLocation |
신원 | 리소스의 ID입니다. | ID |
속성 | 스토리지 계정을 만드는 데 사용되는 매개 변수입니다. | storageAccountPropertiesCreateParametersOrStorageAcc ... |
ExtendedLocation
이름 | 묘사 | 값 |
---|---|---|
이름 | 확장된 위치의 이름입니다. | 문자열 |
형 | 확장된 위치의 형식입니다. | "EdgeZone" |
신원
이름 | 묘사 | 값 |
---|---|---|
형 | ID 형식입니다. | "SystemAssigned" "SystemAssigned,UserAssigned" "UserAssigned"(필수) |
identity_ids | 이 스토리지 계정에서 사용할 사용자 할당 ID 집합을 설명하는 키 값 쌍 목록을 가져오거나 설정합니다. 키는 ID의 ARM 리소스 식별자입니다. 여기서는 사용자 할당 ID가 1명만 허용됩니다. | 사용자 ID ID의 배열입니다. |
IdentityUserAssignedIdentities
이름 | 묘사 | 값 |
---|---|---|
{customized property} | UserAssignedIdentity |
UserAssignedIdentity
이 개체에는 배포 중에 설정할 속성이 없습니다. 모든 속성은 ReadOnly입니다.
StorageAccountPropertiesCreateParametersOrStorageAcc...
이름 | 묘사 | 값 |
---|---|---|
accessTier | 종류 = BlobStorage인 스토리지 계정에 필요합니다. 액세스 계층은 청구에 사용됩니다. '프리미엄' 액세스 계층은 프리미엄 블록 Blob 스토리지 계정 유형의 기본값이며 프리미엄 블록 Blob 스토리지 계정 유형에 대해 변경할 수 없습니다. | "콜드" "쿨" "핫" "프리미엄" |
allowBlobPublicAccess | 스토리지 계정의 모든 Blob 또는 컨테이너에 대한 공용 액세스를 허용하거나 허용하지 않습니다. 이 속성에 대한 기본 해석은 false입니다. | bool |
allowCrossTenantReplication | 교차 AAD 테넌트 개체 복제를 허용하거나 허용하지 않습니다. 개체 복제 정책에 다른 AAD 테넌트에서 스토리지 계정이 포함된 경우에만 새 계정 또는 기존 계정에 대해 이 속성을 true로 설정합니다. 새 계정이 기본적으로 모범 보안 방법을 따르도록 기본 해석은 false입니다. | bool |
allowedCopyScope | AAD 테넌트 내 또는 프라이빗 링크를 사용하여 스토리지 계정 간 복사를 동일한 VNet으로 제한합니다. | "AAD" "PrivateLink" |
allowSharedKeyAccess | 스토리지 계정이 공유 키를 통해 계정 액세스 키로 요청을 승인하도록 허용하는지 여부를 나타냅니다. false이면 공유 액세스 서명을 포함한 모든 요청은 Azure AD(Azure Active Directory)로 권한을 부여받아야 합니다. 기본값은 null이며 true와 동일합니다. | bool |
azureFilesIdentityBasedAuthentication | Azure Files에 대한 ID 기반 인증 설정을 제공합니다. | AzureFilesIdentityBasedAuthentication |
customDomain | 스토리지 계정에 할당된 사용자 도메인입니다. 이름은 CNAME 원본입니다. 현재 스토리지 계정당 하나의 사용자 지정 도메인만 지원됩니다. 기존 사용자 지정 도메인을 지우려면 사용자 지정 도메인 이름 속성에 빈 문자열을 사용합니다. | CustomDomain |
defaultToOAuthAuthentication | 기본 인증이 OAuth인지 여부를 나타내는 부울 플래그입니다. 이 속성에 대한 기본 해석은 false입니다. | bool |
dnsEndpointType | 엔드포인트 유형을 지정할 수 있습니다. 이를 AzureDNSZone으로 설정하여 단일 구독에서 많은 수의 계정을 만듭니다. 이 계정은 Azure DNS 영역에 계정을 만들고 엔드포인트 URL에는 영숫자 DNS 영역 식별자가 있습니다. | "AzureDnsZone" "표준" |
enableExtendedGroups | true로 설정된 경우 로컬 사용자 기능을 사용하여 확장 그룹 지원을 사용하도록 설정합니다. | bool |
암호화 | 스토리지 계정의 서버 쪽 암호화에 사용할 암호화 설정입니다. | 암호화 |
immutableStorageWithVersioning | 이 속성은 변경할 수 없으며 계정 생성 시간에만 true로 설정할 수 있습니다. true로 설정하면 기본적으로 계정의 모든 새 컨테이너에 대해 개체 수준 불변성을 사용할 수 있습니다. | ImmutableStorageAccount |
isHnsEnabled | true로 설정된 경우 계정 HierarchicalNamespace를 사용하도록 설정합니다. | bool |
isLocalUserEnabled | true로 설정된 경우 로컬 사용자 기능을 사용하도록 설정합니다. | bool |
isNfsV3Enabled | true로 설정된 경우 NFS 3.0 프로토콜 지원을 사용하도록 설정합니다. | bool |
isSftpEnabled | true로 설정된 경우 보안 파일 전송 프로토콜을 사용하도록 설정합니다. | bool |
keyPolicy | 스토리지 계정에 할당된 KeyPolicy입니다. | KeyPolicy |
largeFileSharesState | 사용으로 설정된 경우 대용량 파일 공유를 허용합니다. 사용하도록 설정한 후에는 사용하지 않도록 설정할 수 없습니다. | "사용 안 함" "사용" |
minimumTlsVersion | 스토리지에 대한 요청에 허용되는 최소 TLS 버전을 설정합니다. 이 속성에 대한 기본 해석은 TLS 1.0입니다. | "TLS1_0" "TLS1_1" "TLS1_2" "TLS1_3" |
networkAcls | 네트워크 규칙 집합 | NetworkRuleSet |
publicNetworkAccess | 네트워크 보안 경계 구성이 스토리지 계정에 대한 공용 네트워크 액세스를 평가하도록 허용하거나 허용하지 않거나 허용합니다. 값은 선택 사항이지만 전달된 경우 '사용', '사용 안 함' 또는 'SecuredByPerimeter'여야 합니다. | "사용 안 함" "사용" "SecuredByPerimeter" |
routingPreference | 사용자가 데이터 전송을 위해 선택한 네트워크 라우팅 선택에 대한 정보를 유지 관리합니다. | RoutingPreference |
sasPolicy | 스토리지 계정에 할당된 SasPolicy입니다. | sasPolicy |
supportsHttpsTrafficOnly | true로 설정한 경우 스토리지 서비스에 대한 https 트래픽만 허용합니다. 기본값은 API 버전 2019-04-01 이후 true입니다. | bool |
AzureFilesIdentityBasedAuthentication
이름 | 묘사 | 값 |
---|---|---|
activeDirectoryProperties | directoryServiceOptions가 AD인 경우 필수이며, AADKERB인 경우 선택 사항입니다. | ActiveDirectoryProperties |
defaultSharePermission | RBAC 역할이 할당되지 않은 경우 Kerberos 인증을 사용하는 사용자의 기본 공유 권한입니다. | "없음" "StorageFileDataSmbShareContributor" "StorageFileDataSmbShareElevatedContributor" "StorageFileDataSmbShareReader" |
directoryServiceOptions | 사용된 디렉터리 서비스를 나타냅니다. 이 열거형은 나중에 확장될 수 있습니다. | "AADDS" "AADKERB" "AD" "None"(필수) |
ActiveDirectoryProperties
이름 | 묘사 | 값 |
---|---|---|
accountType | Azure Storage에 대한 Active Directory 계정 유형을 지정합니다. | "컴퓨터" "User" |
azureStorageSid | Azure Storage의 SID(보안 식별자)를 지정합니다. | 문자열 |
domainGuid | 도메인 GUID를 지정합니다. | string(필수) |
domainName | AD DNS 서버가 신뢰할 수 있는 기본 도메인을 지정합니다. | string(필수) |
domainSid | SID(보안 식별자)를 지정합니다. | 문자열 |
forestName | 가져올 Active Directory 포리스트를 지정합니다. | 문자열 |
netBiosDomainName | NetBIOS 도메인 이름을 지정합니다. | 문자열 |
samAccountName | Azure Storage에 대한 Active Directory SAMAccountName을 지정합니다. | 문자열 |
CustomDomain
이름 | 묘사 | 값 |
---|---|---|
이름 | 스토리지 계정에 할당된 사용자 지정 도메인 이름을 가져오거나 설정합니다. 이름은 CNAME 원본입니다. | string(필수) |
useSubDomainName | 간접 CName 유효성 검사를 사용할 수 있는지 여부를 나타냅니다. 기본값은 false입니다. 이 설정은 업데이트에서만 설정해야 합니다. | bool |
암호화
이름 | 묘사 | 값 |
---|---|---|
신원 | 미사용 서비스 쪽 암호화에 사용할 ID입니다. | EncryptionIdentity |
keySource | 암호화 keySource(공급자)입니다. 가능한 값(대/소문자를 구분하지 않습니다): Microsoft.Storage, Microsoft.Keyvault | "Microsoft.Keyvault" "Microsoft.Storage" |
keyvaultproperties | 키 자격 증명 모음에서 제공하는 속성입니다. | KeyVaultProperties |
requireInfrastructureEncryption | 서비스가 미사용 데이터에 대해 플랫폼 관리 키를 사용하여 보조 암호화 계층을 적용하는지 여부를 나타내는 부울입니다. | bool |
서비스 | 암호화를 지원하는 서비스 목록입니다. | EncryptionServices |
EncryptionIdentity
이름 | 묘사 | 값 |
---|---|---|
federatedIdentityClientId | 스토리지 계정에서 테넌트 간 고객 관리형 키 서버 쪽 암호화를 위해 사용자 할당 ID와 함께 사용할 다중 테넌트 애플리케이션의 ClientId입니다. | 문자열 |
userAssignedIdentity | 스토리지 계정의 서버 쪽 암호화와 연결할 UserAssigned ID의 리소스 식별자입니다. | 문자열 |
KeyVaultProperties
이름 | 묘사 | 값 |
---|---|---|
키 이름 | KeyVault 키의 이름입니다. | 문자열 |
keyvaulturi | KeyVault의 URI입니다. | 문자열 |
keyversion | KeyVault 키의 버전입니다. | 문자열 |
EncryptionServices
이름 | 묘사 | 값 |
---|---|---|
Blob | Blob Storage 서비스의 암호화 함수입니다. | EncryptionService |
파일 | 파일 스토리지 서비스의 암호화 함수입니다. | EncryptionService |
큐 | Queue Storage 서비스의 암호화 함수입니다. | EncryptionService |
테이블 | Table Storage 서비스의 암호화 함수입니다. | EncryptionService |
EncryptionService
이름 | 묘사 | 값 |
---|---|---|
사용 | 서비스가 저장된 데이터를 암호화하는지 여부를 나타내는 부울입니다. 미사용 데이터 암호화는 현재 기본적으로 사용하도록 설정되어 있으며 사용하지 않도록 설정할 수 없습니다. | bool |
keyType | 암호화 서비스에 사용할 암호화 키 유형입니다. '계정' 키 유형은 계정 범위 암호화 키가 사용됨을 의미합니다. '서비스' 키 유형은 기본 서비스 키가 사용됨을 의미합니다. | "계정" "서비스" |
ImmutableStorageAccount
이름 | 묘사 | 값 |
---|---|---|
사용 | 계정 수준 불변성을 가능하게 하는 부울 플래그입니다. 이러한 계정의 모든 컨테이너는 기본적으로 개체 수준 불변성을 사용하도록 설정되어 있습니다. | bool |
immutabilityPolicy | 개체 수준에서 명시적 불변성 정책을 소유하지 않는 개체에 상속되고 적용되는 기본 계정 수준 불변성 정책을 지정합니다. 개체 수준 불변성 정책은 계정 수준 불변성 정책보다 우선 순위가 높은 컨테이너 수준 불변성 정책보다 우선 순위가 높습니다. | AccountImmutabilityPolicyProperties |
AccountImmutabilityPolicyProperties
이름 | 묘사 | 값 |
---|---|---|
allowProtectedAppendWrites | 이 속성은 사용 안 함 및 잠금 해제된 시간 기반 보존 정책에 대해서만 변경할 수 있습니다. 사용하도록 설정하면 불변성 보호 및 규정 준수를 유지하면서 새 블록을 추가 Blob에 쓸 수 있습니다. 새 블록만 추가할 수 있으며 기존 블록은 수정하거나 삭제할 수 없습니다. | bool |
immutabilityPeriodSinceCreationInDays | 정책을 만든 이후 컨테이너의 Blob에 대한 불변성 기간(일)입니다. | int 제약 조건: 최소값 = 1 최대값 = 146000 |
상태 | ImmutabilityPolicy 상태는 정책의 모드를 정의합니다. 비활성화된 상태는 정책을 사용하지 않도록 설정하고, 잠금 해제된 상태는 불변성 보존 시간을 늘리거나 줄일 수 있으며 allowProtectedAppendWrites 속성을 토글할 수도 있습니다. 잠긴 상태는 불변성 보존 시간만 늘릴 수 있습니다. 정책은 사용 안 함 또는 잠금 해제 상태에서만 만들 수 있으며 두 상태 간에 전환할 수 있습니다. 잠금 해제 상태의 정책만 되돌릴 수 없는 잠긴 상태로 전환할 수 있습니다. | "사용 안 함" "잠김" "잠금 해제됨" |
KeyPolicy
이름 | 묘사 | 값 |
---|---|---|
keyExpirationPeriodInDays | 키 만료 기간(일)입니다. | int(필수) |
NetworkRuleSet
이름 | 묘사 | 값 |
---|---|---|
우회 | 트래픽이 로깅/메트릭/AzureServices에 대해 무시되는지 여부를 지정합니다. 가능한 값은 로깅, 메트릭, AzureServices(예: "로깅, 메트릭") 또는 해당 트래픽을 무시하지 않는 None의 조합입니다. | "AzureServices" "로깅" "메트릭" "없음" |
defaultAction | 다른 규칙이 일치하지 않을 때 허용 또는 거부의 기본 동작을 지정합니다. | "허용" "거부"(필수) |
ipRules | IP ACL 규칙 설정 | IPRule |
resourceAccessRules | 리소스 액세스 규칙 설정 | ResourceAccessRule[] |
virtualNetworkRules | 가상 네트워크 규칙 설정 | VirtualNetworkRule[] |
IPRule
이름 | 묘사 | 값 |
---|---|---|
행동 | IP ACL 규칙의 동작입니다. | "허용" |
값 | IP 또는 IP 범위를 CIDR 형식으로 지정합니다. IPV4 주소만 허용됩니다. | string(필수) |
ResourceAccessRule
이름 | 묘사 | 값 |
---|---|---|
resourceId | 리소스 ID | 문자열 |
tenantId | 테넌트 ID | 문자열 |
VirtualNetworkRule
이름 | 묘사 | 값 |
---|---|---|
행동 | 가상 네트워크 규칙의 동작입니다. | "허용" |
아이디 | 서브넷의 리소스 ID(예: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}). | string(필수) |
상태 | 가상 네트워크 규칙의 상태를 가져옵니다. | "프로비전 해제" "실패" "NetworkSourceDeleted" "프로비전" "성공" |
RoutingPreference
이름 | 묘사 | 값 |
---|---|---|
publishInternetEndpoints | 인터넷 라우팅 스토리지 엔드포인트를 게시할지 여부를 나타내는 부울 플래그 | bool |
publishMicrosoftEndpoints | Microsoft 라우팅 스토리지 엔드포인트를 게시할지 여부를 나타내는 부울 플래그 | bool |
routingChoice | 라우팅 선택은 사용자가 선택한 네트워크 라우팅의 종류를 정의합니다. | "InternetRouting" "MicrosoftRouting" |
SasPolicy
이름 | 묘사 | 값 |
---|---|---|
expirationAction | SAS 만료 작업은 sasPolicy.sasExpirationPeriod를 위반할 때 수행할 작업을 정의합니다. '로그' 작업은 감사 목적으로 사용할 수 있으며 '차단' 작업을 사용하여 sas 정책 만료 기간을 준수하지 않는 SAS 토큰의 사용을 차단하고 거부할 수 있습니다. | "Block" "로그"(필수) |
sasExpirationPeriod | SAS 만료 기간인 DD.HH:MM:SS입니다. | string(필수) |
Sku
이름 | 묘사 | 값 |
---|---|---|
이름 | SKU 이름입니다. 계정을 만드는 데 필요합니다. 업데이트에 대한 선택 사항입니다. 이전 버전에서는 SKU 이름을 accountType이라고 했습니다. | "Premium_LRS" "Premium_ZRS" "Standard_GRS" "Standard_GZRS" "Standard_LRS" "Standard_RAGRS" "Standard_RAGZRS" "Standard_ZRS"(필수) |