Set-AzStorageAccount

Modifie un compte de stockage.

Syntaxe

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

L’applet de commande Set-AzStorageAccount modifie un compte Stockage Azure. Vous pouvez utiliser cette applet de commande pour modifier le type de compte, mettre à jour un domaine client ou définir des étiquettes sur un compte de stockage.

Exemples

Exemple 1 : Définir le type de compte de stockage

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

Cette commande définit le type de compte de stockage sur Standard_RAGRS.

Exemple 2 : Définir un domaine personnalisé pour un compte de stockage

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

Cette commande définit un domaine personnalisé pour un compte de stockage.

Exemple 3 : Définir la valeur du niveau d’accès

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

La commande définit la valeur du niveau d’accès à froid.

Exemple 4 : Définir le domaine et les balises personnalisés

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

La commande définit le domaine personnalisé et les balises d’un compte de stockage.

Exemple 5 : Définir KeySource de chiffrement sur 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

Cette commande définit Encryption KeySource avec un coffre de clés créé. Si vous souhaitez activer la rotation automatique des clés, ne définissez pas de keyversion lors de la première définition des propriétés keyvault pour la première fois, ou nettoyez-la en définissant à nouveau les propriétés de coffre de clés avec keyversion comme étant vides.

Exemple 6 : Définir KeySource de chiffrement sur « Microsoft.Storage »

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

Cette commande définit Encryption KeySource sur « Microsoft.Storage »

Exemple 7 : Définir la propriété NetworkRuleSet d’un compte de stockage avec 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"})

Cette commande définit la propriété NetworkRuleSet d’un compte de stockage avec JSON

Exemple 8 : Obtenir la propriété NetworkRuleSet à partir d’un compte de stockage et la définir sur un autre compte de stockage

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

Cette première commande obtient la propriété NetworkRuleSet à partir d’un compte de stockage, et la deuxième commande la définit sur un autre compte de stockage.

Exemple 9 : Mettre à niveau un compte de stockage avec le type « Stockage » ou « BlobStorage » vers le compte de stockage de type « StorageV2 »

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

La commande met à niveau un compte de stockage avec le type « Stockage » ou « BlobStorage » vers le compte de stockage de type « StorageV2 ».

Exemple 10 : Mettez à jour un compte de stockage en activant Azure Files Microsoft Entra Domain Services Authentication et en définissant 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

La commande met à jour un compte de stockage en activant l’authentification Microsoft Entra Domain Services Azure Files.

Exemple 11 : Mettre à jour un compte de stockage en activant Files domaine Active Directory Service Authentication, puis afficher le paramètre d’authentification basé sur l’identité de fichier

$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

La commande met à jour un compte de stockage en activant Azure Files domaine Active Directory Service Authentication, puis affiche le paramètre d’authentification basé sur l’identité de fichier

Exemple 12 : Définir MinimumTlsVersion, AllowBlobPublicAccess et 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

La commande définit MinimumTlsVersion, AllowBlobPublicAccess et AllowSharedKeyAccess, puis affiche les 3 propriétés du compte.

Exemple 13 : Mettre à jour un compte de stockage avec le paramètre 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/"}

Cette commande met à jour un compte de stockage avec le paramètre RoutingPreference : PublishMicrosoftEndpoint en tant que false, PublishInternetEndpoint comme true et RoutingChoice en tant que MicrosoftRouting.

Exemple 14 : Mettre à jour un compte de stockage avec KeyExpirationPeriod et 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

Cette commande met à jour un compte de stockage avec KeyExpirationPeriod et SasExpirationPeriod, puis affiche les propriétés associées au compte mis à jour.

Exemple 15 : Mettre à jour un compte de stockage vers le chiffrement keyvault et accéder au coffre de clés avec l’identité affectée par l’utilisateur

# 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

Cette commande crée d’abord un coffre de clés et une identité affectée par l’utilisateur, puis met à jour un compte de stockage avec le chiffrement keyvault, le coffre de clés d’accès au stockage avec l’identité affectée par l’utilisateur.

Exemple 16 : Mettre à jour un compte de stockage chiffré KeyVault, à partir du coffre de clés d’accès avec l’identité affectée par l’utilisateur, pour accéder au coffre de clés avec l’identité affectée par le système

# 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

Cette commande affecte d’abord l’identité système au compte et donne à l’identité affectée par le système l’accès au coffre de clés ; met ensuite à jour le compte de stockage pour accéder au coffre de clés avec l’identité affectée par le système.

