---
title: 디바이스 메타데이터
description: 캡처에 사용된 디바이스의 플랫폼, IP, 위치 등 메타데이터와 해당 디바이스에서 탐지된 위험 신호를 반환하는 기능입니다.
canonical: https://developer.unico.io/ko/dual-api/capabilities/device-metadata
locale: ko
generated_by: markdown-export
---

이 기능은 사용자가 캡처에 사용한 디바이스의 데이터를 계약된 다른 제품의 결과와 함께 반환합니다.

### 기능 설명

캡처 세션에 사용된 디바이스의 메타데이터와 해당 디바이스에서 탐지된 위험 신호를 수집합니다(데이터 세부 정보는 아래 참조).

이는 검증이 아닙니다. 프로세스를 승인하거나 거부하지 않으며, 프로세스를 실패시키지도 않습니다. 이 데이터는 자체 위험 규칙이나 내부 의사결정 엔진에서 사용하세요.

### 입력값

추가 필드는 필요하지 않습니다. 이 기능은 프로세스에 이미 있는 캡처 세션을 사용합니다.

- **Web & Native 계약:** 계정에 대해 계약된 플로우에서 활성화됩니다. 프로세스의 `capacities`에 `PROCESS_CAPACITY_DEVICE_METADATA`가 나열됩니다.
- **API 계약:** API 키의 Recipe에서 활성화됩니다.

> **경고: 메타데이터는 Unico SDK에 의존합니다**
>
> 메타데이터는 캡처 중에 Unico SDK가 수집합니다. API 통합은 Unico SDK를 사용할 수도 있고 사용하지 않을 수도 있습니다:
>
> - **Unico SDK를 사용하는 API:** 메타데이터가 평소와 같이 반환됩니다.
> - **Unico SDK를 사용하지 않는 API:** 메타데이터가 없으며, 응답은 `not_found`입니다.

활성화하려면 Unico 담당자에게 문의하세요.

### 가능한 응답

결과는 `deviceMetadata` 객체로 반환됩니다:

- **Web & Native 계약:** [프로세스 조회](/dual-api/developers/api-reference/web-sdk/get-process)의 `authenticationInfo.deviceMetadata`.
- **API 계약:** [프로세스 조회](/dual-api/developers/api-reference/api/get-process)의 `deviceMetadata`.

| `status` | 의미 |
|---|---|
| `found` | 디바이스 메타데이터를 찾았습니다. 아래 필드는 디바이스가 수집한 내용으로 채워집니다. |
| `not_found` | 이 캡처에 대한 디바이스 메타데이터가 없습니다. 예: Unico SDK를 사용하지 않는 API 프로세스. |
| `unavailable` | 해당 시점에 메타데이터를 가져올 수 없었습니다. 프로세스 결과에는 영향이 없습니다. |

`status`가 `found`인 경우:

| 필드 | 유형 | 설명 |
|---|---|---|
| `deviceId` | string | 디바이스 식별자. |
| `platform` | string | 캡처가 이루어진 플랫폼. 예: `WEB`, `ANDROID`, `IOS`. |
| `ip` | string | 디바이스의 IP 주소. |
| `ipCountry` | string | IP 주소의 국가. |
| `ipGeoCoordinates` | object | IP 주소의 위치(`lat`, `lng`). |
| `gpsCoordinates` | object | 디바이스 GPS가 보고한 위치(`lat`, `lng`). |
| `osName` | string | 운영 체제 이름. |
| `osVersion` | string | 운영 체제 버전. |
| `browserName` | string | 브라우저 이름. Web 전용. |
| `userAgent` | string | 브라우저 사용자 에이전트. Web 전용. |
| `appStore` | string | 앱이 설치된 앱 스토어. 네이티브 SDK 전용. |
| `detectedSignals` | array of strings | 디바이스에서 탐지된 위험 신호 그룹. 아무것도 탐지되지 않으면 비어 있습니다. |

디바이스가 수집하지 않은 필드는 Web & Native 계약에서는 존재하지 않고 API 계약에서는 `null`입니다.

`detectedSignals`에는 탐지된 그룹만 나열됩니다. 그룹은 해당 신호 중 하나 이상이 발견되면 탐지된 것으로 간주됩니다:

| 그룹 | 의미 |
|---|---|
| `origin_obfuscated` | 접근의 실제 출처가 숨겨져 있습니다. 예: Tor 또는 안티 핑거프린팅 도구. |
| `untrusted_location` | 위치가 거짓일 수 있습니다. 예: 프록시, VPN 또는 GPS 스푸퍼. |
| `environment_altered` | 디바이스 환경이 변경되었습니다. 예: 에뮬레이터 또는 루팅되거나 탈옥된 디바이스. |
| `app_manipulated` | 앱이 변조, 후킹 또는 디버깅되었습니다. |
| `assisted_session` | 다른 사람이 세션을 조작하고 있을 수 있습니다. 예: 화면 공유 또는 봇. |
| `payload_untrusted` | 디바이스가 보낸 데이터가 변조되었습니다. |

모든 신호가 모든 플랫폼에 존재하는 것은 아니므로, 같은 디바이스라도 Web과 네이티브 SDK에서 서로 다른 그룹이 표시될 수 있습니다.

### 가용성

| 인터페이스 | 지원 여부 |
|---|:-:|
| **SDK** (Android, iOS, Flutter) | ✅ |
| **Web** (iFrame, Redirect) | ✅ |

### 유효한 조합

디바이스 메타데이터는 [사용 가능한 플로우](/dual-api/capabilities/available-flows)의 사전 구성된 `flow` 카탈로그에 포함되어 있지 않습니다. 계정에 대해 계약된 플로우(Web & Native 계약) 또는 API 키의 Recipe(API 계약)에서 활성화되며, Web 및 SDK 통합의 다른 모든 Unico 제품과 함께 활성화할 수 있습니다.

### 이 기능을 사용하는 사용 사례

Web 및 SDK 통합의 모든 Unico 사용 사례에 추가할 수 있습니다.