Udostępnij za pośrednictwem


Set-AzureKeyVaultManagedStorageSasDefinition

Ustawia definicję sygnatury dostępu współdzielonego (SAS) z usługą Key Vault dla danego konta usługi Azure Storage zarządzanego przez usługę Key Vault.

Ostrzeżenie

Moduł AzureRM PowerShell został oficjalnie przestarzały od 29 lutego 2024 r. Zaleca się migrowanie użytkowników z modułu AzureRM do modułu Az programu PowerShell w celu zapewnienia ciągłej obsługi i aktualizacji.

Mimo że moduł AzureRM może nadal działać, nie jest już utrzymywany ani obsługiwany, umieszczając wszelkie dalsze zastosowania według uznania i ryzyka użytkownika. Zapoznaj się z naszymi zasobami migracji, aby uzyskać wskazówki dotyczące przejścia do modułu Az.

Składnia

Set-AzureKeyVaultManagedStorageSasDefinition
   [-VaultName] <String>
   [-AccountName] <String>
   [-Name] <String>
   [-TemplateUri] <String>
   [-SasType] <String>
   [-Disable]
   [-Tag <Hashtable>]
   -ValidityPeriod <TimeSpan>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzureKeyVaultManagedStorageSasDefinition
   [-InputObject] <PSKeyVaultManagedStorageAccountIdentityItem>
   [-Name] <String>
   [-TemplateUri] <String>
   [-SasType] <String>
   [-Disable]
   [-Tag <Hashtable>]
   -ValidityPeriod <TimeSpan>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Opis

Ustawia definicję sygnatury dostępu współdzielonego (SAS) z danym kontem usługi Azure Storage zarządzanym przez usługę Key Vault. Spowoduje to również ustawienie wpisu tajnego, który może służyć do uzyskiwania tokenu SAS dla tej definicji sygnatury dostępu współdzielonego. Token SAS jest generowany przy użyciu tych parametrów i aktywnego klucza zarządzanego konta usługi Azure Storage w usłudze Key Vault.

Przykłady

Przykład 1: Ustawianie definicji sygnatury dostępu współdzielonego typu konta i uzyskiwanie bieżącego tokenu SAS na jego podstawie

PS C:\> $sa = Get-AzureRmStorageAccount -Name mysa -ResourceGroupName myrg
PS C:\> $kv = Get-AzureRmKeyVault -VaultName mykv
PS C:\> Add-AzureKeyVaultManagedStorageAccount -VaultName $kv.VaultName -AccountName $sa.StorageAccountName -AccountResourceId $sa.Id -ActiveKeyName key1 -RegenerationPeriod 180
PS C:\> $sctx = New-AzureStorageContext -StorageAccountName $sa.StorageAccountName -Protocol Https -StorageAccountKey Key1
PS C:\> $start = [System.DateTime]::Now.AddDays(-1)
PS C:\> $end = [System.DateTime]::Now.AddMonths(1)
PS C:\> $at = New-AzureStorageAccountSasToken -Service blob,file,Table,Queue -ResourceType Service,Container,Object -Permission "racwdlup" -Protocol HttpsOnly -StartTime $start -ExpiryTime $end -Context $sctx
PS C:\> $sas = Set-AzureKeyVaultManagedStorageSasDefinition -AccountName $sa.StorageAccountName -VaultName $kv.VaultName -Name accountsas -TemplateUri $at -SasType 'account' -ValidityPeriod ([System.Timespan]::FromDays(30))
PS C:\> Get-AzureKeyVaultSecret -VaultName $kv.VaultName -Name $sas.Sid.Substring($sas.Sid.LastIndexOf('/')+1)

Ustawia definicję sygnatury dostępu współdzielonego konta "accountsas" na koncie magazynu zarządzanego przez usługę KeyVault "mysa" w magazynie "mykv". W szczególności powyższa sekwencja wykonuje następujące czynności:

  • pobiera (istniejące) konto magazynu
  • pobiera (wcześniej istniejący) magazyn kluczy
  • Dodaje konto magazynu zarządzanego przez usługę KeyVault do magazynu, ustawiając wartość Key1 jako aktywny klucz i z okresem rewitalizacji przez 180 dni
  • Ustawia kontekst magazynu dla określonego konta magazynu z kluczem 1
  • Tworzy token sygnatury dostępu współdzielonego konta dla usług Blob, File, Table i Queue, dla typów zasobów Service, Container and Object, z wszystkimi uprawnieniami, za pośrednictwem protokołu HTTPS i z określonymi datami rozpoczęcia i zakończenia
  • Ustawia definicję sygnatury dostępu współdzielonego magazynu zarządzanego przez usługę KeyVault w magazynie z identyfikatorem URI szablonu jako utworzonym powyżej tokenem SAS typu "account" i prawidłowym przez 30 dni
  • pobiera rzeczywisty token dostępu z wpisu tajnego usługi KeyVault odpowiadającego definicji sygnatury dostępu współdzielonego

Parametry

-AccountName

Nazwa zarządzanego konta magazynu usługi Key Vault. Polecenie cmdlet konstruuje nazwę FQDN zarządzanego konta magazynu z nazwy magazynu, obecnie wybranego środowiska i nazwy zarządzanego konta magazynu.

Typ:String
Aliasy:StorageAccountName
Position:1
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure

Typ:IAzureContextContainer
Aliasy:AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Disable

Wyłącza używanie definicji sygnatury dostępu współdzielonego do generowania tokenu sas.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-InputObject

ManagedStorageAccount, obiekt.

Typ:PSKeyVaultManagedStorageAccountIdentityItem
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Name

Nazwa definicji sygnatury dostępu współdzielonego magazynu. Polecenie cmdlet tworzy nazwę FQDN definicji sygnatury dostępu współdzielonego magazynu z nazwy magazynu, obecnie wybranego środowiska, nazwy konta magazynu i nazwy definicji sygnatury dostępu współdzielonego.

Typ:String
Aliasy:SasDefinitionName
Position:2
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SasType

Typ sygnatury dostępu współdzielonego magazynu.

Typ:String
Position:4
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Tag

Pary klucz-wartość w postaci tabeli skrótów. Na przykład: @{key0="value0"; key1=$null; key2="value2"}

Typ:Hashtable
Aliasy:Tags
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-TemplateUri

Identyfikator URI szablonu definicji sygnatury dostępu współdzielonego magazynu.

Typ:String
Position:3
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ValidityPeriod

Okres ważności, który będzie używany do ustawiania czasu wygaśnięcia tokenu sygnatury dostępu współdzielonego od momentu wygenerowania

Typ:Nullable<T>[TimeSpan]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-VaultName

Nazwa magazynu. Polecenie cmdlet konstruuje nazwę FQDN magazynu na podstawie nazwy i aktualnie wybranego środowiska.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

PSKeyVaultManagedStorageAccountIdentityItem

Parametry: InputObject (ByValue)

Dane wyjściowe

PSKeyVaultManagedStorageSasDefinition