diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-buckets.md b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-buckets.md
index 87b04f46c..87f7a9f17 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-buckets.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-buckets.md
@@ -23,7 +23,7 @@ Used by: このエンドポイントは、主に広告主とデータプロバ
| :-------------- | :-------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `{environment}` | string | Required | テスト環境: `https://operator-integ.uidapi.com`
本番環境: `https://prod.uidapi.com`
リージョンごとのオペレーターを含む全リストは [Environments](../summary-doc-v2.md#environments) を参照してください。 |
-NOTE: インテグレーション環境と本番環境では、異なる[APIキー](../ref-info/glossary-uid.md#gl-api-key)が必要です。
+NOTE: インテグレーション環境と本番環境では、異なる [APIキー](../ref-info/glossary-uid.md#gl-api-key) が必要です。
### Unencrypted JSON Body Parameters
@@ -94,4 +94,4 @@ echo '{"since_timestamp": "2023-04-19T13:00:00"}' | python3 uid2_request.py http
| `client_error` | 400 | リクエストに不足している、または無効なパラメータがありました。 |
| `unauthorized` | 401 | クエストにベアラートークンが含まれていない、無効なベアラートークンが含まれている、またはリクエストされた操作を実行するのに許可されていないベアラートークンが含まれていました。 |
-`status` の値が `success` 以外の場合、 `message` フィールドにその問題に関する追加情報が表示されます。
+`status` の値が `success` 以外であれば、 `message` フィールドにその問題に関する追加情報が表示されます。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-map.md b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-map.md
index ce58a6f78..690a679ca 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-map.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-identity-map.md
@@ -33,19 +33,19 @@ Used by: このエンドポイントは、主に広告主やデータプロバ
| :-------------- | :-------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `{environment}` | string | 必須 | テスト環境: `https://operator-integ.uidapi.com`
本番環境: `https://prod.uidapi.com`
リージョンごとのオペレーターを含む全リストは [Environments](../summary-doc-v2.md#environments) を参照してください。 |
-NOTE: インテグレーション環境と本番環境では、異なる[APIキー](../ref-info/glossary-uid.md#gl-api-key)が必要です。
+NOTE: インテグレーション環境と本番環境では、異なる [APIキー](../ref-info/glossary-uid.md#gl-api-key) が必要です。
### Unencrypted JSON Body Parameters
-> IMPORTANT: リクエストを暗号化する際、JSON ボディに Key-Value ペアとして以下のパラメータのうち 1 つだけを含める必要があります。
+> IMPORTANT: リクエストを暗号化するときには、以下の4つの条件付きパラメータのうち **1つ** と、必須パラメータである `policy` の値 `1` のみを、JSON ボディのキーと値のペアとして含める必要があります。
| Body Parameter | Data Type | Attribute | Description |
| :------------- | :----------- | :------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email` | string array | 条件付きで必要 | マッピングするメールアドレスのリストです。 |
-| `email_hash` | string array | 条件付きで必要 | [正規化](../getting-started/gs-normalization-encoding#email-address-hash-encoding) したメールアドレスを [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#email-address-normalization) したリストです。 |
-| `phone` | string array | 条件付きで必要 | マッピングする [正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号のリストです。 |
-| `phone_hash` | string array | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#phone-number-hash-encoding) した [正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号のリストです。 |
-| `optout_check` | number | オプション | ユーザー識別子がオプトアウトされたときの ID マップの動作をカスタマイズします。詳しくは、[Identity Map Policy](#identity-map-policy) を参照してください。 |
+| `email_hash` | string array | 条件付きで必要 | マッピングする [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding.md#email-address-normalization) した [正規化](../getting-started/gs-normalization-encoding.md#email-address-hash-encoding) 済みメールアドレスのリストです。 |
+| `phone` | string array | 条件付きで必要 | マッピングする [正規化](../getting-started/gs-normalization-encoding.md#phone-number-normalization) 済み電話番号のリストです。 |
+| `phone_hash` | string array | 条件付きで必要 | マッピングする [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding.md#phone-number-hash-encoding) した [正規化](../getting-started/gs-normalization-encoding.md#phone-number-normalization) 済み電話番号のリストです。 |
+| `policy` | number | 必須 | トークン生成ポリシー ID は、ユーザーがオプトアウトしたかどうかをチェックします。このパラメータは `1` とします。 |
### Request Examples
@@ -53,7 +53,11 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
```json
{
- "email": ["user@example.com", "user2@example.com"]
+ "email": [
+ "user@example.com",
+ "user2@example.com"
+ ],
+ "policy":1
}
```
@@ -62,13 +66,18 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
"email_hash": [
"eVvLS/Vg+YZ6+z3i0NOpSXYyQAfEXqCZ7BTpAjFUBUc=",
"tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="
- ]
+ ],
+ "policy":1
}
```
```json
{
- "phone": ["+1111111111", "+2222222222"]
+ "phone": [
+ "+1111111111",
+ "+2222222222"
+ ],
+ "policy":1
}
```
@@ -77,14 +86,15 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
"phone_hash": [
"eVvLS/Vg+YZ6+z3i0NOpSXYyQAfEXqCZ7BTpAjFUBUc=",
"tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="
- ]
+ ],
+ "policy":1
}
```
以下は、メールアドレスハッシュに対する暗号化された ID マッピングリクエストの例です:
```sh
-echo '{"phone": ["+1111111111", "+2222222222"]}' | python3 uid2_request.py https://prod.uidapi.com/v2/identity/map YourTokenBV3tua4BXNw+HVUFpxLlGy8nWN6mtgMlIk= DELPabG/hsJsZk4Xm9Xr10Wb8qoKarg4ochUdY9e+Ow=
+echo '{"phone": ["+1111111111", "+2222222222"], "policy":1}' | python3 uid2_request.py https://prod.uidapi.com/v2/identity/map YourTokenBV3tua4BXNw+HVUFpxLlGy8nWN6mtgMlIk= DELPabG/hsJsZk4Xm9Xr10Wb8qoKarg4ochUdY9e+Ow=
```
詳細と Python スクリプトの例は、[リクエストの暗号化とレスポンスの復号化](../getting-started/gs-encryption-decryption.md) を参照してください。
@@ -138,7 +148,7 @@ echo '{"phone": ["+1111111111", "+2222222222"]}' | python3 uid2_request.py https
}
```
-リクエストにパラメータ/値 `optout_check=1` が含まれ、一部の識別子が UID2 エコシステムからオプトアウトしている場合、オプトアウトした識別子は、見つかった無効な識別子とともに"unmapped"リストに移動されます。この場合でも、応答ステータスは "success" です。
+一部の識別子が UID2 エコシステムからオプトアウトしている場合、オプトアウトした識別子は、見つかった無効な識別子とともに "unmapped" リストに移動されます。この場合でも、応答ステータスは "success" です。
```json
{
@@ -177,15 +187,7 @@ echo '{"phone": ["+1111111111", "+2222222222"]}' | python3 uid2_request.py https
| :------------- | :--------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `success` | 200 | リクエストは成功しました。レスポンスは暗号化されています。 |
| `client_error` | 400 | リクエストに不足している、または無効なパラメータがありました。 |
-| `unauthorized` | 401 | クエストにベアラートークンが含まれていない、無効なベアラートークンが含まれている、またはリクエストされた操作を実行するのに許可されていないベアラートークンが含まれていました。 |
+| `unauthorized` | 401 | クエストにベアラートークンが含まれていない、無効なベアラートークンが含まれている、またはリクエストされた操作を実行するのに許可されていないベアラートークンが含まれていた。 |
-`status` の値が `success` 以外の場合、 `message` フィールドにその問題に関する追加情報が表示されます。
+`status` の値が `success` 以外であれば、 `message` フィールドにその問題に関する追加情報が表示されます。
-### Identity Map Policy
-
-ID マップポリシーは、トークンを生成するタイミングを呼び出し元が決定できるようにします。これは、リクエストボディに整数値の ID として渡されます (キー 'policy' を使用)。このパラメータが省略された場合、デフォルト値である optout_check = 0 が適用されます。
-
-| ID | Description |
-| :-- | :----------------------------------------------------- |
-| 0 | 常にユーザー ID を UID2 にマッピングします。 |
-| 1 | オプトアウトしたユーザーは、マッピングに含まれません。 |
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-generate.md b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-generate.md
index 39fbe3a1a..ec7659e42 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-generate.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-generate.md
@@ -7,11 +7,11 @@ sidebar_position: 02
# POST /token/generate
-UID2 ベースのターゲティング広告にユーザーをオプトインし、提供されたメールアドレスまたは電話番号から UID2 Token を生成します。
+UID2 ベースのターゲティング広告の承認とともにユーザーから提供された [DII](../ref-info/glossary-uid.md#gl-dii)(メールアドレスまたは電話番号)から生成された UID2 Token をリクエストします。DII が有効で、ユーザーが UID2 をオプトアウトしていない場合、この操作は UID2 Token と関連する値を返します。
Used by: このエンドポイントは、主にパブリッシャーが使用します。
-> IMPORTANT: このエンドポイントは、ユーザーの [directly identifying information (DII)](../ref-info/glossary-uid.md#gl-dii) をターゲティング広告用の UID2 Token に変換する法的根拠を得た場合にのみ呼び出すようにしてください。デフォルトでは、このエンドポイントはオプトアウト記録をチェックしません。ユーザーがオプトアウトしたかどうかを確認するには、オプションの `optout_check` リクエストパラメータに `1` を指定して使用します。
+> IMPORTANT: このエンドポイントは、ユーザーの [directly identifying information (DII)](../ref-info/glossary-uid.md#gl-dii) をターゲティング広告用の UID2 Token に変換する法的根拠を得た場合にのみ呼び出すようにしてください。`policy` パラメータは値 `1` が必須で、ユーザーがオプトアウトしたかどうかをチェックします。
## Request Format
@@ -28,19 +28,19 @@ Used by: このエンドポイントは、主にパブリッシャーが使用
| :-------------- | :-------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `{environment}` | string | 必須 | テスト環境: `https://operator-integ.uidapi.com`
本番環境: `https://prod.uidapi.com`
リージョンごとのオペレーターを含む全リストは [Environments](../summary-doc-v2.md#environments) を参照してください。 |
-NOTE: インテグレーション環境と本番環境では、異なる[APIキー](../ref-info/glossary-uid.md#gl-api-key)が必要です。
+NOTE: インテグレーション環境と本番環境では、異なる [APIキー](../ref-info/glossary-uid.md#gl-api-key) が必要です。
### Unencrypted JSON Body Parameters
-リクエストを暗号化する際、JSON ボディに Key-Value ペアとして含めるパラメータは、以下のいずれか 1 つだけである必要があります。
+> IMPORTANT: リクエストを暗号化するときには、以下の4つの条件付きパラメータのうち **1つ** と、必須パラメータである `policy` の値 `1` のみを、JSON ボディのキーと値のペアとして含める必要があります。
| Body Parameter | Data Type | Attribute | Description |
| :------------- | :-------- | :------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `email` | string | 条件付きで必要 | トークンを生成するメールアドレスです。 |
-| `email_hash` | string | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#email-address-hash-encoding) した [正規化](../getting-started/gs-normalization-encoding#email-address-normalization) 済みメールアドレスです。 |
-| `phone` | string | 条件付きで必要 | トークンを生成する [正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号です。 |
-| `phone_hash` | string | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding#phone-number-hash-encoding) した、[正規化](../getting-started/gs-normalization-encoding#phone-number-normalization) 済み電話番号です。 |
-| `optout_check` | number | オプション | トークン生成ポリシーの ID です。[Token Generation Policy](#token-generation-policy) を参照してください。 |
+| `email_hash` | string | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding.md#email-address-hash-encoding) した [正規化](../getting-started/gs-normalization-encoding.md#email-address-normalization) 済みメールアドレスです。 |
+| `phone` | string | 条件付きで必要 | トークンを生成する [正規化](../getting-started/gs-normalization-encoding.md#phone-number-normalization) 済み電話番号です。 |
+| `phone_hash` | string | 条件付きで必要 | [SHA-256 ハッシュし、Base64 エンコード](../getting-started/gs-normalization-encoding.md#phone-number-hash-encoding) した、[正規化](../getting-started/gs-normalization-encoding.md#phone-number-normalization) 済み電話番号です。 |
+| `policy` | number | 必須 | トークン生成ポリシー ID は、ユーザーがオプトアウトしたかどうかをチェックします。このパラメータは `1` とします。 |
### Request Examples
@@ -50,32 +50,36 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
```json
{
- "email": "username@example.com"
+ "email": "username@example.com",
+ "policy": 1
}
```
```json
{
- "email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="
+ "email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ=",
+ "policy": 1
}
```
```json
{
- "phone": "+12345678901"
+ "phone": "+12345678901",
+ "policy": 1
}
```
```json
{
- "phone_hash": "wdN1alhrbw1Bmz49GzKGdPvGxLhCNn7n3teAOQ/FSK4="
+ "phone_hash": "wdN1alhrbw1Bmz49GzKGdPvGxLhCNn7n3teAOQ/FSK4=",
+ "policy": 1
}
```
以下は、メールアドレスハッシュの暗号化トークン生成リクエストの例です:
```sh
-echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="}' | python3 uid2_request.py https://prod.uidapi.com/v2/token/generate [Your-Client-API-Key] [Your-Client-Secret]
+echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ=","policy":1}' | python3 uid2_request.py https://prod.uidapi.com/v2/token/generate [Your-Client-API-Key] [Your-Client-Secret]
```
詳細と Python スクリプトの例は、[リクエストの暗号化とレスポンスの復号化](../getting-started/gs-encryption-decryption.md) を参照してください。
@@ -109,7 +113,7 @@ echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="}' | python3
#### Optout
-以下は、`optout_check`パラメータがリクエストに含まれ、値が`1`で、ユーザーがオプトアウトした場合の応答例です。その他のシナリオでは、ユーザーがオプトアウトした場合、トークンが返されます (上記の [Successful Response](#successful-response) を参照してください)。
+以下は、ユーザーがオプトアウトした場合の応答例です。
```json
{
@@ -124,7 +128,7 @@ echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="}' | python3
| `advertising_token` | string | ユーザーの暗号化された Advertising Token (UID2)です。 |
| `refresh_token` | string | UID2 Service と最新の identity トークンのセットを交換できる暗号化されたトークンです。 |
| `identity_expires` | double | Advertising Token の有効期限を示す UNIX タイムスタンプ (ミリ秒単位)です。 |
-| `refresh_from` | double | UID2 SDK for JavaScript ([UID2 SDK for JavaScript Reference Guide](../sdks/client-side-identity.md) を参照してください) が UID2 Token のリフレッシュを開始するタイミングを示す UNIX タイムスタンプ(ミリ秒単位)。
TIP: SDK を使用していない場合は、このタイムスタンプから Advertising Token もリフレッシュすることを検討してください。|
+| `refresh_from` | double | UID2 SDK for JavaScript ([UID2 SDK for JavaScript Reference Guide](../sdks/client-side-identity.md) を参照してください) が UID2 Token のリフレッシュを開始するタイミングを示す UNIX タイムスタンプ(ミリ秒単位)。
TIP: SDK を使用していない場合は、このタイムスタンプから UID2 Token もリフレッシュすることを検討してください。|
| `refresh_expires` | double | Refresh Token の有効期限を示す UNIX タイムスタンプ (ミリ秒単位)です。 |
| `refresh_response_key` | string | [POST /token/refresh](post-token-refresh.md) リクエストでレスポンス復号化のために使用される鍵です。 |
@@ -139,7 +143,7 @@ echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="}' | python3
| `client_error` | 400 | リクエストに不足している、または無効なパラメータがありました。 |
| `unauthorized` | 401 | クエストにベアラートークンが含まれていない、無効なベアラートークンが含まれている、またはリクエストされた操作を実行するのに許可されていないベアラートークンが含まれていました。 |
-`status` の値が `success` 以外の場合、 `message` フィールドにその問題に関する追加情報が表示されます。
+`status` の値が `success` 以外であれば、 `message` フィールドにその問題に関する追加情報が表示されます。
## Test Identities
@@ -148,13 +152,4 @@ echo '{"email_hash": "tMmiiTI7IaAcPpQPFQ65uMVCWH8av9jw4cwf/F5HVRQ="}' | python3
| Email | `validate@email.com` | キャッシュした `advertising_token` が、指定したメールアドレスの `advertising_token` と一致するかどうかをテストします。 | [POST /token/validate](post-token-validate.md) |
| Email | `optout@email.com` | このメールアドレスをリクエストに使用すると、常に `refresh_token` を使用した identity レスポンスが生成され、`optout` のレスポンスになります。 | [POST /token/refresh](post-token-refresh.md) |
| Phone | `+12345678901` | キャッシュした `advertising_token` が、指定した電話番号の `advertising_token` と一致するかどうかをテストします。 | [POST /token/validate](post-token-validate.md) |
-| Phone | `+00000000000` | この電話番号をリクエストに使用すると、常に `refresh_token` を含む identity レスポンスが生成され、`optout` のレスポンスになります。 | [POST /token/refresh](post-token-refresh.md) |
-
-## Token Generation Policy
-
-トークン生成ポリシーは、トークンを生成するタイミングを呼び出し側に決定させるものです。パラメータを省略すると、ID = 0 のポリシーが適用されます。
-
-| ID | Description |
-| :-- | :--------------------------------------------------------------- |
-| 0 | 必ずトークンを生成します。 |
-| 1 | ユーザーがオプトアウトしていない場合のみ、トークンを生成します。 |
+| Phone | `+00000000000` | この電話番号をリクエストに使用すると、常に `refresh_token` を含む identity レスポンスが生成され、`optout` のレスポンスになります。 | [POST /token/refresh](post-token-refresh.md) |
\ No newline at end of file
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-refresh.md b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-refresh.md
index 713fa3b77..44215ac34 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-refresh.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-refresh.md
@@ -32,14 +32,14 @@ Used by: このエンドポイントは、主にパブリッシャーが使用
| :-------------- | :-------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `{environment}` | string | 必須 | テスト環境: `https://operator-integ.uidapi.com`
本番環境: `https://prod.uidapi.com`
リージョンごとのオペレーターを含む全リストは [Environments](../summary-doc-v2.md#environments) を参照してください。 |
-NOTE: インテグレーション環境と本番環境では、異なる[APIキー](../ref-info/glossary-uid.md#gl-api-key)が必要です。
+NOTE: インテグレーション環境と本番環境では、異なる [APIキー](../ref-info/glossary-uid.md#gl-api-key) が必要です。
#### Testing Notes
[POST /token/generate](post-token-generate.md) リクエストで以下のパラメータのいずれかを使用すると、常に `refresh_token` による ID 応答が生成され、`POST /token/refresh` エンドポイントと共に使用するとログアウト応答となります。
-- `optout@email.com` メールアドレス
-- 電話番号 (`+00000000000`)
+- メールアドレス `optout@email.com`
+- 電話番号 `+00000000000`
### Request Example
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-validate.md b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-validate.md
index d752ff22b..d8581d551 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-validate.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/post-token-validate.md
@@ -25,22 +25,19 @@ Used by: このエンドポイントは、主にパブリッシャーが使用
| :-------------- | :-------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `{environment}` | string | 必須 | テスト環境: `https://operator-integ.uidapi.com`
本番環境: `https://prod.uidapi.com`
リージョンごとのオペレーターを含む全リストは [Environments](../summary-doc-v2.md#environments) を参照してください。 |
-NOTE: インテグレーション環境と本番環境では、異なる[APIキー](../ref-info/glossary-uid.md#gl-api-key)が必要です。
+NOTE: インテグレーション環境と本番環境では、異なる [APIキー](../ref-info/glossary-uid.md#gl-api-key) が必要です。
### Unencrypted JSON Body Parameters
-- Body Parameter の表にあるように、以下の4つの有効なオプションのうち1つだけを含めます: `email`、`email_hash`、`phone`、`phone_hash` のいずれかです。`email`、`email_hash`、`phone`、`phone_hash` です。テストするパラメータには、リストされている値を正確に指定してください。
+- Body Parameter の表にあるように、以下の4つの有効なオプションのうち1つだけを含めます: `email`、`email_hash`、`phone`、`phone_hash` のいずれかです。テストするパラメータには、リストされている値を正確に指定してください。
-詳細については、[FAQs for Publishers](../getting-started/gs-faqs.md#faqs-for-publishers) を参照してください。
-
-
-| Body Parameter | Data Type | Attribute | Description | Value |
-| :--- | :--- | :--- | :--- | :--- |
+| Body Parameter | Data Type | Attribute | Description |
+| :--- | :--- | :--- | :--- |
| `token` | string | Required | [POST /token/generate](post-token-generate.md) レスポンスが返す advertising token です。 |
| `email` | string | Conditionally Required | トークン検証用のメールアドレスです。
有効な値は `validate@email.com` だけです。 |
-| `email_hash` | string | Conditionally Required | トークン検証用の [正規化された](../getting-started/gs-normalization-encoding#email-address-normalization) メールアドレス(`validate@email.com`)の [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding#email-address-hash-encoding) ハッシュです。
有効な値は `LdhtUlMQ58ZZy5YUqGPRQw5xUMS5dXG5ocJHYJHbAKI=` だけです。 |
-| `phone` | string | Conditionally Required | トークンを生成するための [正規化された](../getting-started/gs-normalization-encoding#phone-number-normalization) 電話番号です。
有効な値は`+12345678901` だけです。|
-| `phone_hash` | string | Conditionally Required | [正規化された](../getting-started/gs-normalization-encoding#phone-number-normalization) 電話番号の [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding#phone-number-hash-encoding) ハッシュです。
有効な値は`EObwtHBUqDNZR33LNSMdtt5cafsYFuGmuY4ZLenlue4=` だけです。|
+| `email_hash` | string | Conditionally Required | トークン検証用の [正規化された](../getting-started/gs-normalization-encoding.md#email-address-normalization) メールアドレス(`validate@email.com`)の [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding.md#email-address-hash-encoding) ハッシュです。
有効な値は `LdhtUlMQ58ZZy5YUqGPRQw5xUMS5dXG5ocJHYJHbAKI=` だけです。 |
+| `phone` | string | Conditionally Required | トークンを生成するための [正規化された](../getting-started/gs-normalization-encoding.md#phone-number-normalization) 電話番号です。
有効な値は`+12345678901` だけです。|
+| `phone_hash` | string | Conditionally Required | [正規化された](../getting-started/gs-normalization-encoding.md#phone-number-normalization) 電話番号の [Base64-encoded SHA-256](../getting-started/gs-normalization-encoding.md#phone-number-hash-encoding) ハッシュです。
有効な値は `EObwtHBUqDNZR33LNSMdtt5cafsYFuGmuY4ZLenlue4=` だけです。|
### Request Examples
@@ -77,7 +74,7 @@ NOTE: インテグレーション環境と本番環境では、異なる[APIキ
以下は、メールアドレスハッシュの暗号化トークン検証リクエストの例です:
```sh
-echo '{"token": "AdvertisingTokenmZ4dZgeuXXl6DhoXqbRXQbHlHhA96leN94U1uavZVspwKXlfWETZ3b%2FbesPFFvJxNLLySg4QEYHUAiyUrNncgnm7ppu0mi6wU2CW6hssiuEkKfstbo9XWgRUbWNTM%2BewMzXXM8G9j8Q%3D", "email_hash": "LdhtUlMQ58ZZy5YUqGPRQw5xUMS5dXG5ocJHYJHbAKI="}' | python3 uid2_request.py https://prod.uidapi.com/v2/token/validate [Your-Client-API-Key] [Your-Client-Secret]
+echo '{"token": "AdvertisingTokenmZ4dZgeuXXl6DhoXqbRXQbHlHhA96leN94U1uavZVspwKXlfWETZ3b%2FbesPFFvJxNLLySg4QEYHUAiyUrNncgnm7ppu0mi6wU2CW6hssiuEkKfstbo9XWgRUbWNTM%2BewMzXXM8G9j8Q%3D", "email_hash": "LdhtUlMQ58ZZy5YUqGPRQw5xUMS5dXG5ocJHYJHbAKI="}' | python3 uid2_request.py https://prod.uidapi.com/v2/token/validate [Your-Client-API-Key] [Your-Client-Secret]
```
詳細と Python スクリプトの例は、[リクエストの暗号化とレスポンスの復号化](../getting-started/gs-encryption-decryption.md) を参照してください。
@@ -111,16 +108,16 @@ echo '{"token": "AdvertisingTokenmZ4dZgeuXXl6DhoXqbRXQbHlHhA96leN94U1uavZVspwKXl
| `client_error` | 400 | リクエストに不足している、または無効なパラメータがありました。 |
| `unauthorized` | 401 | クエストにベアラートークンが含まれていない、無効なベアラートークンが含まれている、またはリクエストされた操作を実行するのに許可されていないベアラートークンが含まれていました。 |
-`status` の値が `success` 以外の場合、 `message` フィールドにその問題に関する追加情報が表示されます。
-
+`status` の値が `success` 以外であれば、 `message` フィールドにその問題に関する追加情報が表示されます。
-## Using POST /token/validate to Test
+## Using POST /token/validate to Test
このエンドポイントを使用して、[POST /token/generate](../ref-info/glossary-uid.md#gl-dii) で送信する [DII](../endpoints/post-token-generate.md) が有効かどうかをテストできます。以下の手順に従ってください。
-1. DII がハッシュ化されたメールアドレスか、ハッシュ化されていないメールアドレスか、電話番号かに応じて、[Unencrypted JSON Body Parameters](#unencrypted-json-body-parameters) の表に記載されている4つの有効なオプションのいずれかを使用して、[POST /token/generate](../endpoints/post-token-generate.md) リクエストを送信する。表に記載されている対応する値 - `email`、`email_hash`、`phone`、`phone_hash` - を使用する。
+1. DII がハッシュ化されたメールアドレスか、ハッシュ化されていないメールアドレスか、電話番号かに応じて、[Unencrypted JSON Body Parameters](#unencrypted-json-body-parameters) の表に記載されている4つの有効なオプションのいずれかを使用して、[POST /token/generate](../endpoints/post-token-generate.md) リクエストを送信します。表に記載されている対応する値 - `email`、`email_hash`、`phone`、`phone_hash` - を使用します。
2. 返された `advertising_token` の値を次のステップで使用するために保存します。
-3. Step 2 で保存した `advertising_token` を `token` プロパティの値として、Step 1 で送信した `email`、`email_hash`、`phone`、`phone_hash` の値を使用して [POST /token/validate](../endpoints/post-token-validate.md) リクエストを送信します。
+3. Step 1 で送信した `email`、`email_hash`、`phone`、`phone_hash` の値と、Step 2 で保存した `advertising_token` を `token` プロパティの値として、`POST /token/validate` リクエストを送信します。
+4. `POST /token/validate` リクエストに対するレスポンスを確認します。結果は以下のように、処理の成功を示しています:
- `true` のレスポンスは、Step 1 でリクエストとして送った DII が、Step 1 のレスポンスで受け取ったトークンと一致していることを示します。
- `false` のレスポンスは、メールアドレス、電話番号、またはそれぞれのハッシュを送信する方法に問題があるかもしれないことを示します。
\ No newline at end of file
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/summary-endpoints.md b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/summary-endpoints.md
index 19cf1cebd..5adb97ca1 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/summary-endpoints.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/endpoints/summary-endpoints.md
@@ -9,14 +9,14 @@ sidebar_position: 01
すべての UID2 エンドポイントでは、API リクエストの暗号化([POST /token/refresh](post-token-refresh.md) を除く)とレスポンスの復号化にクライアントシークレットが必要です。詳細と Python スクリプトの例は、[リクエストの暗号化とレスポンスの復号化](../getting-started/gs-encryption-decryption.md) を参照してください。
-## Identity Tokens
+## UID2 Tokens
-以下のエンドポイントは、UID2 Token を取得および管理するためのもので、主にパブリッシャーが使用します。
+以下のエンドポイントは、UID2 Token (identity tokens, advertising tokens) を取得および管理するためのもので、主にパブリッシャーが使用します。
| Endpoint | Description | Request Encryption | Response Decryption |
| :--------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------- | :----------------- | :------------------ |
-| [POST /token/generate](post-token-generate.md) | UID2 ベースのターゲティング広告にユーザーをオプトインし、提供されたメールアドレスまたは電話番号から UID2 Token を生成します。 | 必須 | 必須 |
-| [POST /token/validate](post-token-validate.md) | Advertising Token (UID2)が指定されたメールアドレス、電話番号、またはそれぞれのハッシュと一致するかどうかを検証するためのテストに使用します。 | 必須 | 必須 |
+| [POST /token/generate](post-token-generate.md) | UID2 ベースのターゲティング広告を承認するためにユーザーから提供されたメールアドレスまたは電話番号から、UID2 Tokenを要求します。DII が有効で、ユーザーが UID2 をオプトアウトしていない場合、この操作は UID2 Token と関連する値をします。 | 必須 | 必須 |
+| [POST /token/validate](post-token-validate.md) | Advertising Token (UID2) が指定されたメールアドレス、電話番号、またはそれぞれのハッシュと一致するかどうかを検証するためのテストに使用します。 | 必須 | 必須 |
| [POST /token/refresh](post-token-refresh.md) | [POST /token/generate](./post-token-generate.md) レスポンスから、ユーザーの Refresh Token 用に新しいトークンを生成します。 | N/A | 必須 |
## Identity Maps
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-faqs.md b/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-faqs.md
index 25bb182f6..fcadd0953 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-faqs.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-faqs.md
@@ -14,7 +14,7 @@ UID2 に関するよくある質問は、以下のカテゴリーに分かれて
- [FAQs—General](#faqsgeneral)
- [FAQs for Publishers](#faqs-for-publishers)
- [FAQs for Advertisers and Data Providers](#faqs-for-advertisers-and-data-providers)
-- [FAQs for Demand-Side Platforms (DSPs)](#faqs-for-demand-side-platforms-dsps) -->
+- [FAQs for DSPs)](#faqs-for-dsps) -->
## FAQs—General
@@ -67,7 +67,8 @@ UID2 フレームワークを使用するパブリッシャーからのよくあ
#### ユーザーの out-out はどのように通知されますか?
ユーザーがオプトアウトした場合、API レスポンスは以下のいずれかのケースで通知します:
-- 直接または UID2 SDK のいずれかで [POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを呼び出し、オプションの `optout_check` パラメータに `1` を指定して UID2 Token を生成した場合。
+
+- 直接または UID2 SDK のいずれかで [POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを呼び出し、UID2 Token を生成する場合、必須の `policy` パラメータに `1` を指定します。
- 直接または UID2 SDK のいずれかで [POST /token/refresh](../endpoints/post-token-refresh.md) エンドポイントを呼び出し、UID2 Token をリフレッシュした場合。
#### トークン生成の呼び出しは、サーバーサイドとクライアントサイドのどちらで行うべきですか?
@@ -82,14 +83,14 @@ UID2 Token は、認証後にサーバーサイドでのみ生成する必要が
`optout@email.com` のメールアドレスまたは `+00000000000` の電話番号を使用して、トークンリフレッシュのワークフローをテストすることができます。どちらかのパラメータ値をリクエストに使用すると、常に `refresh_token` を含む identity レスポンスが生成され、ログアウトレスポンスが返されます。
-SDKを使うかどうかで手順は少し異なります。違いは Step 3 にあります。
+SDKを使うかどうかで手順は少し異なります。
##### With SDK:
1. DII がメールアドレスか電話番号かに応じて、以下の値のいずれかを使用して [POST /token/generate](../endpoints/post-token-generate.md) リクエストを送信します:
- `email` の値として `optout@email.com` を指定します。
- `optout@email.com` のハッシュを `email_hash` 値として指定します。
- - `phone` の値として `+00000000000` を指定する。
+ - `phone` の値として `+00000000000` を指定します。
- `phone_hash` 値として `+000000000` のハッシュを指定します。
2. SDK の [background auto-refresh](../sdks/client-side-identity.md#background-token-auto-refresh) が Advertising Token のリフレッシュを試み(これには数時間かかることがあります)、リフレッシュの試みが `OPTOUT` ステータスで失敗するのを観察するまで待ちます。この時点で SDK はファーストパーティクッキーもクリアします。
@@ -98,7 +99,7 @@ SDKを使うかどうかで手順は少し異なります。違いは Step 3 に
1. DII がメールアドレスか電話番号かに応じて、以下の値のいずれかを使用して [POST /token/generate](../endpoints/post-token-generate.md) リクエストを送信します:
- `email` の値として `optout@email.com` を指定します。
- `optout@email.com` のハッシュを `email_hash` 値として指定します。
- - `phone` の値として `+00000000000` を指定する。
+ - `phone` の値として `+00000000000` を指定します。
- `phone_hash` 値として `+000000000` のハッシュを指定します。
2. 返された `refresh_token` を次のステップで使用するために保存します。
3. [POST /token/refresh](../endpoints/post-token-refresh.md) リクエストを `refresh_token` (Step 2 で保存) を `token` 値として送信します。
ボディのレスポンスは空でなければならず、`optout@email.com` のメールアドレスと `+00000000000` の電話番号は常にログアウトしたユーザになるので、`status` の値は `optout` でなければなりません。
@@ -163,9 +164,9 @@ IMPORTANT: メールアドレスのマッピングや再マッピングを行う
たとえば、そのユーザーに対して UID2 を生成しないことを選択することもできます。
-## FAQs for Demand-Side Platforms (DSPs)
+## FAQs for DSPs
-ここでは、DSP によくある質問を紹介します。
+demand-side platform (DSP) に関するよくある質問を紹介します。
- [UID2 に適用する復号鍵はどのように決定すればよいですか?](#UID2-%E3%81%AB%E9%81%A9%E7%94%A8%E3%81%99%E3%82%8B%E5%BE%A9%E5%8F%B7%E9%8D%B5%E3%81%AF%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E6%B1%BA%E5%AE%9A%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F)
- [復号鍵はどこで手に入りますか?](#%E5%BE%A9%E5%8F%B7%E9%8D%B5%E3%81%AF%E3%81%A9%E3%81%93%E3%81%A7%E6%89%8B%E3%81%AB%E5%85%A5%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B%EF%BC%9F)
@@ -227,7 +228,7 @@ UID2 は、クッキーと同じように古くなる可能性があります。
-少なくとも 30 日間です。
+オプトアウト情報は無期限に保管することを勧めます。
#### オプトアウトしたユーザーの UID は、暗号化された形でオプトアウトエンドポイントに送信されますか?
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-normalization-encoding.md b/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-normalization-encoding.md
index 27648d2a4..424e137fa 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-normalization-encoding.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/getting-started/gs-normalization-encoding.md
@@ -11,7 +11,7 @@ sidebar_position: 13
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/advertiser-dataprovider-guide.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/advertiser-dataprovider-guide.md
index 182980354..7873597b2 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/advertiser-dataprovider-guide.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/advertiser-dataprovider-guide.md
@@ -1,5 +1,6 @@
---
title: Advertiser/Data Provider Integration
+sidebar_label: Advertiser/Data Provider Integration Guide
description: ユーザーデータを収集し、それを他の UID2 参加者にプッシュする組織のためのインテグレーション手順。
hide_table_of_contents: false
sidebar_position: 07
@@ -11,7 +12,7 @@ sidebar_position: 07
## Introduction
このガイドでは、Client-Side または Server-Side SDK を使用せずにインテグレーションを行う場合に考慮する必要がある[基本的な手順](#integration-steps)を概説します。たとえば、ユーザーのログインとログアウトの実装方法、UID2 ID 情報の管理とターゲティング広告への使用方法、トークンのリフレッシュ、ID の欠落への対処、ユーザーのオプトアウトの処理方法などを決定する必要があります。[FAQ](#faqs)も参照してください。
+このガイドでは、Client-Side または Server-Side SDK を使用せずにインテグレーションを行う場合に考慮する必要がある[基本的な手順](#integration-steps)を概説しています。例えば、以下のような方法を決定する必要があります:
+
+- ユーザーログインとログアウトの実装方法
+- UID2 アイデンティティ情報を管理し、ターゲティング広告に使用する方法
+- UID2 Token をリフレッシュする方法
+- 紛失した ID の対処方法
+- ユーザーのオプトアウトを管理する方法
+
+[FAQ](#faqs)も参照してください。
+
パブリッシャーが UID2 とインテグレーションするために利用できるオプションは以下のとおりです:
- Client UID2 SDK for JavaScript ([UID2 SDK for JavaScript Reference Guide](../sdks/client-side-identity.md) を参照してください) と [UID2 SDK for Java](../sdks/uid2-sdk-ref-java.md) on the server.
@@ -30,57 +43,59 @@ sidebar_position: 03
- Server-only integration と [UID2 SDK for Java](../sdks/uid2-sdk-ref-java.md) または [UID2 SDK for Python](../sdks/uid2-sdk-ref-python.md) on the server.
- Server-only integration と custom server code.
-このドキュメントでは、最後の2つのオプションに関する情報を提供します。
+このガイドでは、最後の 2 つのオプションに関する情報を提供します。
-ワークフローを示す[アプリケーション例](https://example-srvonly-integ.uidapi.com/)はこちらです。アプリケーションのドキュメントは、[Server-Only UID2 Integration Example](https://github.com/IABTechLab/uid2-examples/blob/main/publisher/server_only/README.md)を参照してください。また、[FAQ](#faqs)も参照してください。
+ワークフローを示すサンプルアプリケーションもあります。[サンプルアプリケーション](#sample-application)を参照してください。
-> TIP: UID2 を使用してクライアントの identity を確立し、Advertising Token を取得するプロセスを容易にするには、UID2 SDK for JavaScript の使用を検討してください。詳細については、[UID2 SDK for JavaScript Integration Guide](publisher-client-side.md)を参照してください。
+> TIP: UID2 を使用してクライアントの identity を確立し、UID2 Token を取得するプロセスを容易にするには、UID2 SDK for JavaScript の使用を検討してください。詳細については、[UID2 SDK for JavaScript Integration Guide](publisher-client-side.md)を参照してください。
## Integration Steps
以下の図は、ユーザーがパブリッシャーと UID2 Token を確立するために必要なステップと、UID2 Token が RTB ビッドストリームとどのようにインテグレーションされるかを概説したものです。
-Server-Side SDK を使用している場合、SDK はエンドポイントに関連するすべてのステップを処理します。たとえば、Step 1-d では、発行者はユーザーの PII をトークン生成サービスに送信します。
+Server-Side SDK を使用している場合、SDK はエンドポイントに関連するすべてのステップを処理します。たとえば、Step 1-d では、発行者はユーザーの DII をトークン生成サービスに送信します。

次のセクションでは、図中の各ステップについて詳細を説明します:
-1. [Establish identity: user login](#establish-identity-user-login)
-2. [Bid using UID2 tokens](#bid-using-uid2-tokens)
-3. [Refresh tokens](#refresh-tokens)
-4. [Clear Identity: user logout](#clear-identity-user-logout)
+1. [Establish identity: user login](#establish-identity-user-login)
+2. [Bid using a UID2 token](#bid-using-a-uid2-token)
+3. [Refresh a UID2 token](#refresh-a-uid2-token)
+4. [Clear Identity: user logout](#clear-identity-user-logout)
### Establish Identity: User Login
-Step 1-c で認証が行われ、ユーザーに規約を受け入れてもらい、パブリッシャーがメールアドレスや電話番号を検証した後、サーバーサイドで UID2 Token を生成する必要があります。次の表は、トークン生成のステップの詳細を示しています。
+Step 1-c での認証(ユーザーの同意を得ること、パブリッシャーがユーザーのメールアドレスまたは電話番号を検証することを含む)の後、パブリッシャーはサーバーサイドで UID2 Token を生成するリクエストを送ることがでます。以下の表は、トークン生成ステップの詳細です。
| Step | Endpoint | Description |
| :--- | :---------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 1-d | [POST /token/generate](../endpoints/post-token-generate.md) | パブリッシャーが UID2 を使用してアイデンティティを確立するには、2 つの方法があります:
- UID2 対応のシングルサインオンプロバイダーとインテグレーションします。
- [POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを使って、ユーザーの正規化したメールアドレスまたは電話番号から UID2 Token を生成します。 |
-| 1-e | [POST /token/generate](../endpoints/post-token-generate.md) | ユーザーのメールアドレス、電話番号、またはそれぞれのハッシュから生成された UID2 Token を返します。 |
+| 1-e | [POST /token/generate](../endpoints/post-token-generate.md) | ユーザーのメールアドレス、電話番号、またはそれぞれのハッシュからと、Refresh Token などの関連値から生成された UID2 Token を返します。 |
| 1-f | N/A | 返された `advertising_token` と `refresh_token` は、ユーザーに紐づくストレージに保存します。ファーストパーティクッキーのようなクライアントサイドのストレージや、サーバーサイドのストレージを検討するとよいでしょう。 |
-### Bid Using UID2 Tokens
+### Bid Using a UID2 Token
-UID2 ID 情報をどのように管理し、ターゲティング広告に使用したいか、たとえば返された Advertising Token を SSP に渡すかについて検討する必要があります。
+UID2 ID 情報をどのように管理し、ターゲティング広告に使用したいかを検討する必要があります。例えば、返された UID2 token を SSP に渡す等。
| Step | Endpoint | Description |
| :--- | :------- | :-------------------------------------------------------------------------------------------------------------------------------- |
| 2-a | N/A | Step [1-e](#establish-identity-user-login) の `advertising_token` を入札のために SSP に送信します。そのままの値を送信します。 |
-### Refresh Tokens
+>NOTE: UID2 Token が SSP から DSP に送信されるとき、ビッドストリーム内でどのように見えるかの例については、[What does a UID2 token look like in the bid stream?](../getting-started/gs-faqs.md#what-does-a-uid2-token-look-like-in-the-bid-stream) を参照してください。
+
+### Refresh a UID2 Token
-リフレッシュエンドポイントを活用して、最新バージョンの UID2 Token を取得します。ユーザーの UID2 ローテーションとオプトアウトの状態を同期させるには、UID2 Token をリフレッシュする必要があります。ユーザーがオプトアウトした場合、その Refresh Token を使用すると、トークン更新チェーンが終了します。
+`POST /token/refresh` エンドポイントを使用して、常に有効で最新の UID2 Token を持つようにします。UID2 ローテーションと同期させるには、UID2 Token をリフレッシュする必要があります。さらに、トークンリフレッシュプロセスではユーザーのオプトアウトステータスをチェックし、ユーザーがオプトアウトしている場合は新しいトークンを送信しません。これによりトークンリフレッシュチェーンが終了します。その UID2 Token を二度と使用してはなりません。
| Step | Endpoint | Description |
| :--- | :-------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| 3-a | N/A | ユーザーがアセットに戻り、再びアクティブになったとき、ID トークンをリフレッシュしてから、SSP に送信します。 |
+| 3-a | N/A | ユーザーがアセットに戻り、再びアクティブになったとき、UID2 Token をリフレッシュしてから、SSP に送信します。 |
| 3-b | [POST /token/refresh](../endpoints/post-token-refresh.md) | Step [1-e](#establish-identity-user-login) で取得した `refresh_token` をクエリパラメータとして送信します。 |
| 3-c | [POST /token/refresh](../endpoints/post-token-refresh.md) | UID2 Service は、オプトアウトしていないユーザーに対して新しい ID トークンを発行します。 |
-| 3-d | N/A | 返された `advertising_token` と `refresh_token` は、ユーザーに紐づくストレージに保存します。ファーストパーティクッキーのようなクライアントサイドのストレージや、サーバーサイドのストレージを検討するとよいでしょう。 |
+| 3-d | N/A | `POST /token/refresh` エンドポイントから返される値、`advertising_token` と `refresh_token` を、ユーザーにリンクされるように配置します。ファーストパーティのクッキーのようなクライアントサイドのストレージか、サーバサイドのストレージを検討するとよいでしょう。 |
-> TIP: [POST /token/generate](../endpoints/post-token-generate.md) または [POST /token/refresh](../endpoints/post-token-refresh.md) コールによって返された ID の `refresh_from` タイムスタンプからトークンのリフレッシュを始めてください。
+> TIP: [POST /token/generate](../endpoints/post-token-generate.md) または [POST /token/refresh](../endpoints/post-token-refresh.md) エンドポイントによって返された ID の `refresh_from` タイムスタンプからトークンのリフレッシュを始めてください。
### Clear Identity: User Logout
@@ -89,8 +104,14 @@ UID2 ID 情報をどのように管理し、ターゲティング広告に使用
| 4-a | N/A | ユーザーがパブリッシャーアセットからログアウトしました。 |
| 4-b | N/A | そのユーザー用に保存してある UID2 Token を削除します。UID2 Service とのやりとりは必要ありません。 |
+## Sample Application
+
+A sample application is available for server-only integration. See:
+Server-only のインテグレーションの場合は、サンプル・アプリケーションをがあります:
+
+- [Server-Only UID2 Integration Example (sample application)](https://esp-srvonly-integ.uidapi.com/)
+- [Server-Only UID2 Integration Example (readme)](https://github.com/IABTechLab/uid2-examples/blob/main/publisher/server_only/README.md)
+
## FAQs
パブリッシャー向けのよくある質問は、[FAQs for Publishers](../getting-started/gs-faqs.md#faqs-for-publishers) を参照してください。
-
-すべてのリストは、[Frequently Asked Questions](../getting-started/gs-faqs.md)を参照してください。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/dsp-guide.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/dsp-guide.md
index caa3fe23d..32b1eb10f 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/dsp-guide.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/dsp-guide.md
@@ -1,5 +1,6 @@
---
title: DSP Integration
+sidebar_label: DSP Integration Guide
description: ビッドストリームで UID2 の取引を行う DSP のためのガイド。
hide_table_of_contents: false
sidebar_position: 05
@@ -7,36 +8,41 @@ sidebar_position: 05
# DSP Integration Guide
-このガイドは、ビッドストリームで UID2 の取引を行うDSPを対象としています。
+このガイドは、ビッドストリームで UID2 の取引を行う DSP を対象としています。
+
+DSP はビッドリクエストで UID2 Token を受け取り、この機能をサポートする Server-Side SDK のいずれかを使用して UID2 Token を復号化し、入札に使用できる raw UID2 を取得します。
+
+利用可能な Server-Side SDK の概要については、[SDKs - Summary](../sdks/summary-sdks.md) を参照してください。
+
+>NOTE: バックエンドが、利用可能な Server-Side SDK のいずれでもカバーされていない言語で書かれている場合は、UID2 の担当者に問い合わせてください。誰に聞けばいいかわからない場合は、[連絡先情報](../getting-started/gs-account-setup.md#contact-info) を参照してください。
+ * [FAQs](#faqs) -->
## Integration Steps
以下は、RTB で UID2 をサポートするための DSP のインテグレーションワークフローで、大きく 2 つのステップで構成されています:
-1. [Honor user Opt-Outs (ユーザーオプトアウトの受け入れ)](#honor-user-opt-outs)
-2. [Decrypt UID2 tokens to use in RTB (RTB で使用する UID2 Token の復号化)](#decrypt-uid2-tokens-for-rtb-use)
+1. [Honor user opt-outs](#honor-user-opt-outs)
+2. [Decrypt UID2 tokens for RTB use](#decrypt-uid2-tokens-for-rtb-use)

### Honor User Opt-Outs
-UID2 Service からのユーザーのオプトアウトを受け取り、それを受け入れるために、DSP はオンボーディング時に、あらかじめ設定されたインターフェースを UID2 Service に提供します。UID2 Service は、ユーザーの UID2 とオプトアウトのタイムスタンプを、事前に設定されたインターフェースに送信します。インターフェースの例としては、webhooks や API エンドポイントなどがあります。
+UID2 Service からユーザーのオプトアウトを受信して受け入れるために、DSP は事前に設定されたインターフェース(out-put Webhook/API endpoint)を確立し、オンボーディング中にUID2 Service に提供します。ユーザーがオプトアウトすると、UID2 Service はユーザーの raw UID2 と、対応するオプトアウトタイムスタンプを、事前に設定されたインターフェースに送信します。
UID2 Service は、ユーザーがオプトアウトしてから数秒以内に以下のデータを送信します。これを DSP が記録し、[Decrypt UID2 Tokens for RTB Use](#decrypt-uid2-tokens-for-rtb-use) で定義されている入札ロジックを使用するようにします。
| Parameter | Description |
| :---------- | :------------------------------------- |
-| `identity` | オプトアウトしたユーザーの UID2 です。 |
-| `timestamp` | ユーザーがオプトアウトした時刻です。 |
+| `identity` | オプトアウトしたユーザーの raw UID2 です。 |
+| `timestamp` | ユーザーがオプトアウトした時刻です。(情報のみ) |
-次の例は、UID2 とそれに対応するタイムスタンプを受信するように設定された Webhook を示しています。
+次の例は、raw UID2 とそれに対応するタイムスタンプを受信するように設定された Webhook を示しています。
```html
https://dsp.example.com/optout?user=%%identity%%&optouttime=%%timestamp%%
@@ -46,24 +52,18 @@ https://dsp.example.com/optout?user=%%identity%%&optouttime=%%timestamp%%
入札時 (2-b)に以下のロジックを使用し、ユーザーのオプトアウトを受け入れます。
-Server-Side SDK のいずれか([SDKs](../sdks/summary-sdks.md)を参照)を利用して、受信した UID2 Token を復号化します。応答には UID2 と UID2 が作成された時刻が含まれ、以下の疑似コードでは `established_timestamp`として表されます。DSP は UID2 の最新のオプトアウトタイムスタンプを確認する必要があります。
+Server-Side SDK のいずれか ([SDKs](../sdks/summary-sdks.md)を参照) を利用して、受信した UID2 Token を raw UID2 に復号します。decrypt関数への応答には、raw UID2 が含まれます。
オプトアウトのロジックを次の図に示します。

-`established_timestamp` の値が `optout_timestamp` の値より小さい場合、ユーザーはオプトアウトしているため、UID2はRTBに使用されるべきではありません。このような場合、入札のために代替 ID を送信するか、入札を行わないかは DSP 次第です。
-
-Check Opt-Out ステップのロジックは以下のとおりです。
-
-```java
-if (established_timestamp < optout_timestamp) {
- // Opted out
-}
-```
+ユーザーがオプトアウトして他場合、UID2 は RTB に使用されるべきではありません。このような場合、DSP は入札のために代替 ID を送信するか、入札しないことを選択できます。
### Decrypt UID2 Tokens for RTB Use
+以下の表は、[Integration Steps](#integration-steps) で示したワークフロー図の Step 2 の詳細です。
+
| Step | SDK | Description |
| :--- | :--------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 2-a | Server-side SDK ([SDKs](../sdks/summary-sdks.md)を参照) | 提供されている SDK を活用して、入力された UID2 Token を復号化します。レスポンスには `UID2` と UID2 の作成時刻が含まれます。 |
@@ -71,6 +71,4 @@ if (established_timestamp < optout_timestamp) {
## FAQs
-DSP に関するよくある質問は、[FAQs for Demand-Side Platforms (DSPs)](../getting-started/gs-faqs.md#faqs-for-demand-side-platforms-dsps) を参照してください。
-
-すべてのリストは、[Frequently Asked Questions](../getting-started/gs-faqs.md)を参照してください。
+DSP に関するよくある質問は、[FAQs for DSPs](../getting-started/gs-faqs.md#faqs-for-dsps) を参照してください。
\ No newline at end of file
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/google-ss-integration.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/google-ss-integration.md
index 414f68d92..24e7052cd 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/google-ss-integration.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/google-ss-integration.md
@@ -1,5 +1,7 @@
---
title: Google Ad Manager Secure Signals Integration
+sidebar_label: Google Ad Manager Secure Signals
+pagination_label: Google Ad Manager Secure Signals Integration
description: UID2 と Google Ad Manager **セキュアシグナル** 機能を使用するパブリッシャー向けのインテグレーション手順。
hide_table_of_contents: false
sidebar_position: 10
@@ -15,8 +17,8 @@ sidebar_position: 10
* [Allow Secure Signal Sharing](#allow-secure-signal-sharing)
* [Publisher Integrations](#publisher-integration)
* [Server-Only Integration](#server-only-integration)
-* [UID2 Client-Side JavaScript SDK Integration](#uid2-client-side-javascript-sdk-integration) -->
-
+* [UID2 SDK for JavaScript Client-Side Integration](#uid2-sdk-for-javascript-client-side-integration)
+* [Sample Applications](#sample-applications) -->
> NOTE: UID2 Google Ad Manager セキュアシグナルインテグレーションを使用するには、SDK を使用している場合、UID2 インテグレーションがすでに設定されている必要があります。サーバーのみのインテグレーションを使用している場合は、この限りではありません。使用可能なすべてのインテグレーションオプションの概要は、[UID2 Integration Guides](summary-guides.md)を参照してください。
@@ -71,11 +73,11 @@ window.getUid2AdvertisingToken = async () => {
詳しくは、[Server-Only UID2 Integration Guide](custom-publisher-integration.md) を参照してください。
-
+Server Only インテグレーションのためのサンプルアプリケーションも用意されています。[Sample Applications](#sample-applications)を参照してください。
-### UID2 Client-Side JavaScript SDK Integration
+### UID2 SDK for JavaScript Client-Side Integration
-Client-Side JavaScript SDK バージョン 3.0.0 以降を使用している場合、UID2 セキュアシグナルスクリプトは、SDK で提供される `getAdvertisingTokenAsync` 関数を使用して新しい Advertising Token を取得し、Google Ad Manager にそのトークンをプッシュします。
+UID2 SDK for JavaScript バージョン 3.0.0 以降を使用している場合、UID2 セキュアシグナルスクリプトは、SDKで提供されている `getAdvertisingTokenAsync` 関数を使用して新しい Advertising Token を取得し、そのトークンを Google Ad Manager にプッシュします。
このスクリプトは CDN でホストされており、GPT はセキュアシグナル機能で自動的にロードします。
@@ -83,10 +85,10 @@ Client-Side JavaScript SDK バージョン 3.0.0 以降を使用している場
-
+各サンプルアプリケーションには独自のインストラクションがあります。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/advertiser-flow-mermaid.png b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/advertiser-flow-mermaid.png
index eac082a99..dc67a92ce 100644
Binary files a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/advertiser-flow-mermaid.png and b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/advertiser-flow-mermaid.png differ
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/custom-publisher-flow-mermaid.png b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/custom-publisher-flow-mermaid.png
index ea48545d6..93c3f5344 100644
Binary files a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/custom-publisher-flow-mermaid.png and b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/custom-publisher-flow-mermaid.png differ
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/advertiser-flow-mermaid.md.bk b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/advertiser-flow-mermaid.md.bk
index 95097143d..d59073917 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/advertiser-flow-mermaid.md.bk
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/advertiser-flow-mermaid.md.bk
@@ -4,14 +4,14 @@
participant DSP
loop 1. IDマップエンドポイントを使用して、DIIのUID2を取得します。
DP->>UID2: 1-a. DIIを含むリクエストをIDマッピングエンドポイントに送信します。
- UID2->>DP: 1-b. ID マッピングサービスから返された UID2 とソルトバケットを格納します。
+ UID2->>DP: 1-b. ID マッピングサービスから返された raw UID2 とソルトバケットを格納します。
end
- DP-->>DSP: 2. 蓄積したUID2をDSPに送信し、オーディエンスを作成します。
+ DP-->>DSP: 2. 蓄積したraw UID2をDSPに送信し、オーディエンスを作成します。
loop 3. 蓄積されているUID2に関連するソルトバケットのローテーションを監視します。
- DP->>UID2: 3-a. バケットサービスを利用して、ソルトバケットのローテーションを監視します。
- UID2->>DP: 3-b. 指定されたタイムスタンプ以降にローテーションされたソルトバケットを返します。
- DP->>UID2: 3-c. ローテーションしたソルトバケットと保存されているUID2ソルトバケットを比較します。
ローテーションした場合は、新しいUID2のためにDIIをIDマッピングサービスに再送信します。
- UID2->>DP: 3-d. ID マッピングサービスから返された UID2 とソルトバケットを保存します。
+ DP->>UID2: 3-a. バケットサービスを利用して、ソルトバケットのローテーションを返します。
+ UID2->>DP: 3-b. 指定されたタイムスタンプ以降にローテーションしたソルトバケットを返します。
+ DP->>UID2: 3-c. ローテーションしたソルトバケットと保存されているUID2ソルトバケットを比較します。
ローテーションした場合は、新しいraw UID2のためにDIIをIDマッピングサービスに再送信します。
+ UID2->>DP: 3-d. ID マッピングサービスから返された raw UID2 とソルトバケットを保存します。
end
-
+
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/custom-publisher-flow-mermaid.md.bk b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/custom-publisher-flow-mermaid.md.bk
index 947528c24..4197082d5 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/custom-publisher-flow-mermaid.md.bk
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/images/resource/custom-publisher-flow-mermaid.md.bk
@@ -31,10 +31,10 @@
Note over U,SSP: 3. トークンのリフレッシュ
U->>P: 3-a. ユーザーがパブリッシャーアセットに戻ります。
activate P
- P->>UID2: 3-b. パブリッシャーは Refresh Token を使って、ユーザーの新しいアイデンティティトークンを要求します。
+ P->>UID2: 3-b. パブリッシャーは Refresh Token を使って、ユーザーの新しい UID2 Token を要求します。
deactivate P
activate UID2
- UID2->>P: 3-c. ユーザーがオプトアウトしていない場合、Refresh Token Service は新しいアイデンティティトークンを返します。
+ UID2->>P: 3-c. ユーザーがオプトアウトしていない場合、Refresh Token Service は新しい UID2 Token を返します。
deactivate UID2
activate P
P->>U: 3-d. パブリッシャーはユーザーの新しい UID2 を設定します。
@@ -43,8 +43,8 @@
Note over U,SSP: 4. ユーザーログアウト
U->>P: 4-a. ユーザーがパブリッシャーアセットからログアウトしました。
activate P
- P->>U: 4-b. ユーザーのIDをクリアします。
+ P->>U: 4-b. ユーザーの UID2 Token をクリアします。
deactivate P
-
+
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/integration-prebid.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/integration-prebid.md
index 0c1c268f8..be31c7ab6 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/integration-prebid.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/integration-prebid.md
@@ -1,8 +1,8 @@
---
-title: Prebid.js Integration
-sidebar_label: Prebid.js
-pagination_label: Prebid.js Integration
-description: Information about integrating with Prebid.js as part of your UID2 implementation.
+title: Prebid Integration
+sidebar_label: Prebid
+pagination_label: Prebid Integration
+description: UID2 実装のため、Prebid とのインテグレーションに関する情報。
hide_table_of_contents: false
sidebar_position: 04
---
@@ -11,10 +11,24 @@ sidebar_position: 04
This guide is for publishers who want to integrate with UID2 and generate [UID2 tokens](../ref-info/glossary-uid.md#gl-uid2-token) (advertising tokens) to be passed by Prebid.js in the RTB bid stream.
-This guide does not apply to publishers who want to use a [private operator](../ref-info/glossary-uid.md#gl-private-operator), or want to generate tokens server-side.
-Those publishers should follow the [Prebid.js Advanced Integration Guide](./integration-prebid-advanced.md).
-
-UID2 provides a [Prebid.js module](https://docs.prebid.org/dev-docs/modules/userid-submodules/unified2.html) with the following features:
+
+
+このガイドは、UID2 と直接インテグレーションし、RTB ビッドストリームで Prebid から渡される [UID2 Token](../ref-info/glossary-uid.md#gl-uid2-token)(Advertising Token) を生成したいパブリッシャー向けのものです。
+
+UID2 との直接インテグレーションを行い、ヘッダービディングに Prebid を使用する場合に考慮すべき基本的なステップの概要を説明します。
- UID2 token generation
- Automatic refreshing of UID2 tokens
@@ -29,7 +43,22 @@ You'll need to complete the following steps:
2. [Add Prebid.js to your site](#add-prebidjs-to-your-site)
3. [Configure the UID2 module](#configure-the-uid2-module)
-## Prebid.js Version
+Prebid と UID2 とのインテグレーションに関する情報は、こちらにあります:
+- Prebid サイトの Prebid User ID サブモジュールの [Unified ID 2.0](https://docs.prebid.org/dev-docs/modules/userid-submodules/unified2.html) ページ。
+- Prebid の GitHub リポジトリの [UID2 User ID Submodule](https://github.com/prebid/Prebid.js/blob/master/modules/uid2IdSystem.md) ページ。
+
+## Integration Steps
+
+大まかには、Prebid を使って UID2 とインテグレーションするには、以下の手順を完了する必要があります。
+
+| Step | Action | Link to Instructions |
+| --- | --- | --- |
+| 1 | UID2 Token を生成するために、サーバーサイド API を呼び出します。| [Generate UID2 Token](#generate-uid2-token) |
+| 2 | レスポンス値を保存し、必要に応じて Prebid モジュールがトークンのリフレッシュとオプトアウトを管理できるようにします。 | [Client Refresh Mode](#client-refresh-mode) |
+
+## Generate UID2 Token
+
+UID2 では、初期トークンをサーバーサイドで生成する必要があります。これを行うには、[POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを呼び出して新しい UID2 Token を生成します。
This implementation requires Prebid.js version 8.21.0 or later. For version information, see [https://github.com/prebid/Prebid.js/releases](https://github.com/prebid/Prebid.js/releases).
@@ -39,13 +68,23 @@ Complete the UID2 account setup by following the steps described in the [Account
When account setup is complete, you'll receive a **public key** and **subscription ID**. These values are unique to you, and you'll use them to configure the UID2 module.
-:::tip
-Only root-level domains are required for account setup. For example, if you're going to use UID2 with Prebid.js on example.com, shop.example.com, and example.org, you only need to provide the domain names example.com and example.org.
-:::
+該当するエンドポイントからの完全な JSON レスポンスボディを Prebid モジュールに提供する必要があります:
+
+- 新しい UID2 Token を取得するには、[POST /token/generate](../endpoints/post-token-generate.md)。
+- リフレッシュされた UID2 Token については、[POST /token/refresh](../endpoints/post-token-refresh.md)。
+
+例については、[Sample Token](#sample-token) を参照してください。
-## Add Prebid.js to Your Site
+Refresh Token が有効である限り、モジュールは必要に応じて UID2 Token をリフレッシュします。
-To add Prebid.js to your site, follow the [Prebid.js documentation](https://docs.prebid.org/dev-docs/getting-started.html). Be sure to use Prebid.js version 8.21.0 or later.
+### Response Storage Options
+
+Client Refresh モードを使用するようにモジュールを構成する場合、API レスポンス情報を保存するための以下のオプションの **1つ** を選択する必要があります。
+
+| Option | Details | Use Case |
+| --- | --- | --- |
+| レスポンスボディを JSON 文字列として含むクッキーの名前を `params.uid2Cookie` に設定します。 | [Client Refresh Cookie Example](#client-refresh-cookie-example) を参照してください。 | レスポンスボディを保存するのに十分な容量がクッキーに残っていることを確認しない限り、このオプションを選択しないでください。 |
+| `params.uid2Token` を JavaScript オブジェクトとしてレスポンスボディに設定します。 | [Client Refresh uid2Token Example](#client-refresh-uid2token-example) を参照してください。 | 以下の様な場合は、レスポンスボディを `params.uid2Token` 経由で提供することもできます:
- クッキーにレスポンスボディを保存すると、クッキーのサイズ制限を超える場合。
- レスポンスボディの保存を自分で管理する柔軟性を持ちたい場合。 |
When you download the Prebid.js package, add the UID2 module by checking the box next to the module named **Unified ID 2.0**, listed under the section **User ID Modules**.
@@ -226,7 +265,9 @@ For additional help, refer to Prebid's documentation on [Troubleshooting Prebid.
## Optional: Reduce Latency by Setting the API Base URL
-By default, the UID2 module makes API calls to a UID2 server in the USA. Depending on where your users are based, you might consider choosing a server closer to your users in order to reduce latency.
+- UID Token が SSP から DSP に送信される際、ビッドストリームでどのように見えるかの例については、[What does a UID2 token look like in the bid stream?](../getting-started/gs-faqs.md#what-does-a-uid2-token-look-like-in-the-bid-stream) を参照してください。
+
+## Configuration Parameters for `usersync`
To specify a different UID2 server when you're configuring the UID2 module, set the optional `params.uid2ApiBase` parameter, as shown in the following example:
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-android.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-android.md
index 03412068e..9ae4c2345 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-android.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-android.md
@@ -1,33 +1,33 @@
---
title: UID2 IMA Plugin for Android
-description: A guide for publishers using GIA for ad requests on Android apps.
+description: Android アプリの広告リクエストに IMA を使用するパブリッシャー向けのガイドです。
hide_table_of_contents: false
sidebar_position: 14
---
# UID2 IMA Plugin for Android Integration Guide
-The UID2 Interactive Media Ads (IMA) Plugin for Android enables publishers that use the [Google IMA SDK for Android](https://developers.google.com/interactive-media-ads/docs/sdks/android/client-side) to send [UID2 tokens](../ref-info/glossary-uid.md#gl-uid2-token) as [secure signals](https://support.google.com/admob/answer/11556288) in ad requests from Android apps. This is done automatically, with no direct coding needed from the app developer.
+UID2 Interactive Media Ads (IMA) Plugin for Android は、[Google Interactive Media Ads (IMA) SDK for Android](https://developers.google.com/interactive-media-ads/docs/sdks/android/client-side) を使用するパブリッシャーが、Android アプリからの広告リクエストで [UID2 Token](../ref-info/glossary-uid.md#gl-uid2-token) を [Secure Signal](https://support.google.com/admob/answer/11556288) として送信できるようにします。これは自動的に行われるため、アプリ開発者が直接コーディングする必要はありません。
## Functionality
-This plugin simplifies integration with Google Interactive Media Ads (IMA) for any publishers who want to support UID2 for apps running on Android devices.
+このプラグインは、Android 端末で動作するアプリの UID2 をサポートしたいパブリッシャー向けに、Google Interactive Media Ads(IMA)とのインテグレーションを簡素化します。
## Version
-This documentation is for the UID2 IMA Plugin for Android version 0.5.0 and later.
+このドキュメントは、UID2 IMA Plugin for Android version 0.5.0 以降用です。
## GitHub Repository
-This plugin is in the following open-source GitHub repository:
+このプラグインは以下のオープンソースの GitHub リポジトリにあります:
- [https://github.com/IABTechLab/uid2-android-sdk/tree/main/securesignals-ima](https://github.com/IABTechLab/uid2-android-sdk/tree/main/securesignals-ima)
## Requirements
-To run this plugin, install the following:
+このプラグインを実行するには、以下をインストールします:
1. Google IMA SDK v3.30.3:
- [SDK](https://developers.google.com/interactive-media-ads/docs/sdks/android/client-side)
@@ -39,16 +39,16 @@ To run this plugin, install the following:
## Installation
-Prerequisite: Install the Google Interactive Media Ads SDK and the UID2 Android SDK.
+前提条件: Google Interactive Media Ads SDKとUID2 Android SDK をインストールします。
-Install the UID2 Android IMA Plugin to an existing app with the UID2 Android SDK and Google IMA SDK installed. There are two installation options:
+UID2 Android SDK と Google IMA SDK がインストールされている既存のアプリに、UID2 Android IMA Plugin をインストールします。インストールオプションは2つあります:
- [Gradle](#gradle)
- [Maven](#maven)
### Gradle
-To install with Gradle, add the SDK as a dependency in the `build.gradle` file:
+Gradle でインストールするには、`build.gradle` ファイルに依存関係として SDK を追加します:
``` javascript
implementation 'com.uid2:uid2-android-sdk-ima:0.5.0'
@@ -56,7 +56,7 @@ implementation 'com.uid2:uid2-android-sdk-ima:0.5.0'
### Maven
-To install with Maven, add the SDK as a dependency in the `pom.xml` file:
+Maven でインストールするには、`pom.xml` ファイルに依存関係として SDK を追加します:
``` xml
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-ios.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-ios.md
index b6b365122..afa3d512f 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-ios.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/mobile-plugin-ima-ios.md
@@ -1,33 +1,33 @@
---
title: UID2 IMA Plugin for iOS
-description: A guide for publishers using IMA for ad requests on iOS apps.
+description: iOS アプリの広告リクエストに IMA を使用するパブリッシャー向けのガイド。
hide_table_of_contents: false
sidebar_position: 15
---
# UID2 IMA Plugin for iOS Integration Guide
-The UID2 Interactive Media Ads (IMA) Plugin for iOS enables publishers that use the [Google IMA SDK for iOS](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side) to send [UID2 tokens](../ref-info/glossary-uid.md#gl-uid2-token) as [secure signals](https://support.google.com/admob/answer/11556288) in ad requests from iOS apps. This is done automatically, with no direct coding needed from the app developer.
+UID2 Interactive Media Ads (IMA) Plugin for iOS は、[Google Interactive Media Ads SDK for iOS](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side) を使用するパブリッシャーが、iOS アプリからの広告リクエストで [UID2 Token](../ref-info/glossary-uid.md#gl-uid2-token) を [Secure Signal](https://support.google.com/admob/answer/11556288) として送信できるようにします。これは自動的に行われるため、アプリ開発者が直接コーディングする必要はありません。
## Functionality
-This plugin simplifies integration with Google Interactive Media Ads (IMA) for any publishers who want to support UID2 for apps running on iOS devices.
+このプラグインは、iOS デバイス上で動作するアプリの UID2 をサポートしたいパブリッシャー向けに、Google Interactive Media Ads(IMA)とのインテグレーションを簡素化します。
## Version
-This documentation is for the UID2 IMA Plugin for iOS version 0.2.0.
+このドキュメントはUID2 IMA Plugin for iOS version 0.2.0 用です。
## GitHub Repository
-This plugin is in the following open-source GitHub repository:
+このプラグインは以下のオープンソースの GitHub リポジトリにあります:
- [https://github.com/IABTechLab/uid2-ios-plugin-google-ima](https://github.com/IABTechLab/uid2-ios-plugin-google-ima)
## Requirements
-To run this plugin, install the following:
+このプラグインを実行するには、以下をインストールします:
1. Google IMA SDK v3.19.1 or later:
- [SDK](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side)
@@ -39,9 +39,9 @@ To run this plugin, install the following:
## Installation
-Prerequisite: Install the Google Interactive Media Ads SDK and the UID2 iOS SDK.
+前提条件: Google Interactive Media Ads SDK と UID2 iOS SDK をインストールします。
-Install the UID2 iOS IMA Plugin v0.2.0 via Swift Package Manager to an existing app with the UID2 iOS SDK and the Google Interactive Media Ads SDK installed.
+UID2 iOS SDK と Google Interactive Media Ads SDK がインストールされている既存のアプリに、Swift Package Manager 経由で UID2 iOS IMA Plugin v0.2.0 をインストールします。
```
.package(url: https://github.com/IABTechLab/uid2-ios-plugin-google-ima.git, exact: "0.2.0")
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-aws-marketplace.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-aws-marketplace.md
index de96a1eb7..b539dae43 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-aws-marketplace.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-aws-marketplace.md
@@ -1,8 +1,8 @@
---
-title: UID2 Private Operator for AWS Integration Guide
+title: UID2 Operator - AWS Marketplace Integration
sidebar_label: AWS Marketplace
-pagination_label: UID2 Private Operator for AWS Integration Guide
-description: AWS Marketplace Private Operator のインテグレーション情報。
+pagination_label: UID2 Operator - AWS Marketplace Integration
+description: AWS の Private Operator インテグレーション情報。
hide_table_of_contents: false
sidebar_position: 17
---
@@ -144,7 +144,7 @@ AWS で 1 つまたは複数の UID2 Operator をサブスクライブしてデ
| Port Number | Direction | Protocol | Description |
| ----------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| 80 | Inbound | HTTP | Healthcheck エンドポイント `/opt/healthcheck` を含むすべての UID2 API を提供します。
すべてが稼働している場合、エンドポイントは HTTP 200 を返し、レスポンスボディは `OK` となります。詳しくは、[Checking UID2 Operator Status](#checking-uid2-operator-status) を参照してください。 |
+| 80 | Inbound | HTTP | Healthcheck エンドポイント `/ops/healthcheck` を含むすべての UID2 API を提供します。
すべてが稼働している場合、エンドポイントは HTTP 200 を返し、レスポンスボディは `OK` となります。詳しくは、[Checking UID2 Operator Status](#checking-uid2-operator-status) を参照してください。 |
| 9080 | Inbound | HTTP | Prometheus metrics サービス (`/metrics`). |
| 443 | Outbound | HTTPS | UID2 Core Service を呼び出し、オプトアウトデータとキーストアを更新します。 |
@@ -195,31 +195,19 @@ UID2 Operator を AWS Marketplace をデプロイするには、次の手順を
### Stack Configuration Options
-以下は、スタック作成ウィザード ([デプロイ](#deployment) Step 6)の [スタックオプションの設定](#stack-configuration-options) ページのスクリーンショットです。
+次の図は、スタックの作成ウィザード ([Deployment](#deployment) Step 6)の**スタックオプションの設定**ページを示しています。

-次の表は、[デプロイ](#deployment) の Step 6 で指定するパラメータ値について説明したものです。
+次の表は、[Deployment](#deployment) の Step 6 で指定するパラメータ値について説明したものです。
| Parameter | Description |
| :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Tags | (オプション) スタックにタグをつけます。 |
-| Permissions | AWS Marketplace に登録する IAM ロールとスタックをデプロイする IAM ロールが分かれている場合、スタックをデプロイするために使用するロールの名前/ARN を入力します。 |
-| Stack failure options | デプロイメントに失敗したときの処理を選択します。`すべてのスタックリソースをロールバックする`オプションを推奨します。 |
+| Permissions | AWS Marketplace にサブスクライブする IAM ロールとスタックをデプロイする IAM ロールが分かれている場合、スタックをデプロイするために使用するロールの名前/ARN を入力します。 |
+| Stack failure options | デプロイメントに失敗したときの処理を選択します。`Roll back all stack resources (すべてのスタックリソースをロールバックする)` オプションを推奨します。 |
| Advanced options | これらはオプションです。 |
-### Stack Configuration Options
-
-次の画像は、スタックの作成ウィザード ([デプロイメント](#deployment) Step 6)の**スタックオプションの設定**ページを示しています。
-
-
-
-| Parameter | Description |
-| :--------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| Tags | (Optional) Tag your stack. |
-| Permissions | AWS Marketplace に加入する IAM ロールとスタックをデプロイする IAM ロールが分かれている場合、スタックのデプロイに使用するロールの名前/ARN を入力してください。 |
-| Advanced options | これらはオプションです。 |
-
## Checking UID2 Operator Status
EC2 インスタンスを見つけるには、次の手順を実行します:
@@ -235,7 +223,7 @@ EC2 インスタンスを見つけるには、次の手順を実行します:
ロードバランサーとターゲットオペレーターのオートスケーリンググループを作成するには、次の手順を実行します:
-1. AWS コンソールで、EC2 ダッシュボードに移動し、`Load Balancer` を検索する。
+1. AWS コンソールで、EC2 ダッシュボードに移動し、`Load Balancer` を検索します。
2. **Create Load Balancer** をクリックします。
3. ロードバランサータイプのページで、**Application Load Balancer** のセクションで、**Create** をクリックします。
4. UID2 **Load balancer name** を入力し、パブリックインターネットから UID2 API にアクセスする必要があるかどうかに応じて、**Internet-facing** または **Internal** スキームを選択します。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-azure-enclave.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-azure-enclave.md
index 88ee07c1f..e9157b86a 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-azure-enclave.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-guide-azure-enclave.md
@@ -1,13 +1,13 @@
---
-title: UID2 Private Operator for Azure Integration Guide
+title: UID2 Operator - Microsoft Azure Confidential Compute Operator Package
sidebar_label: Microsoft Azure
-pagination_label: UID2 Private Operator for Azure Integration Guide
-description: Microsoft Azure Private Operator のインテグレーション情報。
+pagination_label: UID2 Operator - Microsoft Azure Confidential Compute Operator Package
+description: Microsoft Azure Private Operator インテグレーション情報。
hide_table_of_contents: false
sidebar_position: 18
---
-# UID2 Private Operator for Azure Integration Guide
+# UID2 Operator—Microsoft Azure Confidential Compute Operator Package
>IMPORTANT: このドキュメントは現在、PoC の段階です。詳細は、UID2 Administrator に [連絡](../getting-started/gs-account-setup.md#contact-info) してください。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-private-gcp-confidential-space.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-private-gcp-confidential-space.md
index 788e4c082..25a9d7520 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-private-gcp-confidential-space.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/operator-private-gcp-confidential-space.md
@@ -1,486 +1,206 @@
---
-title: UID2 Private Operator for GCP Integration Guide
-sidebar_label: GCP Confidential Space
-pagination_label: UID2 Private Operator for GCP Integration Guide
-description: Integration information for Private Operator in GCP.
+title: UID2 Operator - Google Cloud Platform Confidential Computing Package
+sidebar_label: Google Cloud Platform
+pagination_label: UID2 Operator - Google Cloud Platform Confidential Computing Package
+description: Google Cloud Platform Private Operator のインテグレーション情報。
hide_table_of_contents: false
-sidebar_position: 18
+sidebar_position: 20
---
-# UID2 Private Operator for GCP Integration Guide
+# UID2 Operator - Google Cloud Platform Confidential Computing Package
-This guide provides information for setting up the UID2 Operator Service in [Confidential Space](https://cloud.google.com/confidential-computing#confidential-space), a confidential computing option from [Google Cloud](https://cloud.google.com/docs/overview/) Platform. Confidential Space offers a secure enclave environment, known as a Trusted Execution Environment (TEE).
+本ガイドでは、[Google Cloud](https://cloud.google.com/docs/overview/) Platform のセキュアなエンクレーブで UID2 Operator Service を設定するための情報を提供します。
->NOTE: The UID2 Private Operator implementation for GCP Confidential Space is not supported in these areas: Europe, China.
+
-When the Docker container for the UID2 Operator Confidential Space starts up, it completes the attestation process that allows the UID2 Core Service to verify the authenticity of the Operator Service and the enclave environment that the Operator Service is running in.
+## Overview
-When the attestation is successful, the UID2 Core Service provides seed information such as salts and keys to bootstrap the UID2 Operator in the secure Confidential Space container.
+UID2 Operator サービスは、Google Cloud Platform の[Confidential VM](https://cloud.google.com/compute/confidential-vm/docs/about-cvm)と呼ばれる Compute Engine の仮想マシン (VM)内で実行できます。これは、トラステッド・コンピューティング・エンクレーブです。
-## Setup Overview
+エンクレーブは、[Container-Optimized OS](https://cloud.google.com/container-optimized-os/docs) ブートディスクを使用する必要があり、提供される [cloud-init](https://cloudinit.readthedocs.io/) config によりカスタマイズできます。
-At a high level, the setup steps are as follows:
+`cloud-init` config は以下を行います:
-1. Create your Confidential Space and UID2 Operator accounts and get, or create, the various values that you'll need for configuration and deployment: see [Prerequisites](#prerequisites).
-1. Review information about [deployment environments](#deployment-environments).
+1. VM へのリモート SSH アクセスを無効化し、UID2 トラフィックの in/out のみを許可します。
+2. `systemd` サービスを作成し、以下の処理を行います:
+ 1. UID2 プロジェクトの Docker レジストリから、`docker pull`を使って、GitHub (ghcr.io)の UID2 Operator 認定 Docker イメージを取り込みます。
+ 2. コンテナを起動します。
- Best practice is to deploy in the integration environment first, and then the production environment.
-1. Review information about the [deployment options](#deployment-options) available, including the benefits of each, and decide which to use.
+UID2 Operator の Docker コンテナが起動すると、次のような処理が行われます:
- We recommend the Terraform template option.
-1. Follow the applicable instructions for the deployment option you chose, out of the following:
- - [Terraform Template](#deployterraform-template)
- - [gcloud CLI](#deploygcloud-cli)
+1. [instance identity token](https://cloud.google.com/compute/docs/instances/verifying-instance-identity)を取得します。これは、実行中の VM インスタンスの詳細と Google の RS256 署名を含む一意の JSON Web Token(JWT)です。
+2. instance identity token と、`cloud-init` config で指定した UID2 `api_token` を、UID2 Core Service に認証リクエストとして送ります。
-When all steps are complete, your implementation should be up and running.
+UID2 Core Service は認証リクエストを受信すると、`api_token`と instance identity token を検証します。オペレーターの認証プロセスの一環として、UID2 Core Service は GCP API コールを送信し、起動ディスク、`cloud-init` config、監査ログなど、VM インスタンスのメタデータを取得します。
-## Prerequisites
+認証に成功すると、UID2 Core Service は UID2 Operator Service を起動するために、Salt や Key などのシード情報を提供します。
-Before setting up your UID2 Operator Service in the Google Cloud Platform using Confidential Space, complete these prerequisite steps:
+## Build
-- [Confidential Space Account Setup](#confidential-space-account-setup)
-- [UID2 Operator Account Setup](#uid2-operator-account-setup)
-
-### Confidential Space Account Setup
-
-You can run the UID2 Operator Service on any GCP account and project. However, to support attestation, you'll need to create a service account that you can use to run Confidential Space virtual machines (VMs).
-
-Before choosing your deployment option, complete these Google Cloud setup steps:
-
-1. Create the GCP project that you want the UID2 Operator to run in. We recommend creating a new project for the UID2 Operator Service, but you could also use an existing one. Follow these guidelines:
-
- - Choose a project name; for example, `UID2-Operator-Production`. You'll use this as the `{PROJECT_ID}` value in later steps.
- - Make sure that you define a GCP project with billing enabled.
-
-1. Choose a name for the GCP service account that you'll use to run Confidential Space VMs; for example, `uid2-operator`. You'll use this as the `{SERVICE_ACCOUNT_NAME}` value in later steps.
-
-1. Install the gcloud CLI, required by both deployment options. Follow the instructions provided by Google: [Install the gcloud CLI](https://cloud.google.com/sdk/docs/install).
-
-### UID2 Operator Account Setup
-Ask your UID2 contact to register your organization as a UID2 Operator. If you're not sure who to ask, see [Contact Info](../getting-started/gs-account-setup.md#contact-info).
-
->TIP: It's a good idea to set up an internal email distribution list of individuals who should be kept informed about new versions and any other technical notifications or requests, and provide that as the email contact.
-
-When the registration process is complete, you'll receive the following:
-
-| Item | Description |
-| :--- | :--- |
-| `{OPERATOR_IMAGE}` | The Docker image URL for the UID2 Private Operator for GCP, used in configuration. The following example is fictitious, but shows what the Docker image URL might look like: `https://console.cloud.google.com/artifacts/docker/uid2-prod-project/us/iabtechlab/uid2-operator/sha256:2e4fae98b688002303c6263f7c4bf95344a1d9c15fb5fcf838b59032bb9813f2`. Use the image URL provided to you as part of account setup.
NOTE: The image is valid for both deployment environments. |
-| `{OPERATOR_KEY}` | An operator key, exclusive to you, that identifies you with the UID2 service as a private operator. Use this as the `OPERATOR_KEY` value during configuration. This value is both your unique identifier and a password; store it securely and do not share it.
NOTE: You'll receive a separate operator key for each deployment environment. |
-| Instructions | Additional information details, such as instructions for setting up VMs or a link to the applicable information. |
-
-When UID2 account registration is complete, and you've installed the gcloud CLI, your next steps are:
-- Review information about [deployment environments](#deployment-environments).
-- Review information about the [deployment options](#deployment-options) available, including the benefits of each, and decide which to use.
-
-## Deployment Environments
-
-The following environments are available, and both [deployment options](#deployment-options) support both environments.
-
-As a best practice, we recommend that you test and verify your implementation in the integration environment before deploying in the production environment.
-
->NOTE: You'll receive separate `{OPERATOR_KEY}` values for each environment. Be sure to use the correct one. The `{OPERATOR_IMAGE}` value is the same for both environments.
-
-| Environment | Details |
-| :--- | :--- |
-| Integration (`integ`) | For testing only. Debug mode is available in the integration environment. |
-| Production (`prod`) | For managing production traffic. For this environment, we recommend deploying via the Terraform template, with load balancing, and with HTTPS enabled. See [Deployment Options](#deployment-options). |
-
-## Deployment Options
-
-There are two deployment options:
-
-| Option | Details |
-| :--- | :--- |
-| [Terraform template](#deployterraform-template) | This option:- Does not require manually setting up a service account. The setup is very simple.
- Brings up a whole stack with a load balancer and a scaling group.
- Is easier to maintain and operate than the `gcloud` option.
- Is very simple to upgrade.
- Is the recommended deployment solution.
|
-| [gcloud CLI](#deploygcloud-cli) | This option:- Brings up one VM instance with a public IP address.
- Can be easier for quick experimentation/evaluation.
- For multiple instances, requires bringing up each instance manually, by running the command multiple times.
- Requires setting up the load balancer manually.
- Is more complex to upgrade, since more manual steps are needed.
|
-
-Both deployment options support both deployment environments.
-
-To determine your next steps, choose the deployment option you want to use. Then, follow the applicable instructions:
-- [Deploy—Terraform Template](#deployterraform-template)
-- [Deploy—gcloud CLI](#deploygcloud-cli)
-
-### Deploy—Terraform Template
-
-For ease of deployment and upgrade, you can use a Terraform template to deploy a UID2 Private Operator implementation with load balancing and auto-scaling features. In this scenario, all VM instances run on Confidential Space VMs, and are deployed in multiple availability zones (AZs).
-
-The Terraform template does the following:
-- Activates the required Google Cloud Platform APIs.
-- Sets up a service account to run Confidential Space VMs.
-- Creates a secret to hold the `operator_key` value.
-- Creates the following components:
- - Network: VPC and subnetwork.
- - Instances: Instance template, instance groups (with auto-scaling enabled).
- - Ingress: Load balancer (with health check), forwarding rules, and firewall rules.
- - Egress: [Cloud Network Address Translation (NAT)](https://cloud.google.com/nat/docs/overview).
-- If HTTPS is enabled, provides your HTTPS certificate to Terraform.
-
->NOTE: The Terraform template uses the gcloud CLI that you installed in [Confidential Space Account Setup](#confidential-space-account-setup) Step 3.
-
-To deploy a new UID2 Operator in the GCP Confidential Space Enclave, using the Terraform template, follow these steps:
-
-1. [Install Terraform](#install-terraform)
-1. [Set Up the Terraform Environment](#set-up-the-terraform-environment)
-1. [Download the Template Files](#download-the-template-files)
-1. [Provide Input Values](#provide-input-values)
-1. [Run Terraform](#run-terraform)
-1. [Test Terraform Using the Health Check Endpoint](#test-terraform-using-the-health-check-endpoint)
-
-For additional information, see:
-- [Delete All Created Resources](#delete-all-created-resources)
-- [Outputs](#outputs)
-
-#### Install Terraform
-
-Install Terraform if it is not already installed: visit [terraform.io](https://www.terraform.io/).
-
-#### Set Up the Terraform Environment
-
-1. Create a new project or select an existing one, replacing the `{PROJECT_ID}` placeholder with your own project ID (see [Confidential Space Account Setup](#confidential-space-account-setup)):
-
- ```
- gcloud config set project {PROJECT_ID}
- ```
-
-2. Configure the environment for Terraform:
-
- ```
- gcloud auth application-default login
- ```
-
-#### Download the Template Files
-
-Follow the instructions you receive when your registration process is complete (see [UID2 Operator Account Setup](#uid2-operator-account-setup)) to download the template files listed in the following table.
-
-| File | Details |
-| :--- | :--- |
-| `main.tf` | The Terraform template file. |
-| `variables.tf` | Contains the definitions for the template input variables, including name, type, and default value. |
-| `outputs.tf` | Includes output definitions. |
-| `terraform.tfvars` | Contains the values for the template input variables. |
-
-#### Provide Input Values
-
-Provide values for the input parameters, as needed, in the `terraform.tfvars` file that you downloaded. Some are required, others are optional.
-
-1. Provide values for the required input parameters shown in the following table:
-
- | Name | Type | Default | Required | Description |
- | :--- | :--- | :--- | :--- | :--- |
- | `project_id` | `string` | n/a | yes | The ID of the GCP project that you want the UID2 Operator to run in; for example, `UID2-Operator-Production`. |
- | `service_account_name` | `string` | n/a | yes | The name of the service account that you want to use for your UID2 Operator instance in GCP Confidential Space. |
- | `uid_operator_image` | `string` | n/a | yes | The Docker image URL for the UID2 Private Operator for GCP, used in configuration, which you received as part of [UID2 Operator Account Setup](#uid2-operator-account-setup). For example: `us-docker.pkg.dev/uid2-prod-project/iabtechlab/uid2-operator@sha256:{IMAGE_SHA}`. |
- | `uid_operator_key` | `string` | n/a | yes | The UID2 operator key, which you received as part of [UID2 Operator Account Setup](#uid2-operator-account-setup). |
- | `uid_deployment_env` | `string` | `integ` | yes | Valid values: `integ` for integration environment, `prod` for production environment.
Machine type is determined by the deployment environment: `integ` uses `n2d-standard-2` and `prod` uses `n2d-standard-16`. |
-
-1. (Optional, strongly recommended) Set the load balancer to HTTPS. Provide values for the parameters shown in the following table:
-
- | Name | Type | Default | Required | Description |
- | :--- | :--- | :--- | :--- | :--- |
- | `ssl` | `bool` | `false`| no | To set the load balancer to use HTTPS, which is recommended, set this flag to `true`.
If you're using HTTPS you must also specify values for the `certificate` and `private_key` parameters. |
- | `certificate` | `string` | n/a | no | The contents of the HTTPS certificate. The certificate should be in PEM format.
For example: `file('path/to/certificate.pem')`.
Required if `ssl` is set to `true`.
For details, see [google_compute_ssl_certificate](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_ssl_certificate#certificate) in the Terraform documentation. |
- | `private_key` | `string` | n/a | no | The contents of the private key for the HTTPS certificate. The private key should be in PEM format.
For example: `file('path/to/private_key.pem')`.
Required if `ssl` is set to `true`.
For details, see [google_compute_ssl_certificate](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_ssl_certificate#private_key) in the Terraform documentation. |
-
-1. (Optional) Provide parameter names and values for the additional input parameters shown in the following table. These parameters are always optional, but you might want to modify from the default values to better suit your requirements.
-
- | Name | Type | Default | Required | Description |
- | :--- | :--- | :--- | :--- | :--- |
- | `region` | `string` | `us-east1` | no | The region that you want to deploy to. For a list of valid regions, see [Available regions and zones](https://cloud.google.com/compute/docs/regions-zones#available) in the Google Cloud documentation.
NOTE: The UID2 Private Operator implementation for GCP Confidential Space is not supported in these areas: Europe, China. |
- | `network_name` | `string` | `uid-operator` | no | The VPC resource name (also used for rules/ instance tags). |
- | `min_replicas` | `number` | `1` | no | Indicates the minimum number of replicas you want to deploy. |
- | `max_replicas` | `number` | `5` | no | Indicates the maximum number of replicas you want to deploy. |
- | `uid_operator_key_secret_name` | `string` | `"secret-operator-key"` | no | The name that you specify for your operator key secret. The Terraform template creates a secret in the GCP Secret Manager to hold the `uid_operator_key` value. You can define the name; for example, `uid2-operator-operator-key-secret-integ`. |
- | `debug_mode` | `bool` | `false` | no | Do not set to `true` unless you are working with the UID2 team to debug an issue. In any other circumstances, if you set this flag to `true`, attestation will fail. |
-
-#### Run Terraform
-
-Run the following:
+GCP Confidential VM エンクレーブ上で UID2 Operator を実行するための公式 Docker イメージは、以下の Docker コマンドで GitHub Container Registry から取得できます:
```
-terraform init
-terraform apply
+docker pull ghcr.io/iabtechlab/uid2-operator
```
-When you run `terraform apply`, the following file is generated in the same folder: [`terraform.tfstate`](https://developer.hashicorp.com/terraform/language/state). This file stores state information about your managed infrastructure and configuration.
-
-This file will be used for future maintenance. Be sure to persist it remotely.
-
-#### Test Terraform Using the Health Check Endpoint
-
-Call the health check endpoint to test the health of your implementation. The expected result is HTTP 200 with a response body of `OK`.
-
-For instructions, see [Health Check—Terraform Template](#health-checkterraform-template).
-
-#### Delete All Created Resources
-
-In a scenario where you want to clean up, you can remove the resources created by the template. For example, you might want to test `integ` and remove the whole stack later.
-To remove all resources created by Terraform, run the following:
+以下のコマンドで、ソースコードから非認証の UID2 Operator コンテナイメージをビルドできます:
```
-terraform destroy
-```
-
-#### Outputs
-
-The following table summarizes the output value from the Terraform template.
-
-| Name | Description |
-| :--- | :--- |
-| `load_balancer_ip` | The public IP address of the load balancer.
You can use this value to [perform the health check](#health-checkterraform-template) or to configure the DNS. |
-
-### Deploy—gcloud CLI
-
-To deploy a new UID2 Operator in the GCP Confidential Space Enclave using the gcloud CLI, follow these steps.
-
->NOTE: For deployment to the production environment we do not recommend this option. We recommend deploying via the Terraform template, with load balancing, and with HTTPS enabled.
-
- 1. [Set Up Service Account Rules and Permissions](#set-up-service-account-rules-and-permissions)
- 1. [Create Secret for the Operator Key in Secret Manager](#create-secret-for-the-operator-key-in-secret-manager)
- 1. [Update the Script with Valid Values](#update-the-script-with-valid-values)
- 1. [Run the Script](#run-the-script)
- 1. [Test gcloud Using the Health Check Endpoint](#test-gcloud-using-the-health-check-endpoint)
-
-#### Set Up Service Account Rules and Permissions
-
-To set up and configure the account that you created when you installed the gcloud CLI, complete the following steps. Replace the placeholder values with your own valid values.
-
-1. Switch to the project that you created in [Confidential Space Account Setup](#confidential-space-account-setup):
- ```
- $ gcloud config set project {PROJECT_ID}
- ```
-
-1. Enable the following APIs:
-
- | Name | Description |
- | :--- | :--- |
- | compute.googleapis.com | Compute Engine API |
- | confidentialcomputing.googleapis.com | Confidential Computing API |
- | logging.googleapis.com | Cloud Logging API |
- | secretmanager.googleapis.com | Service Management API |
-
- Run this command to enable the APIs:
-
- ```
- $ gcloud services enable compute.googleapis.com \
- confidentialcomputing.googleapis.com \
- logging.googleapis.com \
- secretmanager.googleapis.com
- ```
-
-1. Create a service account to run the UID2 Operator Service:
- ```
- $ gcloud iam service-accounts create {SERVICE_ACCOUNT_NAME}
- ```
-
-1. Grant the required permissions to the service account.
-
- Permissions are shown in the following table.
-
- | Permission | Description |
- | :--- | :--- |
- | `confidentialcomputing.workloadUser` | Provides the permission to generate an attestation token and run a workload in a VM. |
- | `logging.logWriter` | Provides the permission to write log entries in gcloud logging. |
- | `secretmanager.secretAccessor` | Provides the permission to access the operator key that is managed in the GCP Secret Manager. |
-
- Grant the `confidentialcomputing.workloadUser` permission:
-
- ```
- $ gcloud projects add-iam-policy-binding {PROJECT_ID} \
- --member=serviceAccount:{SERVICE_ACCOUNT_NAME}@{PROJECT_ID}.iam.gserviceaccount.com \
- --role=roles/confidentialcomputing.workloadUser
- ```
- Grant the `logging.logWriter` permission:
-
- ```
- $ gcloud projects add-iam-policy-binding {PROJECT_ID} \
- --member=serviceAccount:{SERVICE_ACCOUNT_NAME}@{PROJECT_ID}.iam.gserviceaccount.com \
- --role=roles/logging.logWriter
- ```
-
- Grant the `secretmanager.secretAccessor` permission:
-
- ```
- $ gcloud projects add-iam-policy-binding {PROJECT_ID} \
- --member=serviceAccount:{SERVICE_ACCOUNT_NAME}@{PROJECT_ID}.iam.gserviceaccount.com \
- --role=roles/secretmanager.secretAccessor
- ```
+scripts/gcp/build.sh ghcr.io/iabtechlab/uid2-operator:v1.0.0-snapshot
+```
-1. Add a VPC rule to allow public access on port 8080, the default exposed port for the UID2 operator:
- ```
- $ gcloud compute firewall-rules create operator-tcp \
- --direction=INGRESS --priority=1000 --network=default --action=ALLOW \
- --rules=tcp:8080 \
- --source-ranges=0.0.0.0/0 \
- --target-service-accounts={SERVICE_ACCOUNT_NAME}@{PROJECT_ID}.iam.gserviceaccount.com
- ```
+## Attestation Requirements
-#### Create Secret for the Operator Key in Secret Manager
+UID2 Operator Service は、どの GCP アカウントおよびプロジェクトでも実行できます。ただし、認証をサポートするために、プロジェクトは、UID2 Core Service が認証中に GCP API コールを発行するために使用するサービスアカウントに、いくつかの権限を付与する必要があります。
-As part of setting up your UID2 account (see [UID2 Operator Account Setup](#uid2-operator-account-setup)), you'll receive an operator key for each environment.
+| Permission | How the UID2 Core Service Uses It |
+| :------------------------ | :----------------------------------------------------------- |
+| `compute.instances.get` | `cloud-init` の設定など、VM インスタンスの情報を取得します。 |
+| `compute.disks.get` | VM の起動ディスクの詳細を取得します。 |
+| `logging.logEntries.list` | VM インスタンスの監査ログをリストアップします。 |
-The next step is to store the `{OPERATOR_KEY}` value in GCP Secret Manager and get a full secret name for it, which you later use to replace the `{OPERATOR_KEY_SECRET_FULL_NAME}` placeholder in the deployment script (see [Update the Script with Valid Values](#update-the-script-with-valid-values)).
+別の方法として、UID2 Core のサービスアカウントにあらかじめ定義された GCP ロールを付与することもできます。これらのロールには、次の表に示すように、必要な権限が含まれています。
-Follow these steps:
- 1. Run the following script, which creates a new secret, first customizing with your own values:
+| Role | Permissions Included |
+| :--------------- | :---------------------------------------------- |
+| `Compute Viewer` | `compute.instances.get`
`compute.disks.get` |
+| `Logs Viewer` | `logging.logEntries.list` |
- ```
- OPERATOR_KEY="{OPERATOR_KEY}"
- echo -n $OPERATOR_KEY | gcloud secrets create {OPERATOR_KEY_SECRET_NAME} \
- --replication-policy="automatic" \
- --data-file=-
- ```
-
- 1. Prepare the script, using your own values:
+## Integration Deployment
- - For `{OPERATOR_KEY}`, use your own operator key value for the environment.
- - For `{OPERATOR_KEY_SECRET_NAME}`, specify the name you want to use for your API secret, for this environment. For example: `uid2-operator-operator-key-secret-integ`.
+インテグレーション環境用の認証済み cloud-init.yaml ファイルを用意し、`cloud-init` config を使用する新しい Confidential VM を作成すれば、GCP VM エンクレーブ内の新しい UID2 Operator Service をインテグレーション環境にデプロイできます。
- 2. Run the script.
+このセクションでは、デプロイメントプロセスについて説明します。
- The script creates the secret in GCP Secret Manager. The secret (display) name is {OPERATOR_KEY_SECRET_NAME} and the secret value is {OPERATOR_KEY}.
+### Cloud-init.yaml File
-1. Run the following command to get the full secret name, including the path, first customizing with your own values:
+登録プロセスでは、認証された cloud-init-``.yaml ファイルが提供されます。このファイルの SHA-256sum は認証プロセスの一部として使用されるため、このファイルを (クライアント API キーを追加する以外の)いかなる方法でも変更することはできません。ファイルの内容は後述しますが、このファイルはデプロイプロセス中に手動で作成されることはなく、常に UID チームが新しい Private Operator を設定するプロセス中に作成されます。
- ```
- $ gcloud secrets versions describe latest --secret {OPERATOR_KEY_SECRET_NAME} --format 'value(name)'
- ```
+cloud-init.yaml ファイルは環境に固有なので、インテグレーション環境用と本番環境用を用意することに注意してください。
-In this example, the full secret name might be: `projects/111111111111/secrets/uid2-operator-operator-key-secret-integ/versions/1`. This is the value that you would use to replace the `{OPERATOR_KEY_SECRET_FULL_NAME}` placeholder in the next section.
+### cloud-init Example
-#### Update the Script with Valid Values
+これは、UID2 Operator エンクレーブをインテグレーション環境にデプロイする際に使用する `cloud-init` テンプレートです。このセクションでは、ファイルの内容について説明しますが、登録時に提供されたものを使用する必要があります。
-Update the example script, using your own valid values instead of the placeholder values.
+このファイルの内容は、VM インスタンスの作成時に `user-data` というキーでカスタムメタデータとして提供する必要があります。この `user-data` メタデータは、起動時にコンテナ最適化 OS (COS) の VM ディスクによって読み込まれ、解釈されます。
-This section includes:
+以下の例に示すように、まずリモート SSH アクセスを無効にし、次に COS VM に対して、`docker pull`を使って UID2 プロジェクトの公式コンテナレジストリから認証済みの UID2 Operator Docker イメージを Pull し、UID2 Operator コンテナを `systemd` サービスとして実行させるように指示します。
-- [Placeholder Values and Definitions](#placeholder-values-and-definitions)
-- [Sample Deployment Script—Integ](#sample-deployment-scriptinteg)
-- [Sample Deployment Script—Prod](#sample-deployment-scriptprod)
+提供されたファイルでは、`UID2_ENCLAVE_IMAGE_ID` と `GHCR_RO_ACCESS_TOKEN` の値は既に設定されています。手動で編集する必要はありません。`UID2_ENCLAVE_API_TOKEN` は別途提供されますので、ファイル内のこの値を更新する必要があります。
-##### Placeholder Values and Definitions
+```
+#cloud-config
+
+bootcmd:
+- iptables -D INPUT -p tcp -m tcp --dport 22 -j ACCEPT
+- iptables -A INPUT -p tcp -m tcp --dport 22 -j DROP
+- systemctl mask --now serial-getty@ttyS0.service
+
+runcmd:
+- systemctl daemon-reload
+- systemctl start uid2-operator.service
+
+write_files:
+- path: /etc/systemd/system/uid2-operator.service
+ permissions: 0644
+ owner: root
+ content: |
+ [Unit]
+ Description=Start UID 2.0 operator as a Docker container
+
+ [Service]
+ Environment="UID2_ENCLAVE_API_TOKEN="
+ Environment="UID2_ENCLAVE_IMAGE_ID="
+ Environment="GHCR_RO_ACCESS_TOKEN="
+ Environment="HOME=/run/uid2"
+ ExecStartPre=mkdir -p /run/uid2/.config/gcloud
+ ExecStartPre=docker login ghcr.io -u gcp-uid2-docker -p ${GHCR_RO_ACCESS_TOKEN}
+ ExecStartPre=/usr/bin/docker-credential-gcr configure-docker
+ ExecStart=/usr/bin/docker run --rm --name uid2-operator -v /run/uid2/operator.json:/app/conf/config.json -e KUBERNETES_SERVICE_HOST=1 -e core_api_token=${UID2_ENCLAVE_API_TOKEN} -e optout_api_token=${UID2_ENCLAVE_API_TOKEN} -p 80:8080 ghcr.io/iabtechlab/uid2-operator@SHA-256:${UID2_ENCLAVE_IMAGE_ID}
+ ExecStop=/usr/bin/docker stop uid2-operator
+ ExecStopPost=/usr/bin/docker rm uid2-operator
+- path: /run/uid2/operator.json
+ permissions: 0644
+ owner: root
+ content: |
+ {
+ "clients_metadata_path": "https://core-integ.uidapi.com/clients/refresh",
+ "keys_metadata_path": "https://core-integ.uidapi.com/key/refresh",
+ "keys_acl_metadata_path": "https://core-integ.uidapi.com/key/acl/refresh",
+ "salts_metadata_path": "https://core-integ.uidapi.com/salt/refresh",
+ "core_attest_url": "https://core-integ.uidapi.com/attest",
+ "optout_metadata_path": "https://optout-integ.uidapi.com/optout/refresh",
+ "optout_api_uri": "https://optout-integ.uidapi.com/optout/replicate",
+ "optout_s3_folder": "optout-v2/",
+ "optout_inmem_cache": true,
+ "identity_token_expires_after_seconds": 14400,
+ "refresh_token_expires_after_seconds": 2592000,
+ "refresh_identity_token_after_seconds": 3600,
+ "enclave_platform": "gcp-vmid",
+ "enforce_https": true,
+ "service_instances": 16,
+ "allow_legacy_api": false
+ }
+```
-Placeholder values are defined in the following table.
+### Create VM Instance
-| Placeholder | Actual Value |
-| :--- | :--- |
-| `{INSTANCE_NAME}` | Your own valid VM name. |
-| `{ZONE}` | The Google Cloud zone that the VM instance will be deployed on. |
-| `{SERVICE_ACCOUNT}` | The service account email that you created as part of creating your account, in this format: `{SERVICE_ACCOUNT_NAME}@{PROJECT_ID}.iam.gserviceaccount.com`.
For details, see [Set Up Service Account Rules and Permissions](#set-up-service-account-rules-and-permissions) (Step 4). |
-| `{OPERATOR_IMAGE}` | The Docker image URL for the UID2 Private Operator for GCP, used in configuration.
For details, see [UID2 Operator Account Setup](#uid2-operator-account-setup). |
-| `{OPERATOR_KEY_SECRET_FULL_NAME}` | The full name that you specified for the Operator Key secret (see [Create Secret for the Operator Key in Secret Manager](#create-secret-for-the-operator-key-in-secret-manager)), including the path, in the format `projects//secrets//versions/`. For example: `projects/111111111111/secrets/uid2-operator-operator-key-secret-integ/versions/1`. |
+新しい VM インスタンスを作成するには、登録時に渡されたファイルを使って以下の手順を実行します。
-##### Sample Deployment Script—Integ
+1. cloud-init-``.yaml ファイルを一時的な場所にコピーしてください。
+2. 同じフォルダーにある [gcloud script](https://cloud.google.com/blog/products/management-tools/scripting-with-gcloud-a-beginners-guide-to-automating-gcp-tasks) ファイルを実行します。
+ これにより、正しい VM イメージと `cloud-init` ファイルを使用した新しい GCP Confidential VM が作成されます。
-The following example of the deployment script for the integration environment uses some placeholder values.
+`gcloud` スクリプトファイルの例は以下のとおりです:
```
-$ gcloud compute instances create {INSTANCE_NAME} \
- --zone {ZONE} \
- --machine-type n2d-standard-2 \
+$ gcloud compute instances \
+ create uid2-operator-gcp-01 \
--confidential-compute \
- --shielded-secure-boot \
--maintenance-policy Terminate \
- --scopes cloud-platform \
- --image-project confidential-space-images \
- --image-family confidential-space \
- --service-account {SERVICE_ACCOUNT} \
- --metadata ^~^tee-image-reference={OPERATOR_IMAGE}~tee-restart-policy=Never~tee-env-DEPLOYMENT_ENVIRONMENT=integ~tee-env-API_TOKEN_SECRET_NAME={OPERATOR_KEY_SECRET_FULL_NAME}
+ --image https://www.googleapis.com/compute/v1/projects/cos-cloud/global/images/cos-stable-101-17162-40-56 \
+ --metadata-from-file user-data=./cloud-init-1674598899.yaml \
+ --tags http-server
```
-##### Sample Deployment Script—Prod
+VM の名前 (上の例では uid2-operator-gcp-01)は変更できますが、その他のパラメータは変更できず、認証に失敗します。
+
+## Production Deployment
+
+インテグレーション環境と同じ手順で、GCP VM エンクレーブの新しい UID2 Operator を本番環境にデプロイできます。
+cloud-init-``.yaml ファイルの新しいインスタンスが必要です。このファイルには、UID2 Core Service の本番用 URL が使用します。また、新しい `gcloud` スクリプトファイルも提供されます。インテグレーション環境用のスクリプトファイルと本番環境用のスクリプトファイルには、2 箇所の違いしかありません:
-The following example of the deployment script for the production environment uses some placeholder values.
+- 使用する cloud-init-``.yaml ファイル名。
+- `machine-type` の設定。本番環境では、`gcloud` スクリプトでマシンタイプを指定することが推奨されます。現在、UID2 オペレーターは `n2d-standard-16` のマシンタイプで実行することが推奨されています。
->NOTE: A `machine-type` value of `n2d-standard-16` is required for the production environment.
+以下は、スクリプトの例です。
```
-$ gcloud compute instances create {INSTANCE_NAME} \
- --zone {ZONE} \
+$ gcloud compute instances \
+ create uid2-operator-gcp-01 \
--machine-type n2d-standard-16 \
--confidential-compute \
- --shielded-secure-boot \
--maintenance-policy Terminate \
- --scopes cloud-platform \
- --image-project confidential-space-images \
- --image-family confidential-space \
- --service-account {SERVICE_ACCOUNT} \
- --metadata ^~^tee-image-reference={OPERATOR_IMAGE}~tee-restart-policy=Never~tee-env-DEPLOYMENT_ENVIRONMENT=prod~tee-env-API_TOKEN_SECRET_NAME={OPERATOR_KEY_SECRET_NAME}
+ --image https://www.googleapis.com/compute/v1/projects/cos-cloud/global/images/cos-stable-101-17162-40-56 \
+ --metadata-from-file user-data=./cloud-init-1674598899.yaml \
+ --tags http-server
```
-#### Run the Script
-
-When the script is ready, with the additional valid values, run it.
-
-#### Test gcloud Using the Health Check Endpoint
-
-Call the health check endpoint to test the health of your implementation. The expected result is HTTP 200 with a response body of `OK`.
-
-For instructions, see [Health Check—gcloud CLI](#health-checkgcloud-cli).
-
-## Tasks
-
-This section provides instructions for completing the following tasks. Where applicable, instructions are provided for both environments. It includes:
-
-- [Running the Health Check](#running-the-health-check)
-- [Upgrading](#upgrading)
-
-### Running the Health Check
-
-Call the health check endpoint to test the health of your implementation.
-
-Running the health check is the same for the integration and production environments, except for the endpoints.
-
-Follow the applicable instructions depending on the deployment option you chose:
-
-- [Health Check—Terraform Template](#health-checkterraform-template)
-- [Health Check—gcloud CLI](#health-checkgcloud-cli)
-
-#### Health Check—Terraform Template
-
-The following example shows the health check for the Terraform template option:
-
-1. Get the public IP address for the load balancer:
-
- ```
- terraform output load_balancer_ip
- ```
-
-2. To test operator status, in your browser, go to the health check endpoint: `http://{IP}/ops/healthcheck`.
-
- An HTTP 200 with a response body of `OK` indicates healthy status.
-
-
-#### Health Check—gcloud CLI
-The following example shows the health check for the `gcloud` command line option:
-
-1. Get the public IP address of the deployed instance:
-
- ```
- $ gcloud compute instances describe {INSTANCE_NAME} \
- --format='get(networkInterfaces[0].accessConfigs[0].natIP)'
- ```
-2. To test operator status, in your browser, go to `http://{IP}:8080/ops/healthcheck`.
-
- An HTTP 200 with a response body of `OK` indicates healthy status.
-
-### Upgrading
-
-When a new version of UID2 Google Cloud Platform Confidential Space is released, private operators receive an email notification of the update, with a new image version. There is a window of time for upgrade, after which the older version is deactivated and is no longer supported.
-
-If you're upgrading to a new version, the upgrade process depends on the deployment option you chose. Follow the applicable steps:
-
-- [Upgrading—Terraform Template](#upgradingterraform-template)
-- [Upgrading—gcloud CLI](#upgradinggcloud-cli)
-
-#### Upgrading—Terraform Template
-
-If you deployed using the Terraform template, all you need to do to upgrade is update your deployment with the new `{OPERATOR_IMAGE}` that you received in the upgrade notification.
+> NOTE: 前のセクションで使用した `gcloud` コマンドと比較して、 `--machine-type n2d-standard-16` という追加のオプションが追加されています。このオプションは、UID2 Operator Service の本番環境での実行を保証するものです。
+> このオプションは、UID2 Operator Service の本番環境でのデプロイが、本番環境と一致する推奨のマシンタイプで実行されることを保証します。
-#### Upgrading—gcloud CLI
+## Upgrading
-If you deployed using the gcloud CLI, you must manually bring up new instances that use the new `{OPERATOR_IMAGE}` and then shut down old instances.
+各オペレーターのバージョンを更新するために、Private operator は、古いバージョンが非アクティブになり、サポートされなくなるときに、アップグレードのウィンドウを持つメール通知を受け取ります。
+最新バージョンにアップグレードするには、元のオペレーターをデプロイしたのと同じ方法で、メールで提供される新しい `cloud-init` 設定をデプロイします。
-If you previously set up a load balancer manually, you'll also need to update the mapping for the load balancer.
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/guides/publisher-client-side.md b/i18n/ja/docusaurus-plugin-content-docs/current/guides/publisher-client-side.md
index cc7e2f7e8..0731137d1 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/guides/publisher-client-side.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/guides/publisher-client-side.md
@@ -2,7 +2,7 @@
title: Client-Side JavaScript SDK Integration
sidebar_label: Client-Side JavaScript SDK
pagination_label: Client-Side JavaScript SDK Integration
-description: Information for publishers about how to generate identity tokens using UID2 for the RTB bid stream, while integrating directly with UID2 rather than UID2-enabled single-sign-on or identity providers.
+description: パブリッシャー向けの、UID2 対応のシングルサインオンや ID プロバイダーではなく、UID2 と直接インテグレーションしながら、RTB ビッドストリーム用に UID2 を使用して ID トークンを生成する方法。
hide_table_of_contents: false
sidebar_position: 02
---
@@ -62,38 +62,11 @@ The following sections provide additional details for each step in the diagram:
### Establish Identity: User Login
-
-After authentication in step 1-c, which forces the user to accept the rules of engagement and allows the publisher to validate the user's email address or phone number, a UID2 token must be generated on the server side. The following table details the token generation steps.
-
-| Step | Endpoint/SDK | Description |
-| :--- | :--- | :--- |
-| 1-d | [POST /token/generate](../endpoints/post-token-generate.md) | After the user authenticates and authorizes the creation of a UID2, use the [POST /token/generate](../endpoints/post-token-generate.md) endpoint to generate a UID2 token using the email address or phone number provided by the user. Make sure it is normalized. |
-| 1-e | [POST /token/generate](../endpoints/post-token-generate.md) | The endpoint returns a UID2 token generated from the user's email address, phone number, or the respective hash. |
-| 1-f | UID2 SDK for JavaScript | The SDK sends the returned UID2 token from step 1-e to the SDK in the `identity` property of its [init() function](../sdks/client-side-identity.md#initopts-object-void). |
-| 1-g | UID2 SDK for JavaScript | Provide the SDK a callback function that will receive identity updates from the SDK and use them to initiate targeted advertising. |
-
-
-
-
-```js
- window.__uid2 = window.__uid2 || {};
- window.__uid2.callbacks = window.__uid2.callbacks || [];
-
- // Step 1-f
- window.__uid2.callbacks.push((eventType, payload) => {
- if (eventType === 'SdkLoaded') {
- __uid2.init({
- identity : {
- "advertising_token": "AgmZ4dZgeuXXl6DhoXqbRXQbHlHhA96leN94U1uavZVspwKXlfWETZ3b/besPFFvJxNLLySg4QEYHUAiyUrNncgnm7ppu0mi6wU2CW6hssiuEkKfstbo9XWgRUbWNTM+ewMzXXM8G9j8Q=",
- "refresh_token": "Mr2F8AAAF2cskumF8AAAF2cskumF8AAAADXwFq/90PYmajV0IPrvo51Biqh7/M+JOuhfBY8KGUn//GsmZr9nf+jIWMUO4diOA92kCTF69JdP71Ooo+yF3V5yy70UDP6punSEGmhf5XSKFzjQssCtlHnKrJwqFGKpJkYA==",
- "identity_expires": 1633643601000,
- "refresh_from": 1633643001000,
- "refresh_expires": 1636322000000,
- "refresh_response_key":"dYNTB20edyHJU9mZv11e3OBDlLTlS5Vb97iQVumc7b/8QY/DDxr6FrRfEB/D",
- }
- });
- }
- });
+| Step | Endpoint/SDK | Description |
+| :--- | :----------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| 1-d | [POST /token/generate](../endpoints/post-token-generate.md) | ユーザーが認証され、UID2 の作成が許可されたら、[POST /token/generate](../endpoints/post-token-generate.md) エンドポイントを使用して、ユーザーの正規化したメールアドレスまたは電話番号を使って UID2 Token を生成します。 |
+| 1-e | [POST /token/generate](../endpoints/post-token-generate.md) | ユーザーのメールアドレス、電話番号、またはそれぞれのハッシュから生成された UID2 Token を返します。 |
+| 1-f | UID2 SDK for JavaScript | Step 1-e で返された UID2 Token を、SDK の [init()関数](../sdks/client-side-identity.md#initopts-object-void) の `identity` プロパティで SDK に送信し、以下に示すように [コールバック関数](../sdks/client-side-identity.md#callback-function) を指定します。このメカニズムにより、ユーザーがログアウトするまで、UID2 Token がターゲティング広告に利用できるようになります。|
// Step 1-g
window.__uid2.callbacks.push((eventType, payload) => {
@@ -167,11 +140,11 @@ Based on the status and availability of a valid identity, the SDK does the follo
The bidding step is shown in the following table.
-| Step | Endpoint/SDK | Description |
-| :--- | :--- | :--- |
-| 2-a | UID2 SDK for JavaScript | Gets the current user's advertising token by using the [getAdvertisingToken() function](../sdks/client-side-identity.md#getadvertisingtoken-string) as shown below. |
+| Step | Endpoint/SDK | Description |
+| :--- | :----------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------- |
+| 2-a | UID2 SDK for JavaScript | 以下に示すように、[getAdvertisingToken() 関数](../sdks/client-side-identity.md#getadvertisingtoken-string) を使用して、現在のユーザーの Advertising Token を取得します。|
->NOTE: For an example of what a UID2 token might look like in the bid stream, when it's sent from an SSP to a DSP, see [What does a UID2 token look like in the bid stream?](../getting-started/gs-faqs.md#what-does-a-uid2-token-look-like-in-the-bid-stream)
+>NOTE: UID2 Token が SSP から DSP に送信されるとき、ビッドストリーム内でどのように見えるかの例については、[What does a UID2 token look like in the bid stream?](../getting-started/gs-faqs.md#what-does-a-uid2-token-look-like-in-the-bid-stream) を参照してください。
```html