From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../index.html | 236 +++++++++++++++++++++ files/ja/web/security/secure_contexts/index.html | 77 +++++++ 2 files changed, 313 insertions(+) create mode 100644 files/ja/web/security/secure_contexts/features_restricted_to_secure_contexts/index.html create mode 100644 files/ja/web/security/secure_contexts/index.html (limited to 'files/ja/web/security/secure_contexts') diff --git a/files/ja/web/security/secure_contexts/features_restricted_to_secure_contexts/index.html b/files/ja/web/security/secure_contexts/features_restricted_to_secure_contexts/index.html new file mode 100644 index 0000000000..8eb04d2a59 --- /dev/null +++ b/files/ja/web/security/secure_contexts/features_restricted_to_secure_contexts/index.html @@ -0,0 +1,236 @@ +--- +title: 安全なコンテキストに制限されている機能 +slug: Web/Security/Secure_Contexts/features_restricted_to_secure_contexts +tags: + - API + - Browsers + - Reference + - Secure contexts + - Security + - Web + - features + - support + - セキュリティ + - ブラウザー + - 安全なコンテキスト +translation_of: Web/Security/Secure_Contexts/features_restricted_to_secure_contexts +--- +

このリファレンスは、安全なコンテキストでのみ使用できるウェブプラットフォーム機能の一覧です — 定義や詳細については、安全なコンテキストを参照してください。

+ +

安全なコンテキストでのみ使用できる現在の機能

+ +

この節では、安全なコンテキストでのみ利用できる API の一覧を、制限が導入されたブラウザーのバージョンと共に示します。

+ +
+

メモ: 実際に安全なコンテキストに対応しているブラウザーのみ表示しています。安全なコンテキストの対応の詳細はこちらをご覧ください

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
APIChrome/OperaEdgeSafariFirefox
Async Clipboard API66対応なし対応なし63
Background Sync (例えば {{domxref("SyncManager")}} を参照)49対応なし対応なし対応なし
Cache-Control: immutable対応なし151149
Credential Management API51対応なし対応なし対応なし
Generic Sensor API67対応なし対応なし対応なし
Payment Request API (および Basic Card Payment)611511.1開発中 (dom.payments.request.enabled の設定で隠蔽)。
プッシュ API4217対応なし44
Reporting API対応あり対応なし対応なしFirefox 65 以降はフラグで隠ぺい
サービスワーカー401711.144
Storage API55対応なし対応なし51
Web Authentication API65In preview (17)開発中60
Web Bluetooth56対応なし対応なし対応なし
Web MIDI (たとえば、 {{domxref("MIDIAccess")}} を参照)43対応なし対応なし対応なし
Web Crypto API 6079対応なし75
+ +

ブラウザー独自の安全なコンテキストの制限

+ +

ブラウザーによっては、仕様書の要件になくても、特定の API を安全ではないコンテキストでは無効にしたり、その他の制限やセキュリティ要件を課したりしていることがあります。この節では、ブラウザーによって違いがあるものの一覧を示しています。

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
APIChromeEdgeSafariFirefox
Application CacheChrome 70 で安全なコンテキストに限定することを計画中2018年2月に非推奨化の検討が開始非推奨化に対する一般の関心 {{webkitbug(182442)}}Firefox 62 で安全なコンテキストに限定
{{domxref("Geolocation")}}50で安全なコンテキストに限定10で安全なコンテキストに限定55で安全なコンテキストに限定
Device Orientaion / Device Motion非推奨の警告60から非推奨の警告。なお、これは安全なコンテキストでも同様に適用されます。
Encrypted Media Extensions58で安全なコンテキストに限定計画中
getUserMedia()Chrome 47 以降、安全なコンテキストに限定一時的なアクセスのみ可能 (ユーザーは許可ダイアログで "この設定を記憶する" を選べない)。
NotificationsChrome 62 で安全なコンテキストに限定Firefox 67 で安全なコンテキストに限定
<a ping> 属性安全でないコンテキストでは無効Firefox 3 で対応が追加、但し既定では有効化されていない (browser.send_pings の設定で隠蔽)。
Presentation61 で非推奨の警告
Web Crypto API早期から HTTPS に限定 (API は HTTP で見えたが、操作には失敗した)。 Chrome 60 で安全なコンテキストに限定 (API は安全ではないコンテキストから見えなくなった).計画中
registerProtocolHandler()Firefox 62 で安全なコンテキストに限定
+ +