Exemple 17 : Mettre à jour à la fois keyvault et l’identité affectée par l’utilisateur pour accéder au coffre de clés

# 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

Cette commande met d’abord à jour l’identité affectée par l’utilisateur pour accéder au coffre de clés, puis mettez à jour le coffre de clés pour le chiffrement. Pour mettre à jour à la fois keyvault et l’identité affectée par l’utilisateur, nous avons besoin de la mise à jour avec les 2 étapes ci-dessus.

Exemple 18 : Mettre à jour un compte de stockage avec AllowCrossTenantReplication

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

$account.AllowCrossTenantReplication

False

Cette commande met à jour un compte de stockage en définissant AllowCrossTenantReplication sur false, puis affichez les propriétés associées au compte mis à jour.

Exemple 18 : Mettre à jour un compte de stockage en activant PublicNetworkAccess

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

$account.PublicNetworkAccess

Enabled

Cette commande met à jour un compte de stockage en définissant PublicNetworkAccess comme activé.

Exemple 19 : Mettre à jour la stratégie d’immuabilité au niveau du compte

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

$account.ImmutableStorageWithVersioning.Enabled
True

$account.ImmutableStorageWithVersioning.ImmutabilityPolicy

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

La commande met à jour les propriétés de stratégie d’immuabilité au niveau du compte sur un compte de stockage existant et affiche le résultat. Le compte de stockage doit être créé avec activer l’immuabilité au niveau du compte avec le contrôle de version. La stratégie d’immuabilité au niveau du compte est héritée et appliquée aux objets qui ne possèdent pas de stratégie d’immuabilité explicite au niveau de l’objet.

Exemple 20 : Mettre à jour un compte de stockage en activant Sftp et localuser

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

$account.EnableSftp
True

$account.EnableLocalUser
True

Cette commande met à jour un compte de stockage en activant Sftp et localuser. Pour exécuter la commande correctement, le compte de stockage doit déjà activer l’espace de noms hiérarchique.

