Compartilhar via


Set-AzStorageAccount

Modifica uma conta de armazenamento.

Sintaxe

Set-AzStorageAccount
   [-ResourceGroupName] <String>
   [-Name] <String>
   [-Force]
   [-SkuName <String>]
   [-AccessTier <String>]
   [-CustomDomainName <String>]
   [-UseSubDomain <Boolean>]
   [-Tag <Hashtable>]
   [-EnableHttpsTrafficOnly <Boolean>]
   [-StorageEncryption]
   [-AssignIdentity]
   [-UserAssignedIdentityId <String>]
   [-KeyVaultUserAssignedIdentityId <String>]
   [-KeyVaultFederatedClientId <String>]
   [-IdentityType <String>]
   [-NetworkRuleSet <PSNetworkRuleSet>]
   [-UpgradeToStorageV2]
   [-EnableAzureActiveDirectoryDomainServicesForFile <Boolean>]
   [-EnableLargeFileShare]
   [-PublishMicrosoftEndpoint <Boolean>]
   [-PublishInternetEndpoint <Boolean>]
   [-AllowBlobPublicAccess <Boolean>]
   [-MinimumTlsVersion <String>]
   [-AllowSharedKeyAccess <Boolean>]
   [-SasExpirationPeriod <TimeSpan>]
   [-KeyExpirationPeriodInDay <Int32>]
   [-AllowCrossTenantReplication <Boolean>]
   [-DefaultSharePermission <String>]
   [-PublicNetworkAccess <String>]
   [-ImmutabilityPeriod <Int32>]
   [-ImmutabilityPolicyState <String>]
   [-EnableSftp <Boolean>]
   [-EnableLocalUser <Boolean>]
   [-AllowedCopyScope <String>]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-RoutingChoice <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzStorageAccount
   [-ResourceGroupName] <String>
   [-Name] <String>
   [-Force]
   [-SkuName <String>]
   [-AccessTier <String>]
   [-CustomDomainName <String>]
   [-UseSubDomain <Boolean>]
   [-Tag <Hashtable>]
   [-EnableHttpsTrafficOnly <Boolean>]
   [-KeyvaultEncryption]
   -KeyName <String>
   [-KeyVersion <String>]
   -KeyVaultUri <String>
   [-AssignIdentity]
   [-UserAssignedIdentityId <String>]
   [-KeyVaultUserAssignedIdentityId <String>]
   [-KeyVaultFederatedClientId <String>]
   [-IdentityType <String>]
   [-NetworkRuleSet <PSNetworkRuleSet>]
   [-UpgradeToStorageV2]
   [-EnableAzureActiveDirectoryDomainServicesForFile <Boolean>]
   [-EnableLargeFileShare]
   [-PublishMicrosoftEndpoint <Boolean>]
   [-PublishInternetEndpoint <Boolean>]
   [-AllowBlobPublicAccess <Boolean>]
   [-MinimumTlsVersion <String>]
   [-AllowSharedKeyAccess <Boolean>]
   [-SasExpirationPeriod <TimeSpan>]
   [-KeyExpirationPeriodInDay <Int32>]
   [-AllowCrossTenantReplication <Boolean>]
   [-DefaultSharePermission <String>]
   [-PublicNetworkAccess <String>]
   [-ImmutabilityPeriod <Int32>]
   [-ImmutabilityPolicyState <String>]
   [-EnableSftp <Boolean>]
   [-EnableLocalUser <Boolean>]
   [-AllowedCopyScope <String>]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-RoutingChoice <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzStorageAccount
   [-ResourceGroupName] <String>
   [-Name] <String>
   [-Force]
   [-SkuName <String>]
   [-AccessTier <String>]
   [-CustomDomainName <String>]
   [-UseSubDomain <Boolean>]
   [-Tag <Hashtable>]
   [-EnableHttpsTrafficOnly <Boolean>]
   [-AssignIdentity]
   [-UserAssignedIdentityId <String>]
   [-KeyVaultUserAssignedIdentityId <String>]
   [-KeyVaultFederatedClientId <String>]
   [-IdentityType <String>]
   [-NetworkRuleSet <PSNetworkRuleSet>]
   [-UpgradeToStorageV2]
   [-EnableLargeFileShare]
   [-PublishMicrosoftEndpoint <Boolean>]
   [-PublishInternetEndpoint <Boolean>]
   [-EnableAzureActiveDirectoryKerberosForFile <Boolean>]
   [-ActiveDirectoryDomainName <String>]
   [-ActiveDirectoryDomainGuid <String>]
   [-AllowBlobPublicAccess <Boolean>]
   [-MinimumTlsVersion <String>]
   [-AllowSharedKeyAccess <Boolean>]
   [-SasExpirationPeriod <TimeSpan>]
   [-KeyExpirationPeriodInDay <Int32>]
   [-AllowCrossTenantReplication <Boolean>]
   [-DefaultSharePermission <String>]
   [-PublicNetworkAccess <String>]
   [-ImmutabilityPeriod <Int32>]
   [-ImmutabilityPolicyState <String>]
   [-EnableSftp <Boolean>]
   [-EnableLocalUser <Boolean>]
   [-AllowedCopyScope <String>]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-RoutingChoice <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzStorageAccount
   [-ResourceGroupName] <String>
   [-Name] <String>
   [-Force]
   [-SkuName <String>]
   [-AccessTier <String>]
   [-CustomDomainName <String>]
   [-UseSubDomain <Boolean>]
   [-Tag <Hashtable>]
   [-EnableHttpsTrafficOnly <Boolean>]
   [-AssignIdentity]
   [-UserAssignedIdentityId <String>]
   [-KeyVaultUserAssignedIdentityId <String>]
   [-KeyVaultFederatedClientId <String>]
   [-IdentityType <String>]
   [-NetworkRuleSet <PSNetworkRuleSet>]
   [-UpgradeToStorageV2]
   [-EnableLargeFileShare]
   [-PublishMicrosoftEndpoint <Boolean>]
   [-PublishInternetEndpoint <Boolean>]
   -EnableActiveDirectoryDomainServicesForFile <Boolean>
   [-ActiveDirectoryDomainName <String>]
   [-ActiveDirectoryNetBiosDomainName <String>]
   [-ActiveDirectoryForestName <String>]
   [-ActiveDirectoryDomainGuid <String>]
   [-ActiveDirectoryDomainSid <String>]
   [-ActiveDirectoryAzureStorageSid <String>]
   [-ActiveDirectorySamAccountName <String>]
   [-ActiveDirectoryAccountType <String>]
   [-AllowBlobPublicAccess <Boolean>]
   [-MinimumTlsVersion <String>]
   [-AllowSharedKeyAccess <Boolean>]
   [-SasExpirationPeriod <TimeSpan>]
   [-KeyExpirationPeriodInDay <Int32>]
   [-AllowCrossTenantReplication <Boolean>]
   [-DefaultSharePermission <String>]
   [-PublicNetworkAccess <String>]
   [-ImmutabilityPeriod <Int32>]
   [-ImmutabilityPolicyState <String>]
   [-EnableSftp <Boolean>]
   [-EnableLocalUser <Boolean>]
   [-AllowedCopyScope <String>]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-RoutingChoice <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

