Set-AzStorageAccount

Modifie un compte Stockage.

Syntax

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-Az Stockage Account 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 Stockage

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

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

Exemple 2 : Définir un domaine personnalisé pour un compte Stockage

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

Cette commande définit un domaine personnalisé pour un compte 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 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 propre-la en définissant à nouveau les propriétés de coffre de clés avec keyversion comme étant vides.

Exemple 6 : Définissez KeySource de chiffrement sur « Microsoft. Stockage »

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

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

Exemple 7 : Définir la propriété NetworkRuleSet d’un compte 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 Stockage avec JSON

Exemple 8 : Obtenir la propriété NetworkRuleSet à partir d’un compte Stockage et la définir sur un autre compte 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 Stockage, et la deuxième commande la définit sur un autre compte Stockage

Exemple 9 : Mettre à niveau un compte Stockage avec le type « Stockage » ou « Blob Stockage » vers le type « Stockage V2 » Stockage compte

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

La commande met à niveau un compte Stockage avec le type « Stockage » ou « Blob Stockage » vers le type « Stockage V2 » Stockage compte.

Exemple 10 : Mettez à jour un compte 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 Stockage en activant Azure Files Microsoft Entra Domain Services Authentication.

Exemple 11 : Mettre à jour un compte 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 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 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 Stockage avec le paramètre RoutingPreference : PublishMicrosoftEndpoint comme false, PublishInternetEndpoint comme true et RoutingChoice en tant que MicrosoftRouting.

Exemple 14 : Mettre à jour un compte 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 Stockage avec KeyExpirationPeriod et SasExpirationPeriod, puis affiche les propriétés associées au compte mis à jour.

Exemple 15 : Mettre à jour un compte 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é de coffre de clés chiffré, à 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 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 Stockage avec AllowCrossTenantReplication

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

$account.AllowCrossTenantReplication

False

Cette commande met à jour un compte 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 Stockage en activant PublicNetworkAccess

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

$account.PublicNetworkAccess

Enabled

Cette commande met à jour un compte 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 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 Stockage en activant Sftp et localuser. Pour exécuter la commande correctement, le compte Stockage doit déjà activer l’espace de noms hiérarchique.

Exemple 21 : Mettre à jour un compte 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 Stockage que cette applet de commande modifie. 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 Stockage a le type Stockage V2 ou Blob Stockage, vous pouvez spécifier le paramètre AccessTier. Si le compte Stockage a le type Stockage, ne spécifiez pas le paramètre AccessTier.

Type:String
Accepted values:Hot, Cool
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ActiveDirectorySamAccountName

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowBlobPublicAccess

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

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowedCopyScope

Définissez la restriction de copie vers et depuis des comptes 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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AsJob

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AssignIdentity

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CustomDomainName

Spécifie le nom du domaine personnalisé.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

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

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Accepted values:None, StorageFileDataSmbShareContributor, StorageFileDataSmbShareReader, StorageFileDataSmbShareElevatedContributor
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableActiveDirectoryDomainServicesForFile

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

Type:Boolean
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-EnableAzureActiveDirectoryDomainServicesForFile

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

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableAzureActiveDirectoryKerberosForFile

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

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableHttpsTrafficOnly

Indique si le compte Stockage active uniquement le trafic HTTPS.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableLocalUser

Activer la fonctionnalité des utilisateurs locaux pour le compte Stockage.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableSftp

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

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdentityType

Définissez le nouveau type d’identité de compte Stockage, l’idenetité est utilisée avec les services de gestion de clés comme Azure KeyVault.

Type:String
Accepted values:SystemAssigned, UserAssigned, SystemAssignedUserAssigned, None
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-KeyExpirationPeriodInDay

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

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyvaultEncryption

Indique si vous souhaitez ou non utiliser Microsoft KeyVault pour les clés de chiffrement lors de l’utilisation de Stockage Service Encryption. 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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyVaultUserAssignedIdentityId

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MinimumTlsVersion

Version TLS minimale à autoriser sur les demandes de stockage.

Type:String
Accepted values:TLS1_0, TLS1_1, TLS1_2
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Spécifie le nom du compte Stockage à modifier.

Type:String
Aliases:StorageAccountName, AccountName
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PublicNetworkAccess

Autoriser ou interdire l’accès au réseau public à Stockage Account.Possible valeurs sont les suivantes : « Activé », « Désactivé ».

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PublishInternetEndpoint

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

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PublishMicrosoftEndpoint

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

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

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

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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
Accepted values:MicrosoftRouting, InternetRouting
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkuName

Spécifie le nom de la référence SKU du compte 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
Aliases:StorageAccountType, AccountType, Type
Accepted values:Standard_LRS, Standard_ZRS, Standard_GRS, Standard_RAGRS, Premium_LRS, Standard_GZRS, Standard_RAGZRS
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-StorageEncryption

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Aliases:Tags
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UpgradeToStorageV2

Mettez à niveau Stockage type de compte de Stockage ou d’objet blob Stockage vers Stockage V2.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentityId

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSubDomain

Indique s’il faut activer la validation CName indirecte.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

String

Hashtable

Sorties

PSStorageAccount