現在表示中:

CQ では、Web ページでの Cookie の使用方法を設定および制御できるサービスを提供しています。

  • 設定可能なサーバー側のサービスによって、使用可能な Cookie のリストを管理します。
  • JavaScript API によって、Cookie が使用可能であることを検証する JavaScript コードを作成できます。

この機能を使用して、ページが Cookie の使用方法に関するユーザーの同意に従って動作するようにします。

許可された Cookie の設定

Adobe Granite Opt-Out Service の設定によって、Web ページでの Cookie の使用方法を指定します。次の表に、設定可能なプロパティについて説明します。

このサービスの設定には、Web コンソールを使用するか、リポジトリに OSGi 設定を追加します。次の表では、どちらの方法でも必要になるプロパティについて説明しています。OSGi 設定の場合、サービス PID は com.adobe.granite.optout です。

プロパティ名(Web コンソール) OSGi プロパティ名 説明
Opt-Out Cookies optout.cookies ユーザーのデバイスに存在する場合に、ユーザーが Cookie の使用に同意していないことを示す Cookie の名前。
Opt-Out HTTP Headers optout.headers 存在する場合に、ユーザーが Cookie の使用に同意していないことを示す HTTP ヘッダー。
White-List Cookies optout.whitelist.cookies Web サイトの機能に不可欠で、ユーザーの同意なしに使用できる Cookie のリスト。

Cookie の使用に関する検証

クライアント側の JavaScript を使用して Adobe Granite Opt-Out Service を呼び出し、Cookie を使用できることを確認します。次のタスクを実行するには、Granite.OptOutUtil という JavaScript オブジェクトを使用します。

  • 追跡の目的で Cookie を使用することをユーザーが同意していないことを示す Cookie 名のリストを取得します。
  • 使用可能な Cookie のリストを取得します。 
  • 追跡の目的で Cookie を使用することをユーザーが同意していないことを示す Cookie が、Web ブラウザーに含まれているかを判断します。
  • 特定の Cookie が使用可能であるかを判断します。

granite.utils クライアントライブラリフォルダーに、Granite.OptOutUtil オブジェクトが存在します。ページの JSP ヘッド部に次のコードを追加して、JavaScript ライブラリにリンクをインクルードするようにします。

<ui:includeClientLib categories="granite.utils" />

例えば、次の JavaScript 関数は、COOKIE_NAME Cookie の使用が許可されているかを判断し、その後その Cookie に書き込みます。

function writeCookie(value){
   if (!Granite.OptOutUtil.maySetCookie("COOKIE_NAME")) 
      return;
   if (value) {
      value = encodeURIComponent(value);
      document.cookie = "COOKIE_NAME=" + value; 
   }
}

Granite.OptOutUtil JavaScript オブジェクト

Granite.OptOutUtil を使用して、Cookie の使用が許可されているかを判断できます。

getCookieNames() 関数

存在する場合に、ユーザーが Cookie の使用に同意していないことを示す Cookie の名前を返します。

パラメーター

なし。

戻り値

Cookie 名の配列。

getWhitelistCookieNames() 関数

ユーザーの同意に関係なく使用可能な Cookie の名前を返します。

パラメーター

なし。

戻り値

Cookie 名の配列。

isOptedOut() 関数

Cookie の使用の同意が得られていないことを示す Cookie がユーザーのブラウザーに保存されていないかを判断します。

パラメーター

なし。

戻り値

同意がないことを示す Cookie が見つかった場合はブール値 true、同意がないことを示す Cookie が存在しない場合は値 false

maySetCookie(cookieName) 関数

ユーザーのブラウザー上で特定の Cookie を使用できるかを判断します。この関数は、isOptedOut 関数と、getWhitelsitCookieNames が返すリスト内に特定の特定の Cookie が含まれているかの判断を連結して使用する処理と同等です。

パラメーター

  • cookieName:String。Cookie の名前。

戻り値

cookieName を使用できる場合はブール値 truecookieName が使用できない場合は値 false

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

リーガルノーティス   |   プライバシーポリシー