

Amazon Fraud Detector non è più aperto a nuovi clienti a partire dal 7 novembre 2025. Per funzionalità simili a Amazon Fraud Detector, esplora Amazon SageMaker AutoGluon, e. AWS WAF

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Linguaggio di riferimento delle regole
<a name="rule-language-reference"></a>

La sezione seguente descrive le funzionalità di espressione (ovvero la scrittura di regole) in Amazon Fraud Detector.

## Utilizzo di variabili
<a name="using-variables"></a>

È possibile utilizzare qualsiasi variabile definita nel tipo di evento valutato come parte dell'espressione. Utilizzate il simbolo del dollaro per indicare una variabile:

```
$example_variable < 100
```

## Usare gli elenchi
<a name="using-lists"></a>

È possibile utilizzare qualsiasi elenco associato a un tipo di variabile e compilato con voci come parte dell'espressione della regola. Utilizzate il simbolo del dollaro per indicare il valore di una voce nell'elenco:

```
$example_list_variable in @list_name
```

## Operatori di confronto, appartenenza e identità
<a name="compare-id-ops"></a>

Amazon Fraud Detector include i seguenti operatori di confronto: >, >=, <, <=,\! =, ==, dentro, non dentro

Di seguito vengono mostrati gli esempi:

Esempio: <

```
$variable < 100
```

Esempio: in, non in

```
$variable in [5, 10, 25, 100]
```

Esempio:\! =

```
$variable != "US"
```

Esempio: ==

```
$variable == 1000
```

**Tabelle degli operatori**


| Operatore | Operatore di Amazon Fraud Detector | 
| --- | --- | 
| Equal to  | == | 
| Non uguale a  | \!= | 
| Greater than | > | 
| Less than | < | 
| Maggiore o uguale a | >= | 
| Minore o uguale a | <= | 
| In | in | 
| And | and | 
| Or | or | 
| Not | \! | 

## Matematica di base
<a name="basic-math"></a>

È possibile utilizzare operatori matematici di base nell'espressione (ad esempio, \+, -, \*,/). Un caso d'uso tipico è quando è necessario combinare variabili durante la valutazione.

Nella regola seguente, aggiungiamo la variabile `$variable_1` con `$variable_2` e controlliamo se il totale è inferiore a 10.

```
$variable_1 + $variable_2 < 10
```

**Dati di base della tabella matematica**


| Operatore | Operatore di Amazon Fraud Detector | 
| --- | --- | 
| Inoltre | \+ | 
| Meno | - | 
| Multiply (Moltiplica) | \* | 
| Divide (Dividi) | / | 
| Modulo | % | 

## Espressione regolare (regex)
<a name="reg-expressions"></a>

