セッション権限の使用
ユーザーが年齢ゲートチェックを通過した場合(適切な年齢であるか、保護者から同意が得られた場合)、ゲームは現在のプレイヤーに対する管轄地域固有のすべての権限を取得できます。これは、/age-gate/check呼び出しでstatusフィールドがPASSの場合に取得するか、セッションが以前に作成されてキャッシュされている場合は、/session/getを呼び出して取得します。
「Session」には「Permissions」が含まれています。各「Permission」には名前、ブール値のenabledフィールド、およびこのプレイヤーに対して権限がどのように有効化されるかを示すmanagedByフィールドがあります。 以下は、Session内の特定の権限であるtext-chat-privateの例です。
{
"enabled": true,
"managedBy": "PLAYER",
"name": "text-chat-private"
}
誰が権限を有効にできるのか?
ゲームコードは、各k-IDの権限を使用してゲーム内の対応する機能へのアクセスを制御する必要があります。権限のenabledフィールドがtrueの場合、その機能はゲーム内でプレイヤーに対して有効にすることができます。enabledフィールドがfalseの場合、その機能は無効にする必要があります。一部の管轄地域では、プレイヤーが特定の年齢であれば、その機能へのアクセスが可能であっても、デフォルトで機能を無効にすることが求められています(これは「デフォルトでのプライバシー保護」要件と呼ばれることがあります)。この場合、enabledはfalseであり、managedByフィールドにはPLAYERが含まれます。特定の機能が保護者のみが有効または無効にできる場合、managedByフィールドの値はGUARDIANになります。現在の場所で、保護者の同意に関係なく現在のプレイヤーに対してその機能が一切許可されない場合、managedByフィールドにはPROHIBITEDが含まれます。この最後の場合、ゲーム内で無効状態として表示するのではなく、その禁止された機能をユーザー体験から完全に削除するのが適切かもしれません。