Set-AzureKeyVaultManagedStorageSasDefinition
Establece una definición de firma de acceso compartido (SAS) con Key Vault para una cuenta de Azure Storage administrada de Key Vault determinada.
Advertencia
El módulo AzureRM PowerShell ha quedado oficialmente obsoleto a partir del 29 de febrero de 2024. Se recomienda a los usuarios migrar de AzureRM al módulo Az PowerShell para seguir recibiendo soporte técnico y actualizaciones.
Aunque el módulo AzureRM puede seguir funcionando, ya no recibirá mantenimiento ni soporte técnico, lo que significa que su uso continuado queda a discreción y riesgo del usuario. Consulte nuestros recursos de migración para ver una guía sobre la transición al módulo Az.
Sintaxis
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>]
Description
Establece una definición de firma de acceso compartido (SAS) con una cuenta de Azure Storage administrada de Key Vault determinada. Esto también establece un secreto que se puede usar para obtener el token de SAS según esta definición de SAS. El token de SAS se genera mediante estos parámetros y la clave activa de la cuenta de Azure Storage administrada de Key Vault.
Ejemplos
Ejemplo 1: Establecimiento de una definición de SAS de tipo de cuenta y obtención de un token de SAS actual basado en él
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)
Establece una definición de SAS de cuenta "accountsas" en una cuenta de almacenamiento administrada por KeyVault "mysa" en el almacén "mykv". En concreto, la secuencia anterior realiza lo siguiente:
- obtiene una cuenta de almacenamiento (preexistente)
- obtiene un almacén de claves (preexistente)
- agrega una cuenta de almacenamiento administrada por KeyVault al almacén, estableciendo Key1 como clave activa y con un período de regeneración de 180 días.
- establece un contexto de almacenamiento para la cuenta de almacenamiento especificada, con Key1
- crea un token de SAS de cuenta para los servicios Blob, File, Table y Queue, para los tipos de recursos Service, Container y Object, con todos los permisos, a través de https y con las fechas de inicio y finalización especificadas.
- establece una definición de SAS de almacenamiento administrada por KeyVault en el almacén, con el URI de plantilla como token de SAS creado anteriormente, del tipo saS "account" y válido durante 30 días.
- recupera el token de acceso real del secreto de KeyVault correspondiente a la definición de SAS.
Parámetros
-AccountName
Nombre de la cuenta de almacenamiento administrada de Key Vault. El cmdlet construye el FQDN de un nombre de cuenta de almacenamiento administrado a partir del nombre del almacén, el entorno seleccionado actualmente y el nombre de la cuenta de almacenamiento administrada.
Tipo: | String |
Alias: | StorageAccountName |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Confirm
Le solicita su confirmación antes de ejecutar el cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-DefaultProfile
Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure
Tipo: | IAzureContextContainer |
Alias: | AzureRmContext, AzureCredential |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Disable
Deshabilita el uso de la definición de sas para la generación de tokens sas.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-InputObject
Objeto ManagedStorageAccount.
Tipo: | PSKeyVaultManagedStorageAccountIdentityItem |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | True |
Aceptar caracteres comodín: | False |
-Name
Nombre de definición de sas de almacenamiento. El cmdlet construye el FQDN de una definición de sas de almacenamiento a partir del nombre del almacén, el entorno seleccionado actualmente, el nombre de la cuenta de almacenamiento y el nombre de definición de sas.
Tipo: | String |
Alias: | SasDefinitionName |
Posición: | 2 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-SasType
Tipo de SAS de almacenamiento.
Tipo: | String |
Posición: | 4 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Tag
Pares clave-valor en forma de tabla hash. Por ejemplo: @{key0="value0"; key1=$null; key2="value2"}
Tipo: | Hashtable |
Alias: | Tags |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-TemplateUri
URI de plantilla de definición de SAS de almacenamiento.
Tipo: | String |
Posición: | 3 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ValidityPeriod
Período de validez que se usará para establecer la hora de expiración del token sas desde el momento en que se genera.
Tipo: | Nullable<T>[TimeSpan] |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-VaultName
Nombre del almacén. El cmdlet construye el FQDN de un almacén en función del nombre y del entorno seleccionado actualmente.
Tipo: | String |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-WhatIf
Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.
Tipo: | SwitchParameter |
Alias: | wi |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
PSKeyVaultManagedStorageAccountIdentityItem
Parámetros: InputObject (ByValue)
Salidas
PSKeyVaultManagedStorageSasDefinition