Chrome 「デベロッパーモードの拡張機能を無効にする」は消せるのか?

このサイトを検索 | Search this site
chrome192.png

Google Chrome は version 71 からインラインインストールAPIが削除されたので、Chromeウェブストア以外のサイトから拡張機能をインストールすることができなくなりました。

それに伴って、ローカルに保存した [拡張子|.crx] はインストールできなくなりましたが、ソースコード (Javascript) は「パッケージ化されていない拡張機能を読み込む」ことで動作させることができます。

但し、Chromeを起動するたびに「デベロッパーモードの拡張機能を無効にする」のダイアログが表示されます。

効果はなかったが...

Chromeポリシー テンプレートを利用してダイアログを抑止する方法を見つけましたが、私の環境には効果がありませんでした。

...?

ダイアログが抑止できた環境もあるようなので、収集した情報をメモしておきます。

[使用するアイテム]
  • Chrome ポリシー テンプレート
  • ローカルグループポリシーエディター (gpedit.msc)


拡張機能セキュリティ

[Chromeのセキュリティ対策]
  • Chrome 71からインラインインストールAPIを削除した
  • 拡張機能のインストールはChromeウェブストアに限定された

[デベロッパーモード]
  • 「デベロッパーモード」を利用すると外部の拡張機能を動作させることができる
  • -.crxファイルによるインラインインストールはできない

「パッケージ化されていない拡張機能を読み込む」を利用すると、拡張機能スクリプトを動作させることができます。

ウザい点は、

Chromeを起動するたびに「デベロッパーモードの拡張機能を無効にする」よう促すダイアログが表示されます。

右上の「×」をクリックすると利用することができます。

文字起こし
デベロッパーモードの拡張機能を無効にする

「デベロッパモードで実行される拡張機能はPCにダメージを与える恐れがあります。デベロッパーでない場合は、安全のため、デベロッパーモードで実行されているこれらの拡張機能を無効にしてください。」

reboot-attention

デベロッパーモード

パッケージ化されていない拡張機能を読み込む方法

手順
  1. Chrome >  > その他のツール > 拡張機能
  2. デベロッパーモードを有効にする
  3. 「パッケージ化されていない拡張機能を読み込む」をクリックする
  4. スクリプトフォルダーを指定する
  5. 手順終了

developper-on%2BG

Chromeポリシー テンプレート

Chromeポリシー テンプレートを利用するとダイアログを消すことができます。(できるかもしれません?)

[手順]
  1. Chrome ポリシー テンプレートをダウンロードする
  2. 解凍したファイルをコピーする
  3. ローカルグループポリシーエディターを起動する
  4. 拡張機能IDを調べる
  5. ホワイトリストに拡張機能IDを登録する
  6. 手順終了

※ストリームレコーダーを例にとります

1. Chrome ポリシー テンプレートをダウンロードする
Google公式サイトからChromeポリシーテンプレートをダウンロードします。

ファイル名:policy_templates.zip

2. ファイルをコピーする
policy_templates.zipを解凍して、次の2つのファイルをコピーします。
  • chrome.adml
  • chrome.admx
policy_templates.zipコピー先
windows\admx\ja-jp\chrome.admlC:\Windows\PolicyDefinitions\ja-JP\chrome.adml
windows\admx\chrome.admxC:\Windows\PolicyDefinitions\chrome.admx

参考画像
policy_templates.zipフォルダー構成

policy_templates_contents

「管理者の権限が必要です」のダイアログが表示されたら続行をクリックします。

Confirm_continue
3. ローカルグループポリシーエディターを起動する
  1. 「ファイル名を指定して実行」を起動する:Win
  2. 名前:gpedit.msc
  3. OKをクリックする

Exec-gpeditmsc


gpeditmsc_chromeaddG
4. 拡張機能IDを調べる
Chromeの拡張機能画面を開いてストリームレコーダーのの拡張機能IDを調べます。

ストリームレコーダーのID:iogidnfllpdhagebkblkgbfijkbkjdmm

StreamRecorder_devmode
5. ホワイトリストに拡張機能IDを登録する
gpedit.msc > ローカルコンピューターポリシー >ユーザーの構成 > 管理用テンプレート > Google Chrome > 拡張機能

「拡張機能インストールのホワイトリストを設定する」を開く。

gpeditmsc_whitelist

拡張機能IDを登録する手順
  1. 「有効」にチェックをつける
  2. オプションの下の窓の表示...をクリックする
  3. 値:iogidnfllpdhagebkblkgbfijkbkjdmm(ストリームレコーダーの拡張機能ID) を入力する
  4. OKをクリックする
  5. 適用をクリックする
  6. OKをクリックする
  7. 手順終了

add_whitelist

資料

ホワイトリストの説明文を転載します。
ブラックリストの対象外となる拡張機能を指定できます。

ブラックリストの値が「*」の場合、すべての拡張機能がブラックリストに登録されており、ユーザーはホワイトリストにリストされている拡張機能しかインストールできません。

デフォルトでは、すべての拡張機能はホワイトリストに登録されていますが、ポリシーによってすべての拡張機能をブラックリストに登録している場合、ホワイトリストを使ってそのポリシーをオーバーライドできます。

あとがき

記述時点で、ストリームレコーダーはChromeウェブストアから姿を消していますが、バックアップファイルを利用して動作させることができました。

ダイアログは消すことができませんでした。

別のアプローチとしては、chrome.dllをバイナリエディタで編集する方法が見つかりましたが、Chromeをアップデートするたびにchrome.dllが正規版に置き換わるので検証する気になれませんでした。

chrome.dllの手順は外部リンクに貼ってます。

検証:Windows 10 Pro October 2018 Update, v1809.17763.592
Google Chrome 75.0.3770.100, 64-bit
SC2
ブログサークルSNS
クリックして応援してね!
人気ブログランキングPVアクセスランキング にほんブログ村ブログランキング・にほんブログ村へ

このサイトを検索 | Search this site