

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

# 개인 정보 보호 관련 함수
<a name="privacy-related-functions"></a>

AWS Clean Rooms 는 다음 사양에 대한 개인 정보 보호 관련 규정 준수를 지원하는 함수를 제공합니다.
+ **글로벌 프라이버시 플랫폼(GPP)** - 온라인 프라이버시 및 데이터 사용을 위한 글로벌 표준화된 프레임워크를 설정하는 대화형 광고국(IAB)의 사양입니다. GPP의 기술 사양에 대한 자세한 내용은 [ GitHub의 글로벌 프라이버시 플랫폼 설명서를 참조하세요](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform).
+ **투명성 및 동의 프레임워크(TCF)** - 2020년에 출시된 GPP의 주요 구성 요소로, 기업이 EU 일반 데이터 보호 규정(GDPR)과 같은 개인 정보 보호 규정을 준수하도록 지원하는 표준화된 기술 프레임워크를 제공합니다. TCF를 사용하면 고객이 데이터 수집 및 처리에 대한 동의를 부여하거나 보류할 수 있습니다. TCF의 기술 사양에 대한 자세한 내용은 [ GitHub의 TCF 설명서를](https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework/tree/master/TCFv2) 참조하세요.

**Topics**
+ [consent\$1gpp\$1v1\$1decode 함수](consent_gpp_v1_decode.md)
+ [consent\$1tcf\$1v2\$1decode 함수](consent_tcf_v2_decode.md)

# consent\$1gpp\$1v1\$1decode 함수
<a name="consent_gpp_v1_decode"></a>

이 `consent_gpp_v1_decode` 함수는 글로벌 프라이버시 플랫폼(GPP) v1 동의 데이터를 디코딩하는 데 사용됩니다. 인코딩된 동의 문자열을 입력으로 받아 사용자의 개인 정보 기본 설정 및 동의 선택에 대한 정보가 포함된 디코딩된 동의 데이터를 반환합니다. 이 함수는 GPP v1 동의 정보가 포함된 데이터로 작업할 때 유용한데, 이를 통해 구조화된 형식으로 동의 데이터에 액세스하고 분석할 수 있기 때문입니다.

## 구문
<a name="consent_gpp_v1_decode-syntax"></a>

```
consent_gpp_v1_decode(gpp_string)
```

## 인수
<a name="consent_gpp_v1_decode-arguments"></a>

 *gpp\$1string*   
인코딩된 GPP v1 동의 문자열입니다.

## 반환
<a name="consent_gpp_v1_decode-returm-type"></a>

반환된 사전에는 다음과 같은 키-값 페어가 포함됩니다.
+ `version`: 사용된 GPP 사양의 버전(현재 1).
+ `cmpId`: 동의 문자열을 인코딩한 동의 관리 플랫폼(CMP)의 ID입니다.
+ `cmpVersion`: 동의 문자열을 인코딩한 CMP의 버전입니다.
+ `consentScreen`: 사용자가 동의한 CMP UI의 화면 ID입니다.
+ `consentLanguage`: 동의 정보의 언어 코드입니다.
+ `vendorListVersion`: 사용된 공급업체 목록의 버전입니다.
+ `publisherCountryCode`: 게시자의 국가 코드입니다.
+ `purposeConsent`: 사용자가 동의한 목적을 나타내는 정수 목록입니다.
+ `purposeLegitimateInterest`: 사용자의 합법적인 이해 관계가 투명하게 전달된 용도 IDs 목록입니다.
+ `specialFeatureOptIns`: 사용자가 옵트인한 특수 기능을 나타내는 정수 목록입니다.
+ `vendorConsent`: 사용자가 동의한 공급업체 IDs.
+ `vendorLegitimateInterest`: 사용자의 합법적인 이해 관계가 투명하게 전달된 공급업체 IDs 목록입니다.

## 예제
<a name="consent_gpp_v1_decode-example"></a>

다음 예제에서는 인코딩된 동의 문자열인 단일 인수를 사용합니다. 사용자의 개인 정보 기본 설정, 동의 선택 및 기타 메타데이터에 대한 정보를 포함하여 디코딩된 동의 데이터가 포함된 사전을 반환합니다.

```
SELECT * FROM consent_gpp_v1_decode('ABCDEFGHIJK');
```

반환된 동의 데이터의 기본 구조에는 동의 문자열 버전, CMP(Consent Management Platform) 세부 정보, 다양한 용도 및 공급업체에 대한 사용자의 동의 및 합법적인 관심 선택, 기타 메타데이터에 대한 정보가 포함됩니다.

```
{
    "version": 1,
    "cmpId": 12,
    "cmpVersion": 34,
    "consentScreen": 5,
    "consentLanguage": "en",
    "vendorListVersion": 89,
    "publisherCountryCode": "US",
    "purposeConsent": [1],
    "purposeLegitimateInterests": [1],
    "specialFeatureOptins": [1],
    "vendorConsent": [1],
    "vendorLegitimateInterests": [1]}
}
```

# consent\$1tcf\$1v2\$1decode 함수
<a name="consent_tcf_v2_decode"></a>

`consent_tcf_v2_decode` 함수는 TCP(투명성 및 동의 프레임워크) v2 동의 데이터를 디코딩하는 데 사용됩니다. 인코딩된 동의 문자열을 입력으로 받아 사용자의 개인 정보 기본 설정 및 동의 선택에 대한 정보가 포함된 디코딩된 동의 데이터를 반환합니다. 이 함수는 TCF v2 동의 정보가 포함된 데이터로 작업할 때 유용한데, 이를 통해 구조화된 형식으로 동의 데이터에 액세스하고 분석할 수 있기 때문입니다.

## 구문
<a name="consent_tcf_v2_decode-syntax"></a>

