Set-AzureKeyVaultManagedStorageSasDefinition
Imposta una definizione di firma di accesso condiviso con Key Vault per un determinato account di Archiviazione di Azure gestito da Key Vault.
Avviso
Il modulo AzureRM PowerShell è stato ufficialmente deprecato a partire dal 29 febbraio 2024. È consigliabile eseguire la migrazione da AzureRM al modulo Az PowerShell per garantire il supporto e gli aggiornamenti continui.
Anche se il modulo AzureRM può ancora funzionare, non è più gestito o supportato, posizionando qualsiasi uso continuo a discrezione e rischio dell'utente. Per indicazioni sulla transizione al modulo Az, vedere le risorse di migrazione.
Sintassi
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>]
Descrizione
Imposta una definizione di firma di accesso condiviso con un determinato account di Archiviazione di Azure gestito da Key Vault. Viene inoltre impostato un segreto che può essere usato per ottenere il token di firma di accesso condiviso in base a questa definizione di firma di accesso condiviso. Il token di firma di accesso condiviso viene generato usando questi parametri e la chiave attiva dell'insieme di credenziali delle chiavi gestito Archiviazione di Azure Account.
Esempio
Esempio 1: Impostare una definizione di firma di accesso condiviso di tipo account e ottenere un token di firma di accesso condiviso corrente basato su di esso
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)
Imposta una definizione di firma di accesso condiviso dell'account 'accountsas' in un account di archiviazione gestito da KeyVault 'mysa' nell'insieme di credenziali 'mykv'. In particolare, la sequenza precedente esegue le operazioni seguenti:
- ottiene un account di archiviazione (preesistente)
- ottiene un insieme di credenziali delle chiavi (preesistente)
- aggiunge un account di archiviazione gestito da KeyVault all'insieme di credenziali, impostando Key1 come chiave attiva e con un periodo di rigenerazione di 180 giorni
- imposta un contesto di archiviazione per l'account di archiviazione specificato, con Key1
- crea un token di firma di accesso condiviso dell'account per i servizi BLOB, file, tabelle e code, per i tipi di risorse Service, Container e Object, con tutte le autorizzazioni, su https e con le date di inizio e fine specificate
- imposta una definizione di firma di accesso condiviso gestita da KeyVault nell'insieme di credenziali, con l'URI del modello come token di firma di accesso condiviso creato in precedenza, di tipo sas 'account' e valido per 30 giorni
- recupera il token di accesso effettivo dal segreto KeyVault corrispondente alla definizione della firma di accesso condiviso
Parametri
-AccountName
Nome dell'account di archiviazione gestito di Key Vault. Il cmdlet costruisce il nome FQDN di un nome dell'account di archiviazione gestito dal nome dell'insieme di credenziali, l'ambiente attualmente selezionato e il nome dell'account di archiviazione gestito.
Tipo: | String |
Alias: | StorageAccountName |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-DefaultProfile
Credenziali, account, tenant e sottoscrizione usati per la comunicazione con Azure
Tipo: | IAzureContextContainer |
Alias: | AzureRmContext, AzureCredential |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Disable
Disabilita l'uso della definizione di firma di accesso condiviso per la generazione di token di firma di accesso condiviso.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-InputObject
Oggetto Managed Archiviazione Account.
Tipo: | PSKeyVaultManagedStorageAccountIdentityItem |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Name
Archiviazione nome della definizione della firma di accesso condiviso. Il cmdlet costruisce il nome FQDN di una definizione di firma di accesso condiviso di archiviazione dal nome dell'insieme di credenziali, dall'ambiente attualmente selezionato, dal nome dell'account di archiviazione e dal nome della definizione della firma di accesso condiviso.
Tipo: | String |
Alias: | SasDefinitionName |
Posizione: | 2 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-SasType
Archiviazione tipo di firma di accesso condiviso.
Tipo: | String |
Posizione: | 4 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Tag
Coppie chiave-valore sotto forma di tabella hash. Ad esempio: @{key0="value0"; key1=$null; key2="value2"}
Tipo: | Hashtable |
Alias: | Tags |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-TemplateUri
Archiviazione URI del modello di definizione della firma di accesso condiviso.
Tipo: | String |
Posizione: | 3 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ValidityPeriod
Periodo di validità che verrà usato per impostare l'ora di scadenza del token di firma di accesso condiviso dal momento in cui viene generato
Tipo: | Nullable<T>[TimeSpan] |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-VaultName
Nome dell'insieme di credenziali. Il cmdlet costruisce il nome di dominio completo di un insieme di credenziali in base al nome e all'ambiente attualmente selezionato.
Tipo: | String |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
PSKeyVaultManagedStorageAccountIdentityItem
Parametri: InputObject (ByValue)
Output
PSKeyVaultManagedStorageSasDefinition