O cmdlet Set-AzStorageAccount modifica uma conta de Armazenamento do Azure. Você pode usar esse cmdlet para modificar o tipo de conta, atualizar um domínio do cliente ou definir marcas em uma conta de Armazenamento.

Exemplos

Exemplo 1: Definir o tipo de conta de armazenamento

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -SkuName "Standard_RAGRS"

Esse comando define o tipo de conta de armazenamento como Standard_RAGRS.

Exemplo 2: Definir um domínio personalizado para uma conta de armazenamento

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -CustomDomainName "www.contoso.com" -UseSubDomain $true

Esse comando define um domínio personalizado para uma conta de armazenamento.

Exemplo 3: Definir o valor da camada de acesso

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -AccessTier Cool

O comando define o valor da camada de acesso como esporádico.

Exemplo 4: Definir o domínio personalizado e as tags

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -CustomDomainName "www.domainname.com" -UseSubDomain $true -Tag @{tag0="value0";tag1="value1";tag2="value2"}

O comando define o domínio personalizado e as marcas para uma conta de armazenamento.

Exemplo 5: Definir KeySource de criptografia como KeyVault

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -AssignIdentity
$account = Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount"

$keyVault = New-AzKeyVault -VaultName "MyKeyVault" -ResourceGroupName "MyResourceGroup" -Location "EastUS2"
$key = Add-AzKeyVaultKey -VaultName "MyKeyVault" -Name "MyKey" -Destination 'Software'
Set-AzKeyVaultAccessPolicy -VaultName "MyKeyVault" -ObjectId $account.Identity.PrincipalId -PermissionsToKeys wrapkey,unwrapkey,get

