Polecenie cmdlet Set-AzStorageAccount modyfikuje konto usługi Azure Storage.
To polecenie cmdlet służy do modyfikowania typu konta, aktualizowania domeny klienta lub ustawiania tagów na koncie usługi Storage.
Polecenie ustawia domenę niestandardową i tagi dla konta magazynu.
Przykład 5. Ustawianie wartości KeySource szyfrowania na 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 properties with KeyVersion, can update account by set KeyVersion to empty
Set-AzStorageAccount -ResourceGroupName "MyResourceGroup" -Name "mystorageaccount" -KeyvaultEncryption -KeyName $key.Name -KeyVersion "" -KeyVaultUri $keyVault.VaultUri
To polecenie ustawiło wartość Encryption KeySource przy użyciu nowego utworzonego magazynu kluczy.
Jeśli chcesz włączyć automatyczną rotację kluczy, nie należy ustawiać opcji keyversion podczas ustawiania właściwości usługi Keyvault po raz pierwszy ani czyścić ją, ustawiając właściwości funkcji keyvault ponownie z wartością keyversion jako pustą.
Przykład 6. Ustawienie pozycji Encryption KeySource na wartość "Microsoft.Storage"
Polecenie uaktualnia konto magazynu z rodzajem "Storage" lub "BlobStorage" do konta magazynu typu "StorageV2".
Przykład 10: Aktualizowanie konta magazynu przez włączenie uwierzytelniania usług Microsoft Entra Domain Services w usłudze Azure Files i ustawienie defaultSharePermission.
Polecenie zaktualizuj konto magazynu, włączając uwierzytelnianie usług Microsoft Entra Domain Services w usłudze Azure Files.
Przykład 11: Aktualizowanie konta magazynu przez włączenie uwierzytelniania usługi Active Directory Domain Service, a następnie wyświetlenie ustawienia uwierzytelniania opartego na tożsamościach plików
To polecenie aktualizuje konto magazynu z ustawieniem RoutingPreference: PublishMicrosoftEndpoint as false, PublishInternetEndpoint as true i RoutingChoice as MicrosoftRouting.
Przykład 14: Aktualizowanie konta magazynu za pomocą polecenia KeyExpirationPeriod i SasExpirationPeriod za pomocą polecenia SasExpirationAction
To polecenie aktualizuje konto magazynu za pomocą polecenia KeyExpirationPeriod i SasExpirationPeriod za pomocą polecenia SasExpirationAction, a następnie wyświetla zaktualizowane właściwości powiązane z kontem.
Przykład 15: Aktualizowanie konta magazynu do szyfrowania keyvault i uzyskiwanie dostępu do usługi Keyvault przy użyciu tożsamości przypisanej przez użytkownika
# 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
To polecenie najpierw tworzy usługę keyvault i tożsamość przypisaną przez użytkownika, a następnie aktualizuje konto magazynu za pomocą szyfrowania keyvault, magazynu access keyvault przy użyciu tożsamości przypisanej przez użytkownika.
Przykład 16: Aktualizowanie zaszyfrowanego konta magazynu usługi Keyvault z poziomu dostępu do usługi Keyvault przy użyciu tożsamości przypisanej przez użytkownika w celu uzyskania dostępu do usługi Keyvault przy użyciu tożsamości przypisanej przez system
# Assign System identity to the account, and give the system assigned identity access 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
To polecenie najpierw przypisuje tożsamość systemowa do konta i nadaje systemowi przypisanej tożsamości dostęp do magazynu kluczy; następnie aktualizuje konto magazynu, aby uzyskać dostęp do usługi Keyvault przy użyciu tożsamości przypisanej przez system.
Przykład 17: Aktualizowanie zarówno usługi Keyvault, jak i tożsamości przypisanej przez użytkownika w celu uzyskania dostępu do magazynu kluczy
# 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
To polecenie najpierw zaktualizuj tożsamość przypisaną przez użytkownika, aby uzyskać dostęp do usługi Keyvault, a następnie zaktualizuj magazyn kluczy pod kątem szyfrowania.
Aby zaktualizować zarówno usługę Keyvault, jak i tożsamość przypisaną przez użytkownika, musimy przeprowadzić aktualizację za pomocą powyższych 2 kroków.
Przykład 18. Aktualizowanie konta magazynu za pomocą polecenia AllowCrossTenantReplication
To polecenie aktualizuje konto magazynu, ustawiając wartość AllowCrossTenantReplication na false, a następnie wyświetla zaktualizowane właściwości powiązane z kontem.
Przykład 18: Aktualizowanie konta magazynu przez włączenie funkcji PublicNetworkAccess
Polecenie aktualizuje właściwości zasad niezmienności na poziomie konta na istniejącym koncie magazynu i wyświetla wynik.
Konto magazynu należy utworzyć z włączoną niezmiennością na poziomie konta z obsługą wersji.
Zasady niezmienności na poziomie konta będą dziedziczone i stosowane do obiektów, które nie mają jawnych zasad niezmienności na poziomie obiektu.
Przykład 20: Aktualizowanie konta magazynu przez włączenie protokołu Sftp i użytkownika lokalnego
To polecenie aktualizuje konto magazynu przez włączenie protokołu Sftp i użytkownika lokalnego.
Aby pomyślnie uruchomić polecenie, konto magazynu powinno już włączyć hierarchiczną przestrzeń nazw.
Przykład 21: Aktualizowanie konta magazynu przy użyciu usługi Keyvault z innej dzierżawy (uzyskiwanie dostępu do usługi Keyvault przy użyciu identyfikatora FederatedClientId)
To polecenie aktualizuje konto magazynu za pomocą usługi Keyvault z innej dzierżawy (uzyskaj dostęp do usługi Keyvault za pomocą identyfikatora FederatedClientId).
Przykład 22: Aktualizowanie konta magazynu przez włączenie uwierzytelniania OAUTH protokołu SMB
To polecenie aktualizuje konto magazynu, ustawiając wartość EnableSmbOAuth na true, a następnie wyświetla zaktualizowane właściwości powiązane z kontem.
Przykład 23. Aktualizowanie konta magazynu przy użyciu zasad umieszczania strefy
To polecenie aktualizuje konto magazynu, ustawiając wartość Zone na 1 i ZonePlacementPolicy na Any, a następnie wyświetla zaktualizowane właściwości powiązane z kontem.
Przykład 24. Włączanie replikacji priorytetu geograficznego obiektu blob na koncie magazynu
To polecenie umożliwia replikację priorytetu geograficznego obiektu blob na koncie magazynu.
Parametry
-AccessTier
Określa warstwę dostępu konta magazynu, którą modyfikuje to polecenie cmdlet.
Dopuszczalne wartości tego parametru to: Gorąca i Chłodna.
Jeśli zmienisz warstwę dostępu, może to spowodować naliczanie dodatkowych opłat. Aby uzyskać więcej informacji, zobacz Azure Blob Storage: Warstwy magazynowania Gorąca i Chłodna.
Jeśli konto magazynu ma typ StorageV2 lub BlobStorage, możesz określić parametr AccessTier .
Jeśli konto magazynu ma wartość Kind as Storage, nie należy określać parametru AccessTier .
Określa identyfikator zabezpieczeń (SID) dla usługi Azure Storage. Ten parametr należy ustawić, gdy -EnableActiveDirectoryDomainServicesForFile jest ustawiona na wartość true.
Określa domenę podstawową, dla którego serwer DNS usługi AD jest autorytatywny. Ten parametr należy ustawić, gdy -EnableActiveDirectoryDomainServicesForFile jest ustawiona na wartość true.
Określa las usługi Active Directory do pobrania. Ten parametr należy ustawić, gdy -EnableActiveDirectoryDomainServicesForFile jest ustawiona na wartość true.
Pobiera lub ustawia zezwala lub nie zezwala na replikację obiektów dzierżawy entra firmy Microsoft. Domyślna interpretacja jest prawdziwa dla tej właściwości.
Ustaw opcję Ogranicz kopiowanie do i z kont magazynu w dzierżawie microsoft Entra lub za pomocą linków prywatnych do tej samej sieci wirtualnej. Możliwe wartości to: "PrivateLink", "AAD"
Wskazuje, czy konto magazynu zezwala na autoryzację żądań przy użyciu klucza dostępu do konta za pośrednictwem klucza współużytkowanego. Jeśli wartość false, wszystkie żądania, w tym sygnatury dostępu współdzielonego, muszą być autoryzowane za pomocą identyfikatora Entra firmy Microsoft. Wartość domyślna to null, która jest równoważna wartości true.
Wskazuje, czy replikacja priorytetu geograficznego obiektu blob jest włączona dla konta magazynu.
Ta funkcja zapewnia rozszerzoną replikację geograficzną z umową dotyczącą poziomu usług na potrzeby replikacji priorytetowej w celu poprawy celów czasu odzyskiwania (RTO).
Dostępne tylko dla typów kont magazynu geograficznie nadmiarowego (GRS, GZRS, RAGRS, RAGZRS).
Wskazuje, czy konto magazynu może obsługiwać duże udziały plików z ponad 5 tiB pojemności.
Po włączeniu konta nie można wyłączyć tej funkcji.
Obecnie obsługiwane tylko w przypadku typów replikacji LRS i ZRS, dlatego konwersje kont na konta geograficznie nadmiarowe nie byłyby możliwe.
Dowiedz się więcej w https://go.microsoft.com/fwlink/?linkid=2086047
Okres niezmienności obiektów blob w kontenerze od czasu utworzenia zasad w dniach.
Tę właściwość można zmienić tylko po utworzeniu konta za pomocą polecenia "-EnableAccountLevelImmutability".
Tryb zasad. Możliwe wartości to: "Unlocked", "Locked", "Disabled".
Wyłączono stan wyłącza zasady.
Stan odblokowany umożliwia zwiększenie i zmniejszenie czasu przechowywania niezmienności, a także włączenie właściwości allowProtectedAppendWrites.
Stan zablokowany umożliwia tylko wydłużenie czasu przechowywania niezmienności.
Zasady można utworzyć tylko w stanie Wyłączone lub Odblokowane i można je przełączać między dwoma stanami. Tylko zasady w stanie Odblokowane mogą przejść do stanu Zablokowane, którego nie można przywrócić.
Tę właściwość można zmienić tylko po utworzeniu konta za pomocą polecenia "-EnableAccountLevelImmutability".
Wskazuje, czy używać usługi Microsoft KeyVault dla kluczy szyfrowania podczas korzystania z szyfrowania usługi Storage.
Jeśli wszystkie wartości KeyName, KeyVersion i KeyVaultUri są ustawione, właściwość KeySource zostanie ustawiona na Wartość Microsoft.Keyvault, niezależnie od tego, czy ten parametr jest ustawiony, czy nie.
Ustaw wartość ClientId aplikacji wielodostępnej, która ma być używana w połączeniu z tożsamością przypisaną przez użytkownika na potrzeby szyfrowania po stronie serwera na koncie magazynu między dzierżawami.
W przypadku używania szyfrowania usługi Key Vault przez określenie parametru -KeyvaultEncryption użyj tej opcji, aby określić identyfikator URI w usłudze Key Vault.
Ustaw identyfikator zasobu dla tożsamości przypisanej przez użytkownika używanej do uzyskiwania dostępu do usługi Azure KeyVault szyfrowania konta magazynu. Identyfikator musi znajdować się w identyfikatorze UserAssignIdentityId konta magazynu.
W przypadku używania szyfrowania usługi Key Vault przez określenie parametru -KeyvaultEncryption użyj tej opcji, aby określić identyfikator URI wersji klucza.
Element NetworkRuleSet służy do definiowania zestawu reguł konfiguracji dla zapór i sieci wirtualnych, a także ustawiania wartości dla właściwości sieci, takich jak usługi dozwolone do obejścia reguł i sposobu obsługi żądań, które nie są zgodne z żadnym ze zdefiniowanych reguł.
Akcja, która ma zostać wykonana, gdy zostanie naruszona funkcja SasExpirationPeriod. Akcja "Dziennik" może służyć do celów inspekcji, a akcja "Blokuj" może służyć do blokowania i odmowy użycia tokenów SAS, które nie są zgodne z okresem wygaśnięcia zasad sygnatury dostępu współdzielonego.
Standard_RAGZRS — dostęp do odczytu do magazynu strefowo nadmiarowego geograficznie nadmiarowego.
StandardV2_LRS — magazyn lokalnie nadmiarowy dla usługi File Provision w wersji 2.
StandardV2_GRS — magazyn geograficznie nadmiarowy dla aprowizacji plików w wersji 2.
StandardV2_ZRS — magazyn strefowo nadmiarowy dla usługi File Provision w wersji 2.
StandardV2_GZRS — magazyn strefowo nadmiarowy geograficznie nadmiarowy dla aprowizacji plików w wersji 2.
PremiumV2_LRS — magazyn lokalnie nadmiarowy Premium dla usługi File Provision w wersji 2.
PremiumV2_ZRS — magazyn strefowo nadmiarowy w warstwie Premium dla usługi File Provision w wersji 2.
Nie można zmienić typów Standard_ZRS i Premium_LRS na inne typy kont.
Nie można zmienić innych typów kont na Standard_ZRS lub Premium_LRS.
Ustaw identyfikatory zasobów dla nowej tożsamości przypisanej przez użytkownika konta magazynu. Tożsamość będzie używana z usługami zarządzania kluczami, takimi jak Azure KeyVault.
To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.
Źródło tej treści można znaleźć na GitHubie, gdzie można także tworzyć i przeglądać problemy oraz pull requesty. Więcej informacji znajdziesz w naszym przewodniku dla współautorów.