Para buscar activos, puedes filtrar los resultados de la búsqueda especificando una
FIELD
, un operador y un
QUERY
Concordancia exacta del texto: operador es igual a (=
)
FIELD=QUERY
Una consulta de ejemplo es: policy=amy.2020@gmail.com
.
El operador equals
(=
) verifica que QUERY
coincida exactamente con el valor de los metadatos del activo FIELD
. Distingue entre mayúsculas y minúsculas. En el caso de un campo repetido, si QUERY
coincide con uno de los valores del campo, el recurso se considera una coincidencia. La plataforma
Los nombres de FIELD
dependen de si la consulta es un recurso
o una búsqueda de políticas de Identity and Access Management (IAM). El
QUERY
es una frase, pero no puede contener
comodines.
Coincidencia parcial del texto: operador de dos puntos (:
)
FIELD:QUERY
Una consulta de ejemplo es: policy:amy.2020@gmail
.
Al realizar una búsqueda, el QUERY
se compara con el
valor de los metadatos de activos especificados FIELD
. La consulta
y los campos de metadatos del activo se convierten en una secuencia de palabras (es decir,
tokens) para comparar. Para ello, sigue estos pasos:
Quitar los caracteres especiales iniciales o finales y convertir en token el valor de la búsqueda mediante el trato de los caracteres especiales como delimitadores. La asignación de token especial los caracteres son aquellos que no son caracteres alfanuméricos
[a-zA-Z0-9]
, guion bajo[_]
o et[&]
.Realizar mayúsculas y minúsculas de Unicode para que se ignore las mayúsculas y minúsculas de los caracteres.
A continuación, se presentan algunos ejemplos de asignación de token:
A
"amy-2020@GMAIL.com"
se le asigna un token:[amy,2020,gmail,com]
A
"google.com/cloud"
se le asigna un token:[google,com,cloud]
A
"Compute %Instance%"
se le asigna un token:[compute,instance]
A
"$%^*-!"
se le asigna un token:[]
A
""
se le asigna un token:[]
A
"compute*storage"
se le asigna un token:[compute,storage]
A
"compute&storage"
se le asigna un token:[compute&storage]
A
"BOB_test@gmail.com"
se le asigna un token:[bob_test,gmail,com]
A
"instance/_my_vm_"
se le asigna un token:[instance,_my_vm_]
El operador has
(:
) comprueba que cada palabra de QUERY
en el valor del campo de metadatos del activo. También verifica el orden y la consecutividad de las palabras. El FIELD
admitido puede ser
diferentes, dependiendo de si es una búsqueda de recursos o un IAM
en la búsqueda de políticas. El QUERY
puede ser una frase o
una combinación de frases.
Ejemplos
Por ejemplo, un activo cuyo campo policy
tiene el valor amy.2020@gmail.com
coincide con las siguientes consultas:
- Coincide porque la frase es exactamente la misma que el valor del campo.
policy=amy.2020@gmail.com
- Coincide porque los caracteres de puntuación se tratan como delimitadores y la consulta no distingue mayúsculas de minúsculas.
policy:amy-2020@GMAIL.com
- Coincide porque las palabras de una frase concuerda con el orden. Ten en cuenta que
"amy 2020 gmail"
es una frase; las palabras deben coincidir en orden y de forma consecutiva.
policy:"amy 2020 gmail"
- Coincide porque una combinación de palabras puede aparecer en cualquier orden. Ten en cuenta que
(gmail 2020 amy)
es una combinación; las palabras coinciden, pero no necesariamente según el orden.
policy:(gmail 2020 amy)
- Coincide porque las palabras de la frase concuerdan según el orden y las palabras de la combinación aparecen en cualquier orden. Ten en cuenta que
"amy 2020"
es una frase y las palabras deben coincidir en orden y de forma consecutiva.(gmail "amy 2020")
es una combinación;gmail
y"amy 2020"
coinciden, y no necesariamente según el orden.
policy:(gmail "amy 2020")
- Coincide porque
*
se puede usar en una frase para indicar una coincidencia de prefijo.
policy:amy-20*
Un elemento cuyo campo policy
tiene el valor "amy.2020@gmail.com"
NO coincide.
las siguientes consultas:
- No coincide porque la frase distingue mayúsculas de minúsculas. En su lugar, usa el operador
has
(:
) para la coincidencia que no distingue entre mayúsculas y minúsculas.
policy=amy.2020@GMAIL.com
- No coincide porque la frase coincide de forma parcial con el valor del campo. En su lugar, usa el operador
has
(:
) para la coincidencia parcial.
policy=amy.2020@gmail
Coincidencia numérica: operadores de comparación (=
, >
, >=
, <
, <=
)
FIELD=QUERY
FIELD>QUERY
FIELD>=QUERY
FIELD<QUERY
FIELD<=QUERY
Los operadores de comparación comprueban que el resultado de la comparación entre
QUERY
y el valor de los metadatos del activo
FIELD
es verdadero.
Los nombres FIELD
admitidos incluyen createTime
y
updateTime
Para los campos de marca de tiempo (createTime
y updateTime
), la
QUERY
podría ser un número entero firmado de 64 bits,
representa una marca de tiempo de época en segundos; o una cadena de fecha-hora en una de las
formatos (la zona horaria es UTC):
AAAA-MM-DD: 2021-01-01 (las comillas son opcionales)
“AAAA-MM-DDThh:mm:ss”: “2021-01-01T00:00:00” (se requieren comillas)
Ejemplos
Por ejemplo, un recurso cuyo campo createTime
tiene el valor 1609459200
(ciclo de entrenamiento)
la marca de tiempo de 2021-01-01T00:00:00
) coincide con las siguientes consultas:
Es igual a
createTime=1609459200
createTime=2021-01-01
createTime="2021-01-01T00:00:00"
Superior a
createTime>1500000000
createTime>2020-01-01
createTime>"2020-01-01T00:00:00"
Mayor o igual que.
createTime>=1609459200
createTime>=2021-01-01
createTime>="2021-01-01T00:00:00"
Inferior a
createTime<1700000000
createTime<2022-01-01
createTime<"2022-01-01T00:00:00"
Menor o igual que.
createTime<=1609459200
createTime<=2021-01-01
createTime<="2021-01-01T00:00:00"
Frase
Una frase es una o varias palabras entre comillas dobles ("
). En el caso de las frases, el orden de las palabras es importante. Las palabras en la frase deben coincidir en orden y de forma consecutiva. Ten en cuenta que para hacer coincidir varias palabras sin
respeta el orden, debes usar la combinación (por ejemplo,
field:(word1 word2 word3)
).
Las siguientes expresiones son las mismas:
policy:amy
policy:"amy"
policy:amy.2020@gmail.com
policy:"amy.2020@gmail.com"
name://cloudresourcemanager.googleapis.com/projects/projects/foo-bar
name:"//cloudresourcemanager.googleapis.com/projects/projects/foo-bar"
Las siguientes frases deben ir entre comillas:
name:"my instance"
policy:"amy%2020@gmail.com"
description:"domain:gmail.com"
description:"hello \"world\""
description:"hello\\world"
Ejemplos: frase
Muestra los elementos cuyo campo
policy
tiene la palabraamy
y la palabra2020
en orden y, de manera consecutiva:policy:"amy 2020"
Si tienes un activo cuyo valor de campo
policy
es"amy.2020@gmail.com"
, la consulta anterior coincidirá.Si tienes un recurso cuyo valor del campo
policy
es"2020.amy@gmail.com"
, consulta anterior no coincide, ya que las palabras no coinciden en orden.Si tienes un recurso cuyo valor del campo
policy
es"amy.us.2020@gmail.com"
, la consulta anterior no coincide, ya que las palabras no coinciden consecutivamente.
Combinación
Las frases de búsqueda se pueden combinar con AND
o OR
. Los paréntesis se usan para agrupar combinaciones.
Ejemplos: combinación
Muestra los recursos cuyo campo
policy
tenga la palabraamy
y la palabrajohn
. sin respetar el orden.AND
es opcional en una combinación. Ten en cuenta que para coincidir con varias palabras en orden, debes usar la frase (para ejemplo,field:"word1 word2 word3"
).owner:(amy john)
Muestra los elementos cuyo campo
policy
contenga la palabraamy
o la palabrajohn
.policy:(amy OR john)
Muestra los elementos cuyo campo
policy
contenga tanto la palabraamy
como la palabrajohn
, o bien la palabrabob
.policy:((amy john) OR bob)
Muestra los elementos cuyo campo
policy
contenga la palabraamy
y la palabrajohn
o el camponame
contenga la palabrabob
.policy:(amy john) OR name:bob
Filtros de búsqueda de negación
Los filtros de búsqueda se pueden negar con el operador NOT
. Los paréntesis son compatibles, pero no obligatorios.
Ejemplos: Filtros de búsqueda de negación
Muestra los elementos cuyo campo
state
no contengan la palabraACTIVE
.NOT state:ACTIVE
Muestra los elementos cuyo campo
policy
no contenga la palabraamy
ni la palabrajohn
.NOT policy:(amy OR john)
Muestra los elementos cuyos campos
networkTags
no contengan la palabrainternal
niprivate
.NOT (networkTags:internal OR networkTags:private)
Comodín
Los asteriscos (*
) se pueden usar en una frase como carácter comodín. Según su posición, puede tener diferentes significados.
Si se encuentra al final de una frase, por ejemplo,
"am 20*"
, es un prefijo de token. indicador de coincidencia. La consulta es equivalente a(am* 20*)
. Coincide con el campo que contiene un token que comienza con “am”, por ejemplo, “amy”, y un token que comienza con “20”, por ejemplo, “2021”. No importa el orden de los prefijos.Si la frase completa solo contiene un
*
, por ejemplo,"labels.env:*"
, se realiza una comprobación de existencia. Verifica si la clave de etiqueta dada “env” existen. No se admiten otros campos.Si está en medio de una frase, por ejemplo,
"compute*storage"
, se trata como un delimitador de asignación de token. La consulta equivale a “compute almacenamiento”.Por ejemplo, si se encuentra al principio y al final de una frase
"*compute storage*"
, se trata como un delimitador de asignación de token. La consulta es equivalente a “almacenamiento de procesamiento”.
Ejemplos: coincidencia de prefijo de token
Muestra elementos cuyo campo
policy
contenga una palabra que comience conam
:policy:am*
Muestra los elementos cuyos campos
policy
contengan dos palabras con"amy"
y"20"
como prefijos:policy:"amy 20*" policy:"20 amy*"
Si tienes un recurso cuyo valor del campo
policy
es"amy.2020@gmail.com"
, por encima de ellas, ambas coinciden. Después de la asignación de token, tanto"amy"
como"20"
son prefijos. Ten en cuenta que la string de consulta"amy 20*"
es diferente de"amy 20"
. Esta última requiere que20
sea una palabra completa que no sea un prefijo.
Ejemplo: existencia de una clave de etiqueta
Mostrar recursos que uno de cuyos labels
tenga el valor "env" como clave y tiene cualquier valor
(incluye valores vacíos o sin valor):
labels.env:*