Compartir a través de


Condiciones de tarea de almacenamiento

Una tarea de almacenamiento contiene un conjunto de condiciones y operaciones. En este artículo se describe el formato JSON de una condición. Comprender ese formato es importante si planea crear una tarea de almacenamiento mediante una herramienta distinta de Azure Portal (por ejemplo, Azure PowerShell o la CLI de Azure). En este artículo también se enumeran las propiedades y operadores que puede usar para componer las cláusulas de una condición.

Este artículo se centra en las condiciones. Para obtener más información sobre las operaciones, consulte Operaciones de tareas de almacenamiento.

Importante

Las acciones de Azure Storage se encuentran actualmente en versión preliminar y están disponibles en estas regiones. Consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer los términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.

Formato de condición

Una condición de una colección de una o varias cláusulas. Cada cláusula contiene una propiedad, un valor y un operador. Cuando se ejecuta la tarea de almacenamiento, usa el operador para comparar una propiedad con un valor para determinar si el objeto de destino cumple una cláusula. En una cláusula, el operador siempre aparece primero seguido de la propiedad y luego el valor. En la siguiente imagen se muestra cómo se coloca cada elemento en la expresión.

Diagrama que muestra el formato de una condición simple con un operador, una propiedad y un valor.

La siguiente cláusula solo permite operaciones en documentos de Microsoft Word. Esta cláusula tiene como destino todos los documentos que terminan con la extensión de archivo .docx. Por lo tanto, el operador es endsWith, la propiedad es Name y el valor es .docx.

{
   "condition": "[[[endsWith(Name, '.docx')]]"
}

Para obtener una lista completa de los nombres de operador y propiedad, consulte la sección Operadores admitidos y Propiedades admitidas de este artículo.

Varias cláusulas de una condición

Una condición puede contener varias cláusulas separadas por una coma junto con la cadena and o or. La cadena and tiene como destino los objetos que cumplen los criterios de todas las cláusulas de la condición, mientras or que los objetos que cumplen el criterio en cualquiera de las cláusulas de la condición. En la siguiente imagen se muestra la posición de la cadena and y or junto con dos cláusulas.

Diagrama que muestra el formato de una condición que contiene dos cláusulas.

El siguiente JSON muestra una condición que contiene dos cláusulas. Dado que la cadena and se usa en esta expresión, ambas cláusulas deben evaluarse como true antes de realizar una operación en el objeto.

{
"condition": "[[and(endsWith(Name, '.docx'), equals(Tags.Value[readyForLegalHold], 'Yes'))]]"
}

Grupos de condiciones

Las cláusulas agrupadas funcionan como una sola unidad independiente del resto de las cláusulas. Agrupar cláusulas es similar a colocar paréntesis alrededor de una ecuación matemática o una expresión lógica. La cadena and o or para la primera cláusula del grupo se aplica a todo el grupo.

En la imagen siguiente se muestran dos cláusulas agrupadas.

Diagrama que muestra el formato de una condición que contiene dos cláusulas agrupadas.

La siguiente condición solo permite las operaciones en documentos de Microsoft Word donde la etiqueta readyForLegalHold del documento está establecida en un valor de Yes. Las operaciones también se realizan en objetos que tienen más de 100 bytes aunque las otras dos condiciones no sean verdaderas.

{
"condition": "[[[or(and(endsWith(Name, '.docx'), equals(Tags.Value[readyForLegalHold], 'Yes')), greater(Content-Length, '100'))]]"
}

Vista de código en Azure Portal

El editor visual disponible en Azure portal, puede generar el JSON de una condición para usted. Puede definir sus condiciones utilizando el editor y luego obtener la expresión JSON abriendo la pestaña Código. Este enfoque puede ser útil cuando se crean conjuntos complicados de condiciones, ya que las expresiones JSON pueden llegar a ser grandes, poco manejables y difíciles de crear a mano. En la imagen siguiente se muestra la pestaña Código en el editor visual.

Captura de pantalla de la condición JSON tal como aparece en la pestaña Código del diseñador visual.

Para obtener más información sobre el editor visual, consulte Definición de condiciones y operaciones de almacenamiento.

Propiedades admitidas

En la siguiente tabla se muestran las propiedades que puede usar para componer cada cláusula de una condición. Una cláusula puede contener propiedades de cadena, booleanas, numéricas y de fecha y hora.

Cadena Fecha y hora3 Numeric Booleano
AccessTier1 AccessTierChangeTime Content-Length Eliminado
Metadata.Value Creation-Time TagCount IsCurrentVersion
Nombre DeletedTime
BlobType2 LastAccessTime
Container.Metadata.Value[Name] Last-Modified
Container.Name
Container.Metadata.Value[Name]
Container.Name
Tags.Value[Name]
VersionId

1 Los valores permitidos son Hot, Cool o Archive.

2 Los valores permitidos son BlockBlob, PageBlob o AppendBlob

3 Puede fijarse en una hora determinada o en un valor de metadatos obtenido dinámicamente de los objetos. Consulte Referencia de un valor de metadatos de objeto.

Operadores admitidos

En la siguiente tabla se muestran los operadores que puede usar en una cláusula para evaluar el valor de cada tipo de propiedad.

Cadena Fecha y hora Numeric Booleano
contains equals equals equals
empty greater greater not
equals greaterOrEquals greaterOrEquals
endsWith less less
length lessOrEquals lessOrEquals
startsWith addToTime
Coincidencias

Consulte también