

Amazon Fraud Detector는 2025년 11월 7일부터 신규 고객에게 더 이상 공개되지 않습니다. Amazon Fraud Detector와 유사한 기능을 알아보려면 Amazon SageMaker, AutoGluon 및를 살펴보세요 AWS WAF.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 규칙 언어 참조
<a name="rule-language-reference"></a>

다음 섹션에서는 Amazon Fraud Detector의 표현식(즉, 규칙 작성) 기능을 간략하게 설명합니다.

## 변수 사용
<a name="using-variables"></a>

평가된 이벤트 유형에 정의된 모든 변수를 표현식의 일부로 사용할 수 있습니다. 달러 기호를 사용하여 변수를 나타냅니다.

```
$example_variable < 100
```

## 목록 사용
<a name="using-lists"></a>

변수 유형과 연결되고 규칙 표현식의 일부로 항목으로 채워진 모든 목록을 사용할 수 있습니다. 달러 기호를 사용하여 목록 항목 값을 나타냅니다.

```
$example_list_variable in @list_name
```

## 비교, 멤버십 및 자격 증명 연산자
<a name="compare-id-ops"></a>

Amazon Fraud Detector에는 다음 비교 연산자가 포함됩니다. >, >=, <, <=,\$1=, ==, in, not in

예를 들어, 다음과 같습니다.

예: <

```
$variable < 100
```

예: in, not in

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

예: \$1=

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

예: ==

```
$variable == 1000
```

**연산자 테이블**


| 연산자 | Amazon 사기 탐지기 운영자 | 
| --- | --- | 
| 같음  | == | 
| 같지 않음  | \$1= | 
| 보다 큼 | > | 
| 보다 작음 | < | 
| 크거나 같음 | >= | 
| 작거나 같음 | <= | 
| 있음 | in | 
| 및 | 및 | 
| 또는 | 또는 | 
| 아님 | \$1 | 

## 기본 수학
<a name="basic-math"></a>

표현식에 기본 수학 연산자(예: \$1, -, \$1 ,/)를 사용할 수 있습니다. 일반적인 사용 사례는 평가 중에 변수를 결합해야 하는 경우입니다.

아래 규칙에서는 `$variable_1`를 사용하여 변수를 추가`$variable_2`하고 합계가 10 미만인지 확인합니다.

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

**기본 수학 테이블 데이터**


| 연산자 | Amazon 사기 탐지기 운영자 | 
| --- | --- | 
| Plus | \$1 | 
| 마이너스 | - | 
| 곱하기 | \$1 | 
| 나누기 | / | 
| 모듈로 | % | 

## 정규 표현식(regex)
<a name="reg-expressions"></a>

정규식을 사용하여 표현식의 일부로 특정 패턴을 검색할 수 있습니다. 이는 변수 중 하나에 대한 특정 문자열 또는 숫자 값을 일치시키려는 경우에 특히 유용합니다. Amazon Fraud Detector는 정규식으로 작업할 때만 일치를 지원합니다(예: 제공된 문자열이 정규식과 일치하는지 여부에 따라 True/False를 반환함). Amazon Fraud Detector의 정규 표현식 지원은 java의 .matches()를 기반으로 합니다(RE2J 정규 표현식 라이브러리 사용). 인터넷에는 다양한 정규 표현식 패턴을 테스트하는 데 유용한 몇 가지 유용한 웹 사이트가 있습니다.

아래 첫 번째 예제에서는 먼저 변수를 소문자`email`로 변환합니다. 그런 다음 패턴이 `email` 변수`@gmail.com`에 있는지 확인합니다. 문자열을 명시적으로 확인할 수 있도록 두 번째 기간이 이스케이프됩니다`.com`.

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

두 번째 예에서는 변수에 국가 코드가 `phone_number` 포함되어 있는지 확인하여 전화번호가 미국인지 `+1` 확인합니다. 더하기 기호는 문자열을 명시적으로 확인할 수 있도록 이스케이프 처리됩니다`+1`.

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

**정규식 테이블**


| 연산자 | Amazon 사기 탐지기 예제 | 
| --- | --- | 
| 로 시작하는 모든 문자열과 일치 | regex\$1match("^mystring", \$1variable) | 
| 전체 문자열을 정확히 일치시킵니다. | regex\$1match("mystring", \$1variable) | 
| 새 줄을 제외한 모든 문자와 일치 | regex\$1match(".", \$1variable) | 
| 'mystring' 이전의 새 줄을 제외한 모든 문자와 일치 | regex\$1match(".\$1mystring", \$1variable) | 
| 특수 문자 이스케이프 | \$1 | 

## 누락된 값 확인
<a name="missing-variables"></a>

경우에 따라 값이 누락되었는지 확인하는 것이 좋습니다. Amazon Fraud Detector에서는 null로 표시됩니다. 다음 구문을 사용하여이 작업을 수행할 수 있습니다.

```
$variable != null
```

마찬가지로 값이 없는지 확인하려면 다음을 수행할 수 있습니다.

```
$variable == null
```

## 여러 조건
<a name="multi-cond"></a>

`and` 및를 사용하여 여러 표현식을 결합할 수 있습니다`or`. Amazon Fraud Detector는 단일 true 값이 발견되면 `OR` 표현식에서 중지되고 단일 false 값이 발견되면 `AND`에서 중지됩니다.

아래 예제에서는 조건을 사용하여 두 `and` 가지 조건을 확인합니다. 첫 번째 문에서는 변수 1이 100 미만인지 확인합니다. 두 번째에서는 변수 2가 미국이 아닌지 확인합니다.

규칙이를 사용하므로 전체 조건이 TRUE로 평가되려면 `and`둘 다 TRUE여야 합니다.

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

다음과 같이 괄호를 사용하여 부울 작업을 그룹화할 수 있습니다.

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

## 기타 표현식 유형
<a name="expressions"></a>

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


| 함수 | 설명 | 예제 | 
| --- | --- | --- | 
| getcurrentdatetime() | 규칙 실행의 현재 시간을 ISO8601 UTC 형식으로 지정합니다. getepochmilliseconds(getcurrentdatetime())를 사용하여 추가 작업을 수행할 수 있습니다. | getcurrentdatetime() == "2023-03-28T18:34:02Z" | 
| isbefore(DateTime1, DateTime2) | 호출자 DateTime1이 DateTime2보다 이전인 경우 부울(True/False)을 반환합니다. | isbefore(getcurrentdatetime(), "2019-11-30T01:01:01Z") == "False" isbefore(getcurrentdatetime(), "2050-11-30T01:05:01Z") == "True" | 
| isafter(DateTime1,DateTime2) | 호출자 DateTime1이 DateTime2 이후인 경우 부울(True/False)을 반환합니다. | isafter(getcurrentdatetime(), "2019-11-30T01:01:01Z") == "True" isafter(getcurrentdatetime(), "2050-11-30T01:05:01Z") == "False" | 
| getepochmilliseconds(DateTime) | DateTime을 가져와서 해당 DateTime을 에포크 밀리초 단위로 반환합니다. 날짜에 수학 작업을 수행하는 데 유용합니다. | getepochmilliseconds("2019-11-30T01:01:01Z") == 1575032461 | 

### 문자열 연산자
<a name="string-ops"></a>


| 연산자 | 예제 | 
| --- | --- | 
| 문자열을 대문자로 변환 | 대문자(\$1variable) | 
| 문자열을 소문자로 변환 | 소문자(\$1variable) | 

### 기타
<a name="other"></a>


| 연산자 | 설명 | 
| --- | --- | 
|  설명 추가  |  \$1 내 의견  | 