# In case to enable key auto rotation, don't set KeyVersion
Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -KeyvaultEncryption -KeyName $key.Name -KeyVersion $key.Version -KeyVaultUri $keyVault.VaultUri

# In case to enable key auto rotation after set keyvault proeprites with KeyVersion, can update account by set KeyVersion to empty
Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -KeyvaultEncryption -KeyName $key.Name -KeyVersion "" -KeyVaultUri $keyVault.VaultUri

Esse comando define o Encryption KeySource com um novo Keyvault criado. Se quiser habilitar a rotação automática de chaves, não defina keyversion ao definir as propriedades do Keyvault pela primeira vez ou limpe-a definindo as propriedades do keyvault novamente com keyversion como vazio.

Exemplo 6: Defina a fonte de chave de criptografia como "Microsoft.Storage"

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -StorageEncryption

Este comando define Encryption KeySource como "Microsoft.Storage"

Exemplo 7: Definir a propriedade NetworkRuleSet de uma conta de armazenamento com JSON

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -NetworkRuleSet (@{bypass="Logging,Metrics";
    ipRules=(@{IPAddressOrRange="20.11.0.0/16";Action="allow"},
            @{IPAddressOrRange="10.0.0.0/7";Action="allow"});
    virtualNetworkRules=(@{VirtualNetworkResourceId="/subscriptions/s1/resourceGroups/g1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1";Action="allow"},
                        @{VirtualNetworkResourceId="/subscriptions/s1/resourceGroups/g1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/subnet2";Action="allow"});
    defaultAction="allow"})

Esse comando define a propriedade NetworkRuleSet de uma conta de armazenamento com JSON

Exemplo 8: obter a propriedade NetworkRuleSet de uma conta de armazenamento e defini-la como outra conta de armazenamento