Exemple 21 : Mettre à jour un compte de stockage avec Keyvault à partir d’un autre locataire (access Keyvault avec 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

Cette commande met à jour un compte de stockage avec Keyvault à partir d’un autre locataire (access Keyvault avec FederatedClientId).

Paramètres

-AccessTier

Spécifie le niveau d’accès du compte de stockage modifié par cette applet de commande. Les valeurs acceptables pour ce paramètre sont les suivantes : chaud et froid. Si vous modifiez le niveau d’accès, cela peut entraîner des frais supplémentaires. Pour plus d’informations, consultez Stockage Blob Azure : niveaux de stockage chaud et froid. Si le compte de stockage a le type StorageV2 ou BlobStorage, vous pouvez spécifier le paramètre AccessTier . Si le compte de stockage a le type de stockage, ne spécifiez pas le paramètre AccessTier .

Type:String
Valeurs acceptées:Hot, Cool
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryAccountType

Spécifie le type de compte Active Directory pour Stockage Azure. Les valeurs possibles sont les suivantes : « Utilisateur », « Ordinateur ».

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryAzureStorageSid

Spécifie l’identificateur de sécurité (SID) pour Stockage Azure. Ce paramètre doit être défini lorsque -EnableActiveDirectoryDomainServicesForFile a la valeur true.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryDomainGuid

Spécifie le GUID de domaine. Ce paramètre doit être défini lorsque -EnableActiveDirectoryDomainServicesForFile a la valeur true.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryDomainName

Spécifie le domaine principal pour lequel le serveur DNS AD fait autorité. Ce paramètre doit être défini lorsque -EnableActiveDirectoryDomainServicesForFile a la valeur true.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryDomainSid

Spécifie l’identificateur de sécurité (SID). Ce paramètre doit être défini lorsque -EnableActiveDirectoryDomainServicesForFile a la valeur true.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryForestName

Spécifie la forêt Active Directory à obtenir. Ce paramètre doit être défini lorsque -EnableActiveDirectoryDomainServicesForFile a la valeur true.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectoryNetBiosDomainName

Spécifie le nom de domaine NetBIOS. Ce paramètre doit être défini lorsque -EnableActiveDirectoryDomainServicesForFile a la valeur true.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ActiveDirectorySamAccountName

Spécifie le nom SAMAccountName Active Directory pour Stockage Azure.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AllowBlobPublicAccess

Autoriser ou interdire l’accès anonyme à tous les objets blob ou conteneurs dans le compte de stockage.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AllowCrossTenantReplication

Obtient ou définit l’autorisation ou l’interdiction de la réplication d’objets client Microsoft Entra. L’interprétation par défaut est vraie pour cette propriété.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AllowedCopyScope

Définissez la restriction de copie vers et depuis des comptes de stockage au sein d’un locataire Microsoft Entra ou avec des liaisons privées vers le même réseau virtuel. Les valeurs possibles sont les suivantes : 'PrivateLink', 'AAD'

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AllowSharedKeyAccess

Indique si le compte de stockage autorise l’autorisation des demandes avec la clé d’accès du compte via une clé partagée. Si la valeur est false, toutes les demandes, y compris les signatures d’accès partagé, doivent être autorisées avec l’ID Microsoft Entra. La valeur par défaut est Null, ce qui équivaut à true.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AsJob

Exécuter l’applet de commande en arrière-plan

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AssignIdentity

Générez et attribuez une nouvelle identité de compte de stockage pour ce compte de stockage à utiliser avec des services de gestion de clés comme Azure KeyVault.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter la commande cmdlet.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-CustomDomainName

Spécifie le nom du domaine personnalisé.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Type:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultSharePermission

Autorisation de partage par défaut pour les utilisateurs utilisant l’authentification Kerberos si le rôle RBAC n’est pas attribué.

Type:String
Valeurs acceptées:None, StorageFileDataSmbShareContributor, StorageFileDataSmbShareReader, StorageFileDataSmbShareElevatedContributor
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableActiveDirectoryDomainServicesForFile

Activez Azure Files domaine Active Directory l’authentification du service pour le compte de stockage.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableAzureActiveDirectoryDomainServicesForFile

Activez Azure Files domaine Active Directory l’authentification du service pour le compte de stockage.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableAzureActiveDirectoryKerberosForFile

Activez l’authentification Kerberos du service Azure Files domaine Active Directory pour le compte de stockage.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableHttpsTrafficOnly

Indique si le compte de stockage active uniquement le trafic HTTPS.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableLargeFileShare

Indique si le compte de stockage peut prendre en charge des partages de fichiers volumineux avec plus de 5 Tio de capacité. Une fois le compte activé, la fonctionnalité ne peut pas être désactivée. Actuellement uniquement pris en charge pour les types de réplication LRS et ZRS, les conversions de comptes en comptes géoredondants ne seraient pas possibles. En savoir plus sur https://go.microsoft.com/fwlink/?linkid=2086047

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableLocalUser

Activer la fonctionnalité des utilisateurs locaux pour le compte de stockage.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableSftp

Activez le protocole de transfert de fichiers sécurisé pour le compte de stockage.

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Force

Force l’écriture de la modification dans le compte de stockage.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-IdentityType

Définissez le nouveau type d’identité de compte de stockage, l’idenetity est à utiliser avec des services de gestion de clés comme Azure KeyVault.

Type:String
Valeurs acceptées:SystemAssigned, UserAssigned, SystemAssignedUserAssigned, None
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ImmutabilityPeriod

Période d’immuabilité pour les objets blob dans le conteneur depuis la création de la stratégie en jours. Cette propriété ne peut être modifiée que lorsque le compte est créé avec « -EnableAccountLevelImmutability ».

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ImmutabilityPolicyState

Mode de la stratégie. Les valeurs possibles sont les suivantes : « Déverrouillé », « Verrouillé », « Désactivé ». L’état désactivé désactive la stratégie. L’état déverrouillé permet d’augmenter et de diminuer le temps de rétention de l’immuabilité et permet également d’activer la propriété allowProtectedAppendWrites. L’état verrouillé autorise uniquement l’augmentation du temps de rétention de l’immuabilité. Une stratégie ne peut être créée que dans un état Désactivé ou déverrouillé et peut être bascule entre les deux états. Seule une stratégie dans un état déverrouillé peut passer à un état verrouillé qui ne peut pas être rétabli. Cette propriété ne peut être modifiée que lorsque le compte est créé avec « -EnableAccountLevelImmutability ».

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyExpirationPeriodInDay

La période d’expiration de la clé de ce compte est exacte à jour.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyName

Si vous utilisez -KeyvaultEncryption pour activer le chiffrement avec Key Vault, spécifiez la propriété Keyname avec cette option.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyvaultEncryption

Indique s’il faut ou non utiliser Microsoft KeyVault pour les clés de chiffrement lors de l’utilisation du chiffrement du service de stockage. Si KeyName, KeyVersion et KeyVaultUri sont tous définis, KeySource est défini sur Microsoft.Keyvault si ce paramètre est défini ou non.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyVaultFederatedClientId

Définissez ClientId de l’application multilocataire à utiliser conjointement avec l’identité affectée par l’utilisateur pour le chiffrement côté serveur géré par le client interlocataire sur le compte de stockage.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyVaultUri

Lorsque vous utilisez Key Vault Encryption en spécifiant le paramètre -KeyvaultEncryption, utilisez cette option pour spécifier l’URI du coffre de clés.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyVaultUserAssignedIdentityId

Définissez l’ID de ressource pour l’identité affectée par l’utilisateur utilisée pour accéder au chiffrement de compte de stockage Azure KeyVault, l’ID doit se trouver dans userAssignIdentityId du compte de stockage.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyVersion

Lorsque vous utilisez Key Vault Encryption en spécifiant le paramètre -KeyvaultEncryption, utilisez cette option pour spécifier l’URI de la version de clé.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MinimumTlsVersion

Version TLS minimale à autoriser sur les demandes de stockage.

Type:String
Valeurs acceptées:TLS1_0, TLS1_1, TLS1_2
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Name

Spécifie le nom du compte de stockage à modifier.

Type:String
Alias:StorageAccountName, AccountName
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-NetworkRuleSet

NetworkRuleSet est utilisé pour définir un ensemble de règles de configuration pour les pare-feu et les réseaux virtuels, ainsi que pour définir des valeurs pour les propriétés réseau telles que les services autorisés à contourner les règles et comment gérer les requêtes qui ne correspondent à aucune des règles définies.

Type:PSNetworkRuleSet
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PublicNetworkAccess

Autoriser ou interdire l’accès au réseau public au compte de stockage. Les valeurs possibles sont les suivantes : « Activé », « Désactivé ».

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PublishInternetEndpoint

Indique si les points de terminaison de stockage de routage Internet doivent être publiés

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PublishMicrosoftEndpoint

Indique si les points de terminaison de stockage de routage Microsoft doivent être publiés

Type:Boolean
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ResourceGroupName

Spécifie le nom du groupe de ressources dans lequel modifier le compte de stockage.

Type:String
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-RoutingChoice

Le choix de routage définit le type de routage réseau choisi par l’utilisateur. Les valeurs possibles sont les suivantes : « MicrosoftRouting », « InternetRouting »

Type:String
Valeurs acceptées:MicrosoftRouting, InternetRouting
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SasExpirationPeriod

La période d’expiration SAS de ce compte est une période de temps et précise à quelques secondes.

Type:TimeSpan
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SkuName

Spécifie le nom de la référence SKU du compte de stockage. Les valeurs valides pour ce paramètre sont :

  • Standard_LRS - Stockage localement redondant.
  • Standard_ZRS - Stockage redondant interzone.
  • Standard_GRS - Stockage géoredondant.
  • Standard_RAGRS - Accès en lecture au stockage géoredondant.
  • Premium_LRS - Stockage localement redondant Premium.
  • Standard_GZRS - Stockage géoredondant interzone redondant.
  • Standard_RAGZRS : stockage géoredondant interredondant avec accès en lecture. Vous ne pouvez pas modifier les types Standard_ZRS et Premium_LRS en autres types de compte. Vous ne pouvez pas modifier d’autres types de comptes en Standard_ZRS ou Premium_LRS.
Type:String
Alias:StorageAccountType, AccountType, Type
Valeurs acceptées:Standard_LRS, Standard_ZRS, Standard_GRS, Standard_RAGRS, Premium_LRS, Standard_GZRS, Standard_RAGZRS
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-StorageEncryption

Indique si le chiffrement du compte de stockage doit être défini ou non pour utiliser des clés gérées par Microsoft.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Tag

Paires clé-valeur sous la forme d’une table de hachage définie en tant que balises sur le serveur. Par exemple : @{key0="value0 » ; key1=$null ; key2="value2"}

Type:Hashtable
Alias:Tags
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-UpgradeToStorageV2

Mettez à niveau le type de compte de stockage à partir de Stockage ou BlobStorage vers StorageV2.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UserAssignedIdentityId

Définissez les ID de ressource pour la nouvelle identité affectée par le compte de stockage, l’identité sera utilisée avec les services de gestion de clés comme Azure KeyVault.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UseSubDomain

Indique s’il faut activer la validation CName indirecte.

Type:Nullable<T>[Boolean]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

Hashtable

Sorties

PSStorageAccount