Puoi usare regex per cercare modelli specifici come parte della tua espressione. Ciò è particolarmente utile se stai cercando di abbinare una stringa o un valore numerico specifico per una delle tue variabili. Amazon Fraud Detector supporta la corrispondenza solo quando lavora con espressioni regolari (ad esempio, restituisce True/False a seconda che la stringa fornita corrisponda o meno all'espressione regolare). Il supporto per le espressioni regolari di Amazon Fraud Detector si basa su .matches () in java (utilizzando la libreria RE2 J Regular Expression). Esistono diversi siti Web utili su Internet che sono utili per testare diversi modelli di espressioni regolari.

Nel primo esempio seguente, trasformiamo innanzitutto la variabile `email` in minuscolo. Controlliamo quindi se il pattern `@gmail.com` è nella `email` variabile. Notate che il secondo periodo viene evaso in modo da poter controllare esplicitamente la stringa. `.com`

```
regex_match(".*@gmail\.com", lowercase($email))
```

Nel secondo esempio, controlliamo se la variabile `phone_number` contiene il prefisso internazionale `+1` per determinare se il numero di telefono proviene dagli Stati Uniti. Il simbolo più viene escluso in modo da poter controllare esplicitamente la stringa. `+1`

```
regex_match(".*\+1", $phone_number)
```

**Tabella Regex**


| Operatore | Esempio di Amazon Fraud Detector | 
| --- | --- | 
| Corrisponde a qualsiasi stringa che inizia con | regex\_match («^mystring», $variable) | 
| Corrisponde esattamente all'intera stringa | regex\_match («mystring», $ variabile) | 
| Corrisponde a qualsiasi carattere tranne la nuova riga | regex\_match (» . «, $ variabile) | 
| Corrisponde a qualsiasi numero di caratteri tranne la nuova riga precedente a 'mystring' | regex\_match (». \*mystring», $ variabile) | 
| Evita i caratteri speciali | \\ | 

## Verifica dei valori mancanti
<a name="missing-variables"></a>

A volte è utile verificare se il valore è mancante. In Amazon Fraud Detector questo valore è rappresentato da null. Puoi farlo utilizzando la seguente sintassi:

```
$variable != null
```

Allo stesso modo, se desideri verificare se un valore non è presente, puoi fare quanto segue:

```
$variable == null
```

## Condizioni multiple
<a name="multi-cond"></a>

È possibile combinare più espressioni insieme utilizzando `and` e`or`. Amazon Fraud Detector si interrompe in un'`OR`espressione quando viene trovato un singolo valore vero e si interrompe in un'espressione `AND` quando viene trovato un solo valore falso.

Nell'esempio seguente, stiamo verificando due condizioni utilizzando la `and` condizione. Nella prima istruzione, controlliamo se la variabile 1 è inferiore a 100. Nella seconda controlliamo se la variabile 2 non è quella degli Stati Uniti.

Dato che la regola utilizza un`and`, entrambi devono essere TRUE affinché l'intera condizione venga valutata come VERA.

```
$variable_1 < 100 and $variable_2 != "US"
```

È possibile utilizzare le parentesi per raggruppare le operazioni booleane, come illustrato di seguito:

```
$variable_1 < 100 and $variable_2 != "US" or ($variable_1 * 100.0 > $variable_3)
```

## Altri tipi di espressioni
<a name="expressions"></a>

### DateTime funzioni
<a name="date-time"></a>


| Funzione | Description | Esempio | 
| --- | --- | --- | 
| getcurrentdatetime () | Fornisce l'ora corrente dell'esecuzione della regola in formato UTC. ISO8601 È possibile utilizzare getepochmilliseconds (getcurrentdatetime ()) per eseguire operazioni aggiuntive  | getcurrentdatetime () == «2023-03-28T 18:34:02 Z» | 
| è prima DateTime (1 DateTime, 2) | Restituisce un valore booleano (Vero/Falso) se il chiamante 1 è precedente a 2 DateTime DateTime | è before (getcurrentdatetime (), «2019-11-30T 01:01:01 Z») == «False»<br />è prima (getcurrentdatetime (), «2050-11-30T 01:05:01 Z») == «True» | 
| DateTimeè dopo DateTime (1, 2) | Restituisce un valore booleano (Vero/Falso) se il chiamante 1 è dopo 2 DateTime DateTime | isafter (getcurrentdatetime (), «2019-11-30T 01:01:01 Z») == «True»<br />isafter (getcurrentdatetime (), «2050-11-30T 01:05:01 Z») == «Falso» | 
| DateTimegetepochmilliseconds () | Prende un DateTime e lo restituisce in millisecondi di epoca. DateTime Utile per eseguire operazioni matematiche sulla data | getepochmilliseconds («2019-11-30T 01:01:01 Z») == 1575032461 | 

### Operatori di stringa
<a name="string-ops"></a>


| Operatore | Esempio | 
| --- | --- | 
| Trasforma la stringa in maiuscolo | maiuscolo ($variabile) | 
| Trasforma la stringa in minuscolo | minuscolo ($variabile) | 

### Altro
<a name="other"></a>


| Operatore | Comment | 
| --- | --- | 
| Aggiungi un commento | \# il mio commento | 