blob: 46f956e09ed70f7b3fb5ce23105baaacee15f660 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
---
title: contextualIdentities
slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities
tags:
- WebExtensions
translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities
---
<div>{{AddonSidebar}}</div>
<p>contextual identitiesの操作: contextual identities を一覧、作成、削除、更新します。</p>
<p>"Contextual identities"は「コンテナ」とも言われ、ブラウザーの機能で、ユーザーがウェブブラウズしている時に複数のIDを想定し、そこでもID同時の分離を維持したいアイデアを指します。例えば、ユーザーが「仕事のID」と「個人のID」を分けたいと考えて、これら2つのコンテキストで cookies を共有したくない場合など。</p>
<p>contextual identities 機能により、各コンテキストIDは名前、色、及びアイコンを持ちます。新規タブがIDにアサインされ、名前、アイコン、色がアドレスバーに出現します。内部的には、各IDが他のタブには共有されない自分の cookie ストアを持ちます。</p>
<p><img alt="" src="https://mdn.mozillademos.org/files/14719/containers.png" style="display: block; height: 259px; margin-left: auto; margin-right: auto; width: 515px;">Contextual identities は Firefox の実験的機能であり、Firefox Nightly だけでデフォルト有効になっています。その他のバージョンの Firefox で有効にするには、 <code>privacy.userContext.enabled</code> の設定を <code>true</code> にします。contextual identities は Android版Firefox でも利用できますが、このバージョンでは動作する UI がないのにご注意ください。</p>
<p>Firefox 57 より前では、<code>contextualIdentities</code> API は contextual identities 機能自体が有効になっている場合にだけ利用できます。機能が無効なまま拡張機能が <code>contextualIdentities</code> API を使おうとした場合、メソッド呼び出しは promises を <code>false</code> に解決します。</p>
<p>Firefox 57 以降では、<code>contextualIdentities</code> API を使う拡張機能がインストールされたら、contextual identities 機能は自動的に有効化されます。"privacy.userContext.enabled" プリファレンスを使って、まだユーザーが機能を無効化できるのに注意します。これが起きたら、<code>contextualIdentities</code> メソッドの呼び出しで、エラーメッセージと共に promises を拒否します。</p>
<p>Firefox での contextual identities のより詳しい情報は<a href="https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers">このガイド</a>を見てください。</p>
<p>Contextual identities は現在その他のブラウザーではサポートされていません。</p>
<p>この API を使うには、 <a href="https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json </a>ファイル内で "contextualIdentities" <a href="https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">パーミッション</a>を入れます。</p>
<h2 id="Types" name="Types">型</h2>
<dl>
<dt>{{WebExtAPIRef("contextualIdentities.ContextualIdentity")}}</dt>
<dd>contextual identity に関する情報を含みます。</dd>
</dl>
<h2 id="Functions" name="Functions">関数</h2>
<dl>
<dt>{{WebExtAPIRef("contextualIdentities.create()")}}</dt>
<dd>新しい contextual identity を作成します</dd>
<dt>{{WebExtAPIRef("contextualIdentities.get()")}}</dt>
<dd>cookie ストア ID を引数に、単一の contextual identity を取得します</dd>
<dt>{{WebExtAPIRef("contextualIdentities.query()")}}</dt>
<dd>すべての contextual identities を取得、あるいは特定の名前の全 contextual identities を取得します</dd>
<dt>{{WebExtAPIRef("contextualIdentities.update()")}}</dt>
<dd>既存のcontextual identity のプロパティを更新します</dd>
<dt>{{WebExtAPIRef("contextualIdentities.remove()")}}</dt>
<dd>contextual identity を削除します</dd>
<dt>
<h2 id="Events" name="Events">イベント</h2>
</dt>
<dt>{{WebExtAPIRef("contextualIdentities.onCreated")}}</dt>
<dd>contextual identity 作成時に発火します</dd>
<dt>{{WebExtAPIRef("contextualIdentities.onRemoved")}}</dt>
<dd>contextual identity 削除時に発火します</dd>
<dt>{{WebExtAPIRef("contextualIdentities.onUpdated")}}</dt>
<dd>1つ以上の contextual identity のプロパティが更新された時に発火します</dd>
</dl>
<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザ実装状況</h2>
<p>{{Compat("webextensions.api.contextualIdentities")}}</p>
<p>{{WebExtExamples("h2")}}</p>
|