Condividi tramite


Set-AzKeyVaultManagedStorageSasDefinition

Imposta una definizione di firma di accesso condiviso con Key Vault per un determinato account di Archiviazione di Azure gestito da Key Vault.

Sintassi

Set-AzKeyVaultManagedStorageSasDefinition
   [-VaultName] <String>
   [-AccountName] <String>
   [-Name] <String>
   [-TemplateUri] <String>
   [-SasType] <String>
   [-Disable]
   [-Tag <Hashtable>]
   -ValidityPeriod <TimeSpan>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzKeyVaultManagedStorageSasDefinition
   [-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

$sa = Get-AzStorageAccount -Name mysa -ResourceGroupName myrg
$kv = Get-AzKeyVault -VaultName mykv
Add-AzKeyVaultManagedStorageAccount -VaultName $kv.VaultName -AccountName $sa.StorageAccountName -AccountResourceId $sa.Id -ActiveKeyName key1 -RegenerationPeriod ([System.Timespan]::FromDays(180))
$sctx = New-AzStorageContext -StorageAccountName $sa.StorageAccountName -Protocol Https -StorageAccountKey Key1
$start = [System.DateTime]::Now.AddDays(-1)
$end = [System.DateTime]::Now.AddMonths(1)
$at = "sv=2018-03-28&ss=bfqt&srt=sco&sp=rw&spr=https"
$sas = Set-AzKeyVaultManagedStorageSasDefinition -AccountName $sa.StorageAccountName -VaultName $kv.VaultName -Name accountsas -TemplateUri $at -SasType 'account' -ValidityPeriod ([System.Timespan]::FromDays(30))
Get-AzKeyVaultSecret -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:AzContext, 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 ManagedStorageAccount.

Tipo:PSKeyVaultManagedStorageAccountIdentityItem
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Name

Nome della definizione della firma di accesso condiviso di archiviazione. 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

Tipo di firma di accesso condiviso di archiviazione.

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

URI del modello di definizione della firma di accesso condiviso di archiviazione.

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

Output

PSKeyVaultManagedStorageSasDefinition