```
consent_tcf_v2_decode(tcf_string)
```

## 인수
<a name="consent_tcf_v2_decode-arguments"></a>

 *tcf\$1string*   
인코딩된 TCF v2 동의 문자열입니다.

## 반환
<a name="consent_tcf_v2_decode-return-type"></a>

`consent_tcf_v2_decode` 함수는 TCP(Transparency and Consent Framework) v2 동의 문자열에서 디코딩된 동의 데이터가 포함된 사전을 반환합니다.

반환된 사전에는 다음과 같은 키-값 페어가 포함됩니다.

**코어 세그먼트**
+ `version`: 사용된 TCF 사양의 버전(현재 2).
+ `created`: 동의 문자열이 생성된 날짜와 시간입니다.
+ `lastUpdated`: 동의 문자열이 마지막으로 업데이트된 날짜와 시간입니다.
+ `cmpId`: 동의 문자열을 인코딩한 동의 관리 플랫폼(CMP)의 ID입니다.
+ `cmpVersion`: 동의 문자열을 인코딩한 CMP의 버전입니다.
+ `consentScreen`: 사용자가 동의한 CMP UI의 화면 ID입니다.
+ `consentLanguage`: 동의 정보의 언어 코드입니다.
+ `vendorListVersion`: 사용된 공급업체 목록의 버전입니다.
+ `tcfPolicyVersion`: 동의 문자열이 기반으로 하는 TCF 정책의 버전입니다.
+ `isServiceSpecific`: 동의가 특정 서비스에만 적용되는지 또는 모든 서비스에 적용되는지 여부를 나타내는 부울 값입니다.
+ `useNonStandardStacks`: 비표준 스택을 사용할지 여부를 나타내는 부울 값입니다.
+ `specialFeatureOptIns`: 사용자가 옵트인한 특수 기능을 나타내는 정수 목록입니다.
+ `purposeConsent`: 사용자가 동의한 목적을 나타내는 정수 목록입니다.
+ `purposesLITransparency`: 사용자가 합법적인 관심 투명성을 부여한 목적을 나타내는 정수 목록입니다.
+ `purposeOneTreatment`: 사용자가 "한 가지 용도 처리"를 요청했는지 여부를 나타내는 부울 값입니다(즉, 모든 용도가 동일하게 처리됨).
+ `publisherCountryCode`: 게시자의 국가 코드입니다.
+ `vendorConsent`: 사용자가 동의한 공급업체 IDs.
+ `vendorLegitimateInterest`: 사용자의 합법적인 이해 관계가 투명하게 전달된 공급업체 IDs 목록입니다.
+ `pubRestrictionEntry`: 게시자 제한 목록입니다. 이 필드에는 해당 목적 제한에 따른 목적 ID, 제한 유형 및 공급업체 IDs 목록이 포함되어 있습니다.

**공개된 공급업체 세그먼트**
+ `disclosedVendors`: 사용자에게 공개된 공급업체를 나타내는 정수 목록입니다.

**게시자 목적 세그먼트**
+ `pubPurposesConsent`: 사용자가 동의한 게시자별 목적을 나타내는 정수 목록입니다.
+ `pubPurposesLITransparency`: 사용자가 합법적인 관심 투명성을 부여한 게시자별 목적을 나타내는 정수 목록입니다.
+ `customPurposesConsent`: 사용자가 동의한 사용자 지정 목적을 나타내는 정수 목록입니다.
+ `customPurposesLITransparency`: 사용자가 합법적인 관심 투명성을 부여한 사용자 지정 목적을 나타내는 정수 목록입니다.

이 자세한 동의 데이터는 개인 데이터로 작업할 때 사용자의 개인 정보 기본 설정을 이해하고 준수하는 데 사용할 수 있습니다.

## 예제
<a name="consent_tcf_v2_decode-examples"></a>

다음 예제에서는 인코딩된 동의 문자열인 단일 인수를 사용합니다. 사용자의 개인 정보 기본 설정, 동의 선택 및 기타 메타데이터에 대한 정보를 포함하여 디코딩된 동의 데이터가 포함된 사전을 반환합니다.

```
from aws_clean_rooms.functions import consent_tcf_v2_decode

consent_string = "CO1234567890abcdef"
consent_data = consent_tcf_v2_decode(consent_string)

print(consent_data)
```

반환된 동의 데이터의 기본 구조에는 동의 문자열 버전, CMP(Consent Management Platform) 세부 정보, 다양한 용도 및 공급업체에 대한 사용자의 동의 및 합법적인 관심 선택, 기타 메타데이터에 대한 정보가 포함됩니다.

```
    /** core segment **/
    version: 2,
    created: "2023-10-01T12:00:00Z",
    lastUpdated: "2023-10-01T12:00:00Z",
    cmpId: 1234,
    cmpVersion: 5,
    consentScreen: 1,
    consentLanguage: "en",
    vendorListVersion: 2,
    tcfPolicyVersion: 2,
    isServiceSpecific: false,
    useNonStandardStacks: false,
    specialFeatureOptIns: [1, 2, 3],
    purposeConsent: [1, 2, 3],
    purposesLITransparency: [1, 2, 3],
    purposeOneTreatment: true,
    publisherCountryCode: "US",
    vendorConsent: [1, 2, 3],
    vendorLegitimateInterest: [1, 2, 3],
    pubRestrictionEntry: [
        { purpose: 1, restrictionType: 2, restrictionDescription: "Example restriction" },
    ],

    /** disclosed vendor segment **/
    disclosedVendors: [1, 2, 3],

    /** publisher purposes  segment **/
    pubPurposesConsent: [1, 2, 3],
    pubPurposesLITransparency: [1, 2, 3],
    customPurposesConsent: [1, 2, 3],
    customPurposesLITransparency: [1, 2, 3],
};
```