Chrome の新しい HTML permission 要素、Firefox と Safari から強い反対に直面

BigGo 編集部
Chrome の新しい HTML permission 要素、Firefox と Safari から強い反対に直面

Google Chrome は、Mozilla Firefox と Apple Safari の両方から強い反対を受けているにもかかわらず、物議を醸している新しい HTML <permission> 要素の開発を推進している。Chrome 122 からオリジントライアルが開始されているこの機能は、従来の許可ポップアップを、ウェブサイトが直接ページに埋め込むことができるインライン宣言型 HTML 要素に置き換えることを目的としている。

この新しい要素により、開発者は JavaScript 呼び出しではなく HTML マークアップを通じて、カメラ、マイク、位置情報アクセスなどのブラウザ許可を要求できるようになる。ユーザーのブラウジングを中断する従来のモーダルダイアログの代わりに、<permission> 要素はウェブページコンテンツの一部として表示され、許可が付与されているか、拒否されているか、保留中かに基づいて異なる状態を示す。

サポートされている許可タイプ( Chrome 122 試験版)

  • カメラアクセス
  • マイクアクセス
  • 位置情報データ

ブラウザベンダーの立場

  • ** Chrome **:オリジントライアルで実装中
  • ** Firefox **:正式に反対の立場
  • ** Safari / WebKit **:正式に反対の立場
Google Meet 使用時にブラウザでマイクアクセスを有効にする手順
Google Meet 使用時にブラウザでマイクアクセスを有効にする手順

標準化プロセスの論争

開発者コミュニティが提起している最も重要な懸念は、他の主要ブラウザベンダーからの正式な反対にもかかわらず、Google が実装を進めることを決定したことに集中している。Mozilla と WebKit の両方が否定的な標準化ポジションを発表しているにもかかわらず、Chrome はオリジントライアルを通じて開発を継続している。このアプローチは、ウェブ標準を断片化し、他のブラウザが決してサポートしない可能性のある Chrome 固有の機能を作成する可能性があるとして批判を浴びている。

この状況は、ウェブ標準ガバナンスにおける継続的な緊張を浮き彫りにしている。批評家は、Chrome の圧倒的な市場シェアにより、Google が業界のコンセンサスに関係なく機能の採用を事実上強制でき、従来ウェブ開発を統治してきた協調的な標準化プロセスを損なっていると主張している。

セキュリティとユーザーエクスペリエンスの懸念

開発者の議論では、許可要求をウェブページコンテンツに移すことのセキュリティへの影響について深い懐疑論が明らかになっている。要素のインライン性質は、悪意のあるウェブサイトが見えない要素を重ねてユーザーを騙し、意図せずに許可を付与させるクリックジャッキング攻撃への懸念を提起している。

要素に課されたスタイリング制限は、追加の課題を生み出している。Google は悪用を防ぐためにウェブサイトが外観をカスタマイズする方法を制限しているが、開発者は、これが許可ボタンがサイトデザインと一致しない不快なユーザーエクスペリエンスを生み出すのではないかと心配している。また、これらの制限は、巧妙なソーシャルエンジニアリング攻撃を防ぐには不十分に見える。

「ユーザーが許可を有効にすることを容易にし、偶然にもそうなり、したがってセキュリティとプライバシーを低下させる。Google の製品はそれを悪用するように設計されている。」

技術実装の問題

コミュニティは、現在の提案にいくつかの技術的問題を特定している。要素の動作は標準的な HTML パターンと一致しないように見え、基礎となる許可が意味のある機能のために依然として JavaScript を必要とするため、その宣言的性質が疑問視されている。

開発者はまた、既存の許可 API と比較して機能が不足していることも指摘している。トライアル版では、許可を永続的にブロックするオプションが欠けており、毎回の訪問で許可と今回のみ許可の選択肢のみを提供している。この非対称性は、この機能が真にユーザーコントロールを改善するのではなく、許可の付与を促すように設計されている可能性を示唆している。

Permission要素の構文例

&lt;permission name="camera"&gt;
  &lt;span&gt;Permission granted.&lt;/span&gt;
  &lt;span slot="denied"&gt;Permission denied.&lt;/span&gt;
  &lt;button slot="prompt"&gt;Request permission&lt;/button&gt;
&lt;/permission&gt;

主要な属性

  • name: 許可の種類(camera、microphone、geolocation)
  • granted: 許可が付与された時に表示されるコンテンツ
  • denied: 許可が拒否された時に表示されるコンテンツ
  • prompt: 許可の状態が不明な時に表示されるコンテンツ

市場への影響と将来の展望

この論争は、Chrome の市場支配を通じたウェブ標準に対する Google の影響力についてのより広範な懸念を反映している。多くの開発者は、Chrome 専用機能の成功した展開が、技術的メリットやセキュリティ上の懸念に関係なく、他のブラウザに後付けでそれらを実装するよう圧力をかけることを恐れている。

この状況は、Google が一方的に機能を導入し、後に業界の採用を強制した以前の事例を反映している。ウェブ開発者が Chrome 固有の API にますます依存するようになる中、permission 要素は、コンセンサスベースの開発ではなく市場力による事実上の標準化のもう一つの例となる可能性がある。

この機能の最終的な成功は、他のブラウザベンダーが最終的にポジションを変更するか、ウェブ開発コミュニティが断片化の懸念にもかかわらず Chrome 固有の実装を受け入れるかどうかに依存する可能性が高い。

参考: An origin trial for a new HTML element