関連情報

+ + + +
{{QuickLinksWithSubpages("/ja/docs/Web/Security")}}
diff --git a/files/ja/web/security/secure_contexts/index.html b/files/ja/web/security/secure_contexts/index.html new file mode 100644 index 0000000000..8c6576066a --- /dev/null +++ b/files/ja/web/security/secure_contexts/index.html @@ -0,0 +1,77 @@ +--- +title: 安全なコンテキスト +slug: Web/Security/Secure_Contexts +tags: + - Secure contexts + - Security + - セキュリティ + - 安全なコンテキスト +translation_of: Web/Security/Secure_Contexts +--- +

セキュアコンテキストとは、認証と機密性の一定の最低基準を満たしている WindowWorker のことです。多くの Web API や機能は安全なコンテキストでのみアクセス可能です。セキュアコンテキストの主な目的は、{{interwiki("wikipedia", "中間者攻撃", "中間者攻撃")}} が攻撃の犠牲者をさらに危険にさらす可能性のある強力な API にアクセスすることを防ぐことです。

+ +

機能をアクセス制限すべき理由

+ +

Web の API には強力なものもあり、攻撃者に対して以下のような (それよりも多くの) 能力を与えてしまう可能性があります。

+ + + +

コンテキストが安全とみなされるのはいつですか?

+ +

コンテキストは、Secure Contexts 仕様で定義されている認証および機密性の一定の最低基準を満たしている場合に、セキュアなコンテキストとみなされます。特定の文書がセキュアコンテキストであるトップレベルのブラウジングコンテキスト (基本的には、セキュアコンテキストであるウィンドウやタブを含むコンテキスト) のアクティブな文書である場合、その文書はセキュアコンテキストにあるとみなされます。

+ +

例えば、{{HTMLElement("iframe")}} 内で TLS 上で配信された文書であっても、TLS 上で配信されなかった祖先がある場合には、そのコンテキストは安全であるとは見なされません

+ +

しかし、安全ではないコンテキストによって (noopener を指定してもしなくても) 新しいウィンドウが作成された場合、 オープナーが安全ではないという事実は、新しいウィンドウが安全であるとみなされるかどうかに影響を与えないことに注意してください。これは、特定の文書が安全なコンテキストにあるかどうかの判断は、それが関連付けられているトップレベルのブラウジングコンテキスト内でそれを考慮することにのみ基づいており、安全でないコンテキストがたまたまその文書を作成するために使用されたかどうかではないからです。

+ +

http://127.0.0.1 の URL、http://localhost の URL (一定の条件の下で)、file:// の URL など、ローカルに配信されたリソースも安全に配信されていると考えられます。

+ +

ローカルではないリソースが安全であるとみなされるためには、以下の基準を満たす必要があります。

+ + + +

機能の判別

+ +

グローバルスコープで利用できる {{domxref("WindowOrWorkerGlobalScope.isSecureContext", "isSecureContext")}} の真偽値を用いることで、そのページ自身が安全なコンテキストの中にいるかどうか確かめることができます。

+ +
if (window.isSecureContext) {
+  // Service Worker が実行されているので、このページは安全なコンテキストです
+  navigator.serviceWorker.register("/offline-worker.js").then(function () {
+    ...
+  });
+}
+ +

仕様

+ + + + + + + + + + + + + + +
仕様書状態備考
{{SpecName('Secure Contexts')}}{{Spec2('Secure Contexts')}}編集者による草稿
+ +

関連情報

+ + + +
{{QuickLinksWithSubpages("/ja/docs/Web/Security")}}
-- cgit v1.2.3-54-g00ecf