$networkRuleSet = (Get-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount").NetworkRuleSet 
Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount2" -NetworkRuleSet $networkRuleSet

Esse primeiro comando obtém a propriedade NetworkRuleSet de uma conta de armazenamento e o segundo comando a define como outra conta de armazenamento

Exemplo 9: Atualizar uma conta de armazenamento com o tipo "Storage" ou "BlobStorage" para a conta de armazenamento do tipo "StorageV2"

Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -UpgradeToStorageV2

O comando atualizar uma conta de armazenamento com o tipo "Storage" ou "BlobStorage" para "StorageV2" tipo conta de armazenamento.

Exemplo 10: atualize uma conta de armazenamento habilitando a Autenticação do Microsoft Entra Domain Services dos Arquivos do Azure e defina DefaultSharePermission.

$account = Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -EnableAzureActiveDirectoryDomainServicesForFile $true -DefaultSharePermission StorageFileDataSmbShareContributor

$account.AzureFilesIdentityBasedAuth

DirectoryServiceOptions ActiveDirectoryProperties                                                      DefaultSharePermission      
----------------------- -------------------------                                                      ----------------------      
AADDS                   Microsoft.Azure.Commands.Management.Storage.Models.PSActiveDirectoryProperties StorageFileDataSmbShareContributor

O comando atualizar uma conta de armazenamento habilitando a Autenticação do Microsoft Entra Domain Services dos Arquivos do Azure.

Exemplo 11: Atualizar uma conta de armazenamento habilitando a Autenticação do Serviço de Domínio Active Directory de Arquivos e mostrar a configuração de autenticação baseada em identidade de arquivo

$account = Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -EnableActiveDirectoryDomainServicesForFile $true `
        -ActiveDirectoryDomainName "mydomain.com" `
        -ActiveDirectoryNetBiosDomainName "mydomain.com" `
        -ActiveDirectoryForestName "mydomain.com" `
        -ActiveDirectoryDomainGuid "12345678-1234-1234-1234-123456789012" `
        -ActiveDirectoryDomainSid "S-1-5-21-1234567890-1234567890-1234567890" `
        -ActiveDirectoryAzureStorageSid "S-1-5-21-1234567890-1234567890-1234567890-1234" `
        -ActiveDirectorySamAccountName "samaccountname" `
        -ActiveDirectoryAccountType Computer 
		
$account.AzureFilesIdentityBasedAuth.DirectoryServiceOptions
AD

$account.AzureFilesIdentityBasedAuth.ActiveDirectoryProperties

DomainName        : mydomain.com
NetBiosDomainName : mydomain.com
ForestName        : mydomain.com
DomainGuid        : 12345678-1234-1234-1234-123456789012
DomainSid         : S-1-5-21-1234567890-1234567890-1234567890
AzureStorageSid   : S-1-5-21-1234567890-1234567890-1234567890-1234
SamAccountName    : samaccountname
AccountType       : Computer

O comando atualiza uma conta de armazenamento habilitando a autenticação do Active Directory Domain Service dos Arquivos do Azure e mostra a configuração de autenticação baseada em identidade de arquivo

Exemplo 12: Definir MinimumTlsVersion, AllowBlobPublicAccess e AllowSharedKeyAccess

$account = Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -MinimumTlsVersion TLS1_1 -AllowBlobPublicAccess $false -AllowSharedKeyAccess $true

$account.MinimumTlsVersion
TLS1_1

$account.AllowBlobPublicAccess
False

$a.AllowSharedKeyAccess
True

O comando define MinimumTlsVersion, AllowBlobPublicAccess e AllowSharedKeyAccess e, em seguida, mostra as 3 propriedades da conta

Exemplo 13: Atualizar uma conta de armazenamento com a configuração RoutingPreference

$account = Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -PublishMicrosoftEndpoint $false -PublishInternetEndpoint $true -RoutingChoice InternetRouting

$account.RoutingPreference

RoutingChoice   PublishMicrosoftEndpoints PublishInternetEndpoints
-------------   ------------------------- ------------------------
InternetRouting                     False                     True

$account.PrimaryEndpoints

Blob               : https://mystorageaccount.blob.core.windows.net/
Queue              : https://mystorageaccount.queue.core.windows.net/
Table              : https://mystorageaccount.table.core.windows.net/
File               : https://mystorageaccount.file.core.windows.net/
Web                : https://mystorageaccount.z2.web.core.windows.net/
Dfs                : https://mystorageaccount.dfs.core.windows.net/
MicrosoftEndpoints : 
InternetEndpoints  : {"Blob":"https://mystorageaccount-internetrouting.blob.core.windows.net/","File":"https://mystorageaccount-internetrouting.file.core.windows.net/","Web":"https://mystorageaccount-internetrouting.z2.web.core.windows.net/","Dfs":"https://w
                     eirp3-internetrouting.dfs.core.windows.net/"}

Esse comando atualiza uma conta de armazenamento com a configuração RoutingPreference : PublishMicrosoftEndpoint como false, PublishInternetEndpoint como true e RoutingChoice como MicrosoftRouting.

Exemplo 14: Atualizar uma conta de armazenamento com KeyExpirationPeriod e SasExpirationPeriod

$account = Set-AzStorageAccount -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -KeyExpirationPeriodInDay 5 -SasExpirationPeriod "1.12:05:06" -EnableHttpsTrafficOnly $true

$account.KeyPolicy.KeyExpirationPeriodInDays
5

$account.SasPolicy.SasExpirationPeriod
1.12:05:06

Esse comando atualiza uma conta de armazenamento com KeyExpirationPeriod e SasExpirationPeriod e, em seguida, mostra as propriedades relacionadas à conta atualizada.

Exemplo 15: Atualizar uma conta de armazenamento para a criptografia do Keyvault e acessar o Keyvault com a identidade atribuída pelo usuário

# Create KeyVault (no need if using exist keyvault)
$keyVault = New-AzKeyVault -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -Location eastus2euap -EnablePurgeProtection
$key = Add-AzKeyVaultKey -VaultName $keyvaultName -Name $keyname -Destination 'Software'

# create user assigned identity and grant access to keyvault (no need if using exist user assigned identity)
$userId = New-AzUserAssignedIdentity -ResourceGroupName $resourceGroupName -Name $userIdName
Set-AzKeyVaultAccessPolicy -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -ObjectId $userId.PrincipalId -PermissionsToKeys get,wrapkey,unwrapkey -BypassObjectIdValidation
$useridentityId= $userId.Id

# Update Storage account with Keyvault encryption and access Keyvault with user assigned identity, then show properties
$account = Set-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName `
                -IdentityType UserAssigned  -UserAssignedIdentityId $useridentityId  `
                -KeyVaultUri $keyVault.VaultUri -KeyName $keyname -KeyVaultUserAssignedIdentityId $useridentityId

$account.Encryption.EncryptionIdentity.EncryptionUserAssignedIdentity
/subscriptions/{subscription-id}/resourceGroups/myresourcegroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuserid

$account.Encryption.KeyVaultProperties

KeyName                       : wrappingKey
KeyVersion                    : 
KeyVaultUri                   : https://mykeyvault.vault.azure.net:443
CurrentVersionedKeyIdentifier : https://mykeyvault.vault.azure.net/keys/wrappingKey/8e74036e0d534e58b3bd84b319e31d8f
LastKeyRotationTimestamp      : 4/12/2021 8:17:57 AM

Esse comando primeiro cria um cofre de chaves e uma identidade atribuída pelo usuário e, em seguida, atualiza uma conta de armazenamento com criptografia de cofre de chaves, o cofre de chaves de acesso de acesso ao armazenamento com a identidade atribuída pelo usuário.

Exemplo 16: Atualizar uma conta de armazenamento criptografada do Keyvault, de acessar o Keyvault com identidade atribuída pelo usuário, para acessar o Keyvault com identidade atribuída pelo sistema

# Assign System identity to the account, and give the system assigned identity acces to the keyvault
$account = Set-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName  -IdentityType SystemAssignedUserAssigned
Set-AzKeyVaultAccessPolicy -VaultName $keyvaultName -ResourceGroupName $resourceGroupName -ObjectId $account.Identity.PrincipalId -PermissionsToKeys get,wrapkey,unwrapkey -BypassObjectIdValidation

# Update account from access Keyvault with user assigned identity to access Keyvault with system assigned identity
$account = Set-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName -IdentityType SystemAssignedUserAssigned -KeyName $keyname -KeyVaultUri $keyvaultUri -KeyVaultUserAssignedIdentityId ""

# EncryptionUserAssignedIdentity is empty, so the account access keyvault with system assigned identity
$account.Encryption.EncryptionIdentity

EncryptionUserAssignedIdentity                                                                                                                 
------------------------------ 

$account.Encryption.KeyVaultProperties

KeyName                       : wrappingKey
KeyVersion                    : 
KeyVaultUri                   : https://mykeyvault.vault.azure.net:443
CurrentVersionedKeyIdentifier : https://mykeyvault.vault.azure.net/keys/wrappingKey/8e74036e0d534e58b3bd84b319e31d8f
LastKeyRotationTimestamp      : 4/12/2021 8:17:57 AM

Esse comando primeiro atribui a identidade do sistema à conta e concede ao sistema acesso de identidade atribuído ao cofre de chaves; em seguida, atualiza a conta de armazenamento para acessar o Keyvault com a identidade atribuída pelo sistema.

Exemplo 17: Atualizar o Keyvault e a identidade atribuída pelo usuário para acessar o KeyVault

# Update to another user assigned identity
$account = Set-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName -IdentityType SystemAssignedUserAssigned -UserAssignedIdentityId $useridentity2 -KeyVaultUserAssignedIdentityId $useridentity2

# Update to encrypt with another keyvault
$account = Set-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName -KeyVaultUri $keyvaultUri2 -KeyName $keyname2 -KeyVersion $keyversion2

Esse comando primeiro atualiza a identidade atribuída pelo usuário para acessar o cofre de chaves e, em seguida, atualiza o cofre de chaves para criptografia. Para atualizar o Keyvault e a identidade atribuída pelo usuário, precisamos atualizar com as 2 etapas acima.

Exemplo 18: Atualizar uma conta de armazenamento com AllowCrossTenantReplication

$account = Set-AzStorageAccount -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -AllowCrossTenantReplication $false -EnableHttpsTrafficOnly $true

$account.AllowCrossTenantReplication

False

Esse comando atualiza uma conta de armazenamento definindo AllowCrossTenantReplication como false e, em seguida, mostra as propriedades relacionadas à conta atualizada.

Exemplo 18: Atualizar uma conta de armazenamento habilitando PublicNetworkAccess

$account = Set-AzStorageAccount -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -PublicNetworkAccess Enabled

$account.PublicNetworkAccess

Enabled

Esse comando atualiza uma conta de armazenamento definindo PublicNetworkAccess como habilitado.

Exemplo 19: atualizar a política de imutabilidade no nível da conta

$account = Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -ImmutabilityPeriod 2 -ImmutabilityPolicyState Unlocked

$account.ImmutableStorageWithVersioning.Enabled
True

$account.ImmutableStorageWithVersioning.ImmutabilityPolicy

ImmutabilityPeriodSinceCreationInDays State    
------------------------------------- -----    
                                    2 Unlocked

O comando atualiza as propriedades da política de imutabilidade no nível da conta em uma conta de armazenamento existente e mostra o resultado. A conta de armazenamento deve ser criada com habilitar a imutabilidade no nível da conta com controle de versão. A política de imutabilidade no nível da conta será herdada e aplicada a objetos que não possuem uma política de imutabilidade explícita no nível do objeto.

Exemplo 20: Atualizar uma conta de armazenamento habilitando Sftp e localuser

$account = Set-AzStorageAccount -ResourceGroupName "myresourcegroup" -AccountName "mystorageaccount" -EnableSftp $true -EnableLocalUser $true 

$account.EnableSftp
True

$account.EnableLocalUser
True

Esse comando atualiza uma conta de armazenamento habilitando Sftp e localuser. Para executar o comando com êxito, a conta de armazenamento já deve habilitar o Namespace Hierárquico.

Exemplo 21: Atualizar uma conta de armazenamento com o Keyvault de outro locatário (acessar o Keyvault com FederatedClientId)

# create Storage account with Keyvault encryption (access Keyvault with FederatedClientId), then show properties
$account = Set-AzStorageAccount -ResourceGroupName $resourceGroupName -Name $storageAccountName  `
                -KeyVaultUri $keyVault.VaultUri -KeyName $keyname -KeyVaultUserAssignedIdentityId $useridentityId -KeyVaultFederatedClientId $federatedClientId

$account.Encryption.EncryptionIdentity

EncryptionUserAssignedIdentity                                                                                                      EncryptionFederatedIdentityClientId                                                                                                                 
------------------------------                                                                                                      ----------------------------------- 
/subscriptions/{subscription-id}/resourceGroups/myresourcegroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myuserid ********-****-****-****-************

$account.Encryption.KeyVaultProperties

KeyName                       : wrappingKey
KeyVersion                    : 
KeyVaultUri                   : https://mykeyvault.vault.azure.net:443
CurrentVersionedKeyIdentifier : https://mykeyvault.vault.azure.net/keys/wrappingKey/8e74036e0d534e58b3bd84b319e31d8f
LastKeyRotationTimestamp      : 3/3/2022 2:07:34 AM

Esse comando atualiza uma conta de armazenamento com o Keyvault de outro locatário (acessar o Keyvault com FederatedClientId).

Parâmetros

-AccessTier

Especifica a camada de acesso da conta de armazenamento que esse cmdlet modifica. Os valores aceitáveis para este parâmetro são: Quente e Frio. Se você alterar o nível de acesso, isso poderá resultar em cobranças adicionais. Para obter mais informações, consulte Armazenamento de Blobs do Azure: camadas de armazenamento frequente e esporádico. Se a conta de armazenamento tiver Kind como StorageV2 ou BlobStorage, você poderá especificar o parâmetro AccessTier . Se a conta de armazenamento tiver Kind as Storage, não especifique o parâmetro AccessTier .

Tipo:String
Valores aceitos:Hot, Cool
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryAccountType

Especifica o tipo de conta do Active Directory para o Armazenamento do Azure. Os valores possíveis incluem: 'Usuário', 'Computador'.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryAzureStorageSid

Especifica o SID (identificador de segurança) para o Armazenamento do Azure. Esse parâmetro deve ser definido quando -EnableActiveDirectoryDomainServicesForFile for definido como true.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryDomainGuid

Especifica o GUID do domínio. Esse parâmetro deve ser definido quando -EnableActiveDirectoryDomainServicesForFile for definido como true.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryDomainName

Especifica o domínio primário para o qual o servidor DNS do AD é autoritativo. Esse parâmetro deve ser definido quando -EnableActiveDirectoryDomainServicesForFile for definido como true.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryDomainSid

Especifica o SID (identificador de segurança). Esse parâmetro deve ser definido quando -EnableActiveDirectoryDomainServicesForFile for definido como true.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryForestName

Especifica a floresta do Active Directory a ser obtida. Esse parâmetro deve ser definido quando -EnableActiveDirectoryDomainServicesForFile for definido como true.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectoryNetBiosDomainName

Especifica o nome de domínio NetBIOS. Esse parâmetro deve ser definido quando -EnableActiveDirectoryDomainServicesForFile for definido como true.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ActiveDirectorySamAccountName

Especifica o SAMAccountName do Active Directory para o Armazenamento do Azure.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AllowBlobPublicAccess

Permitir ou não o acesso anônimo a todos os blobs ou contêineres na conta de armazenamento.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AllowCrossTenantReplication

Obtém ou define permitir ou não permitir a replicação de objeto de locatário entre Microsoft Entra. A interpretação padrão é true para essa propriedade.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AllowedCopyScope

Defina restringir a cópia de e para Contas de Armazenamento em um locatário do Microsoft Entra ou com Links Privados para a mesma VNet. Os valores possíveis incluem: 'PrivateLink', 'AAD'

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AllowSharedKeyAccess

Indica se a conta de armazenamento permite que as solicitações sejam autorizadas com a chave de acesso da conta por meio da Chave Compartilhada. Se for falso, todas as solicitações, incluindo assinaturas de acesso compartilhado, deverão ser autorizadas com a ID do Microsoft Entra. O valor padrão é null, que é equivalente a true.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AsJob

Executar cmdlet em segundo plano

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-AssignIdentity

Gere e atribua uma nova identidade de conta de armazenamento para essa conta de armazenamento para uso com serviços de gerenciamento de chaves, como o Azure KeyVault.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-CustomDomainName

Especifica o nome do domínio personalizado.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para a comunicação com o Azure.

Tipo:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-DefaultSharePermission

Permissão de compartilhamento padrão para usuários que usam a autenticação Kerberos se a função RBAC não estiver atribuída.

Tipo:String
Valores aceitos:None, StorageFileDataSmbShareContributor, StorageFileDataSmbShareReader, StorageFileDataSmbShareElevatedContributor
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableActiveDirectoryDomainServicesForFile

Habilite a Autenticação do Active Directory Domain Service dos Arquivos do Azure para a conta de armazenamento.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableAzureActiveDirectoryDomainServicesForFile

Habilite a Autenticação do Active Directory Domain Service dos Arquivos do Azure para a conta de armazenamento.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableAzureActiveDirectoryKerberosForFile

Habilite a Autenticação Kerberos do Active Directory Domain Service dos Arquivos do Azure para a conta de armazenamento.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableHttpsTrafficOnly

Indica se a conta de armazenamento habilita ou não apenas o tráfego HTTPS.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableLargeFileShare

Indica se a conta de armazenamento pode ou não dar suporte a compartilhamentos de arquivos grandes com mais de 5 TiB de capacidade. Depois que a conta estiver habilitada, o recurso não poderá ser desabilitado. Atualmente, há suporte apenas para os tipos de replicação LRS e ZRS, portanto, as conversões de conta para contas com redundância geográfica não seriam possíveis. Saiba mais em https://go.microsoft.com/fwlink/?linkid=2086047

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableLocalUser

Habilite o recurso de usuários locais para a conta de armazenamento.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-EnableSftp

Habilite o Protocolo de Transferência Segura de Arquivos para a conta de armazenamento.

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Force

Força a alteração a ser gravada na conta de armazenamento.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-IdentityType

Defina o novo tipo de Identidade da Conta de Armazenamento, a idenetidade deve ser usada com serviços de gerenciamento de chaves, como o Azure KeyVault.

Tipo:String
Valores aceitos:SystemAssigned, UserAssigned, SystemAssignedUserAssigned, None
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ImmutabilityPeriod

O período de imutabilidade para os blobs no contêiner desde a criação da política em dias. Essa propriedade só pode ser alterada quando a conta é criada com '-EnableAccountLevelImmutability'.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ImmutabilityPolicyState

O modo da política. Os valores possíveis incluem: 'Desbloqueado', 'Bloqueado', 'Desativado. O estado desabilitado desabilita a política. O estado desbloqueado permite aumentar e diminuir o tempo de retenção de imutabilidade e também permite alternar a propriedade allowProtectedAppendWrites. O estado bloqueado permite apenas o aumento do tempo de retenção da imutabilidade. Uma política só pode ser criada em um estado Desabilitado ou Desbloqueado e pode ser alternada entre os dois estados. Somente uma política em um estado Desbloqueado pode fazer a transição para um estado Bloqueado que não pode ser revertido. Essa propriedade só pode ser alterada quando a conta é criada com '-EnableAccountLevelImmutability'.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyExpirationPeriodInDay

O período de expiração da chave desta conta, é preciso para dias.

Tipo:Int32
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyName

Se estiver usando -KeyvaultEncryption para habilitar a criptografia com o Key Vault, especifique a propriedade Keyname com essa opção.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyvaultEncryption

Indica se o Microsoft KeyVault deve ou não ser usado para as chaves de criptografia ao usar a Criptografia do Serviço de Armazenamento. Se KeyName, KeyVersion e KeyVaultUri estiverem definidos, KeySource será definido como Microsoft.Keyvault se esse parâmetro estiver definido ou não.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyVaultFederatedClientId

Defina ClientId do aplicativo multilocatário a ser usado em conjunto com a identidade atribuída pelo usuário para criptografia do lado do servidor de chaves gerenciadas pelo cliente entre locatários na conta de armazenamento.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyVaultUri

Ao usar a Criptografia do Key Vault especificando o parâmetro -KeyvaultEncryption, use essa opção para especificar o URI para o Key Vault.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyVaultUserAssignedIdentityId

Defina a ID do recurso para a Identidade atribuída pelo usuário usada para acessar o Azure KeyVault da Criptografia da Conta de Armazenamento, a ID deve estar no UserAssignIdentityId da conta de armazenamento.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyVersion

Ao usar a Criptografia do Key Vault especificando o parâmetro -KeyvaultEncryption, use essa opção para especificar o URI para a Versão da Chave.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-MinimumTlsVersion

A versão mínima do TLS a ser permitida em solicitações de armazenamento.

Tipo:String
Valores aceitos:TLS1_0, TLS1_1, TLS1_2
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Name

Especifica o nome da conta de armazenamento a ser modificada.

Tipo:String
Aliases:StorageAccountName, AccountName
Cargo:1
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-NetworkRuleSet

NetworkRuleSet é usado para definir um conjunto de regras de configuração para firewalls e redes virtuais, bem como para definir valores para propriedades de rede, como serviços com permissão para ignorar as regras e como lidar com solicitações que não correspondem a nenhuma das regras definidas.

Tipo:PSNetworkRuleSet
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-PublicNetworkAccess

Permitir ou não o acesso à rede pública à Conta de Armazenamento.Os valores possíveis incluem: 'Habilitado', 'Desabilitado'.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-PublishInternetEndpoint

Indica se os pontos de extremidade de armazenamento de roteamento da Internet devem ser publicados

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-PublishMicrosoftEndpoint

Indica se os pontos de extremidade de armazenamento de roteamento da Microsoft devem ser publicados

Tipo:Boolean
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ResourceGroupName

Especifica o nome do grupo de recursos no qual modificar a conta de armazenamento.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-RoutingChoice

A opção de roteamento define o tipo de roteamento de rede escolhido pelo usuário. Os valores possíveis incluem: 'MicrosoftRouting', 'InternetRouting'

Tipo:String
Valores aceitos:MicrosoftRouting, InternetRouting
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-SasExpirationPeriod

O período de expiração SAS desta conta, é um intervalo de tempo e preciso em segundos.

Tipo:TimeSpan
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-SkuName

Especifica o nome do SKU da conta de armazenamento. Os valores aceitáveis para esse parâmetro são:

  • Standard_LRS - Armazenamento com redundância local.
  • Standard_ZRS - Armazenamento com redundância de zona.
  • Standard_GRS - Armazenamento com redundância geográfica.
  • Standard_RAGRS - Armazenamento com redundância geográfica com acesso de leitura.
  • Premium_LRS - Armazenamento premium com redundância local.
  • Standard_GZRS - Armazenamento com redundância geográfica com redundância de zona.
  • Standard_RAGZRS - Armazenamento com redundância de zona com redundância geográfica de acesso de leitura. Não é possível alterar Standard_ZRS e Premium_LRS tipos para outros tipos de conta. Você não pode alterar outros tipos de conta para Standard_ZRS ou Premium_LRS.
Tipo:String
Aliases:StorageAccountType, AccountType, Type
Valores aceitos:Standard_LRS, Standard_ZRS, Standard_GRS, Standard_RAGRS, Premium_LRS, Standard_GZRS, Standard_RAGZRS
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-StorageEncryption

Indica se a criptografia da conta de armazenamento deve ou não ser definida para usar chaves gerenciadas pela Microsoft.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Tag

Pares de chave-valor na forma de uma tabela de hash definida como tags no servidor. Por exemplo: @{key0="value0"; chave1=$null; chave2="valor2"}

Tipo:Hashtable
Aliases:Tags
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-UpgradeToStorageV2

Atualize o tipo de conta de armazenamento de Storage ou BlobStorage para StorageV2.

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-UserAssignedIdentityId

Defina as IDs de recurso para a nova identidade atribuída ao usuário da Conta de Armazenamento, a identidade será usada com serviços de gerenciamento de chaves, como o Azure KeyVault.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-UseSubDomain

Indica se a validação indireta do CName deve ser habilitada.

Tipo:Nullable<T>[Boolean]
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

String

Hashtable

Saídas

PSStorageAccount