Correspondência de valores de string - Amazon Simple Notification Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Correspondência de valores de string

Você pode filtrar mensagens correspondendo valores de string a valores de atributos da mensagem ou a valores de propriedades do corpo da mensagem. Os valores de string são inseridos entre aspas duplas na política JSON. Use as operações de string a seguir para corresponder a atributos da mensagem ou ao corpo da mensagem.

Correspondência exata

A correspondência exata ocorre quando um valor de propriedade de política corresponde a um ou mais valores de atributos de mensagens.

Considere a seguinte propriedade de política:

"customer_interests": ["rugby", "tennis"]

Ele corresponde aos seguintes atributos de mensagem:

"customer_interests": {"Type": "String", "Value": "rugby"}
"customer_interests": {"Type": "String", "Value": "tennis"}

Também corresponde aos seguintes corpos de mensagem:

{ "customer_interests": "rugby" }
{ "customer_interests": "tennis" }

No entanto, não corresponde ao seguinte atributo de mensagem:

"customer_interests": {"Type": "String", "Value": "baseball"}

Nem corresponde ao seguinte corpo de mensagem:

{ "customer_interests": "baseball" }

Correspondência anything-but

Quando o valor de uma propriedade de política inclui a palavra-chave anything-but, corresponde a qualquer valor de atributo ou corpo de mensagem que não inclua nenhum dos valores de propriedade de política. anything-but pode ser combinado com "exists": false.

Considere a seguinte propriedade de política:

"customer_interests": [{"anything-but": ["rugby", "tennis"]}]

Ele corresponde a um dos seguintes atributos de mensagens:

"customer_interests": {"Type": "String", "Value": "baseball"}
"customer_interests": {"Type": "String", "Value": "football"}

Também estabelece correspondência com um dos seguintes corpos de mensagem:

{ "customer_interests": "baseball" }
{ "customer_interests": "football" }

Além disso, estabelece correspondência com o seguinte atributo de mensagem (pois contém um valor que não é rugby nem tennis):

"customer_interests": {"Type": "String.Array", "Value": "[\"rugby\", \"baseball\"]"}

Também estabelece correspondência com o seguinte corpo de mensagem (pois contém um valor que não é rugby nem tennis):

{ "customer_interests": ["rugby", "baseball"] }

No entanto, não corresponde ao seguinte atributo de mensagem:

"customer_interests": {"Type": "String", "Value": "rugby"}

Nem corresponde ao seguinte corpo de mensagem:

{ "customer_interests": ["rugby"] }

Usar um prefixo com o operador anything-but

Para correspondência de string, também é possível usar um prefixo com o operador anything-but. Por exemplo, a política de propriedade seguinte nega o prefixo order-:

"event":[{"anything-but": {"prefix": "order-"}}]

Ele corresponde a um dos seguintes atributos:

"event": {"Type": "String", "Value": "data-entry"}
"event": {"Type": "String", "Value": "order_number"}

Também estabelece correspondência com um dos seguintes corpos de mensagem:

{ "event": "data-entry" }
{ "event": "order_number" }

No entanto, não corresponde ao seguinte atributo de mensagem:

"event": {"Type": "String", "Value": "order-cancelled"}

Nem corresponde ao seguinte corpo de mensagem:

{ "event": "order-cancelled" }

quals-ignore-case Combinação E

Quando a propriedade de uma política inclui a palavra-chave equals-ignore-case, ela realizará uma correspondência que não diferencia letras maiúsculas de minúsculas a qualquer valor de propriedade do corpo ou atributo da mensagem.

Considere a seguinte propriedade de política:

"customer_interests": [{"equals-ignore-case": "tennis"}]

Ele corresponde a um dos seguintes atributos de mensagens:

"customer_interests": {"Type": "String", "Value": "TENNIS"}
"customer_interests": {"Type": "String", "Value": "Tennis"}

Também estabelece correspondência com um dos seguintes corpos de mensagem:

{ "customer_interests": "TENNIS" }
{ "customer_interests": "teNnis" {

Correspondência de endereço IP

Você pode usar o operador cidr para verificar se uma mensagem de entrada é originada de um endereço IP ou sub-rede específico.

Considere a seguinte propriedade de política:

"source_ip":[{"cidr": "10.0.0.0/24"}]

Ele corresponde a um dos seguintes atributos de mensagens:

"source_ip": {"Type": "String", "Value": "10.0.0.0"}
"source_ip": {"Type": "String", "Value": "10.0.0.255"}

Também estabelece correspondência com um dos seguintes corpos de mensagem:

{ "source_ip": "10.0.0.0" }
{ "source_ip": "10.0.0.255" }

No entanto, não corresponde ao seguinte atributo de mensagem:

"source_ip": {"Type": "String", "Value": "10.1.1.0"}

Nem corresponde ao seguinte corpo de mensagem:

{ "source_ip": "10.1.1.0" }

Correspondência de prefixo

Quando uma propriedade de política inclui a palavra-chave prefix, ela corresponde a qualquer valor de atributo de mensagem ou corpo de mensagem que comece com os caracteres especificados.

Considere a seguinte propriedade de política:

"customer_interests": [{"prefix": "bas"}]

Ele corresponde a um dos seguintes atributos de mensagens:

"customer_interests": {"Type": "String", "Value": "baseball"}
"customer_interests": {"Type": "String", "Value": "basketball"}

Também estabelece correspondência com um dos seguintes corpos de mensagem:

{ "customer_interests": "baseball" }
{ "customer_interests": "basketball" }

No entanto, não corresponde ao seguinte atributo de mensagem:

"customer_interests": {"Type": "String", "Value": "rugby"}

Nem corresponde ao seguinte corpo de mensagem:

{ "customer_interests": "rugby" }

Correspondência de sufixo

Quando a propriedade de uma política inclui a palavra-chave suffix, ela corresponde a qualquer valor de propriedade do corpo ou atributo da mensagem que termine com os caracteres especificados.

Considere a seguinte propriedade de política:

"customer_interests": [{"suffix": "ball"}]

Ele corresponde a um dos seguintes atributos de mensagens:

"customer_interests": {"Type": "String", "Value": "baseball"}
"customer_interests": {"Type": "String", "Value": "basketball"}

Também estabelece correspondência com um dos seguintes corpos de mensagem:

{ "customer_interests": "baseball" }
{ "customer_interests": "basketball" }

No entanto, não corresponde ao seguinte atributo de mensagem:

"customer_interests": {"Type": "String", "Value": "rugby"}

Nem corresponde ao seguinte corpo de mensagem:

{ "customer_interests": "rugby" }