

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# プライバシー関連の機能
<a name="privacy-related-functions"></a>

AWS Clean Rooms には、以下の仕様のプライバシー関連のコンプライアンスに準拠するのに役立つ機能が用意されています。
+ **グローバルプライバシープラットフォーム (GPP)** – オンラインプライバシーとデータ使用のためのグローバルで標準化されたフレームワークを確立する、Interactive Advertising Bureau (IAB) からの仕様。GPP の技術仕様の詳細については、[GitHub のグローバルプライバシープラットフォームのドキュメント](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform)を参照してください。
+ **Transparency and Framework Framework (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>

次の例では、エンコードされた同意文字列である 1 つの引数を取ります。ユーザーのプライバシー設定、同意の選択、その他のメタデータに関する情報など、デコードされた同意データを含むディクショナリを返します。

```
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` 関数は、Transparency and Framework Framework (TCF) 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`関数は、Transparency and Framework (TCF) 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`: ユーザーが「目的 1 つの処理」をリクエストしたかどうかを示すブール値 (つまり、すべての目的が均等に扱われます）。
+ `publisherCountryCode`: パブリッシャーの国コード。
+ `vendorConsent`: ユーザーが同意したベンダー IDs のリスト。
+ `vendorLegitimateInterest`: ユーザーの正当な利益が透過的に伝達されているベンダー IDs のリスト。
+ `pubRestrictionEntry`: パブリッシャーの制限のリスト。このフィールドには、目的 ID、制限タイプ、およびその目的制限に基づくベンダー IDs のリストが含まれます。

**孤立したベンダーセグメント**
+ `disclosedVendors`: ユーザーに公開されたベンダーを表す整数のリスト。

**パブリッシャー目的セグメント**
+ `pubPurposesConsent`: ユーザーが同意したパブリッシャー固有の目的を表す整数のリスト。
+ `pubPurposesLITransparency`: ユーザーが正当な利益の透明性を付与したパブリッシャー固有の目的を表す整数のリスト。
+ `customPurposesConsent`: ユーザーが同意したカスタム目的を表す整数のリスト。
+ `customPurposesLITransparency`: ユーザーが正当な利益の透明性を付与したカスタム目的を表す整数のリスト。

この詳細な同意データは、個人データを使用する際のユーザーのプライバシー設定を理解し、尊重するために使用できます。

## 例
<a name="consent_tcf_v2_decode-examples"></a>

次の例では、エンコードされた同意文字列である 1 つの引数を取ります。ユーザーのプライバシー設定、同意の選択、その他のメタデータに関する情報など、デコードされた同意データを含むディクショナリを返します。

```
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],
};
```