エンタープライズ向け Chrome 拡張機能ストア
これは、企業向けのプライベート Chrome 拡張機能ストアの概念実証です。
これはLinux上のChromiumでのみテストされていますが、Active Directory ドメインに接続されているマシンの Windows にも同じ原則が適用されます。
注: 「Microsoft® Active Directory® ドメインに参加していない Windows インスタンスの場合、強制インストールは Chrome ウェブストアにリストされているアプリと拡張機能に限定されます。」
プロジェクト全体をローカル フォルダーにダウンロードします。
npm install
実行してパッケージをセットアップします。
sudo npm run first-run
を実行して/etc/chromium/policies/managed/
にポリシー ファイルを作成します。
(Chromium のインスタンスが別のフォルダーを使用している場合は、 make/SETTINGS.js
を編集する必要がある場合があります)
npm start
実行して拡張機能を構築し、単純な Web サーバーを起動してdist/
フォルダーを提供します。
sudo npm run first-run
実行すると/etc/chromium/policies/managed/crx-store-policy.json
に空のポリシー ファイルが作成されます。
権限 777 (すべてのユーザーに対して読み取り/書き込み) を持ちます。
このファイルは、以下のnpm start
によって設定されます。
npm start
実行中make/crx-store-policy.json
から/etc/chromium/policies/managed/crx-store-policy.json
にコピーされます
次のポリシーが含まれます。
これが機能しない場合は、 make/SETTINGS.js
を編集してターゲット フォルダーを次のいずれかに変更する必要がある場合があります。
Chrome は、次のいずれかに該当しない限り、拡張機能をインストールしません。
さらに、ポリシー ExtensionInstallBlocklist が「*」に設定されている場合:
(古いドキュメントでは、ポリシー名 ExtensionInstallBlacklist および ExtensionInstallWhitelist を参照しています。)
npm start
実行すると、 src/extensions/
に 2 つのサンプル拡張機能がビルドされ、 dist/
にコピーされます。
npm start
実行すると、軽量 Web サーバーがポート 5000 でホストされ、 dist/
からファイルが提供されます。
特別なコマンドライン フラグを使用して Chrome を起動すると、追加機能のロックを解除できます。ただし、これはほとんどの企業ユーザーにとって現実的なシナリオではありません。
src/extensions/
のサンプル拡張子を変更するには:
manifest.json
のバージョン番号をインクリメントしてください。npm start
を再実行して、binary.crx ファイルを再構築します。 make/
のコードは CommonJS ではなく ES モジュールを使用します。
Linux にはレジストリがないため、このプロジェクトでは代わりにポリシー ファイルを使用します。
Windows の場合、Active Directory のグループ ポリシーを使用する必要があります。
この手順はオンラインで広く入手できます。
拡張機能を強制的にインストールするには、次のレジストリ キーと子の値を作成します。
カスタム拡張機能ストアを有効にするには、次のレジストリ キーと子の値を作成します。
強制的にインストールされた拡張機能で開発者ツールを有効にするには (運用環境ではこれを削除します):
API enterprise.hardwarePlatform を有効にするには:
http://gromnitsky.blogspot.com/2019/04/crx3.html
(crx3-utilsの作者による)
https://blog.janestreet.com/chrome-extensions-finding-the-missing-proof/
ここを参照してください: https://sites.google.com/site/lock5stat/offline-use/installing-for-all-users
強制的にインストールされた拡張機能は、追加の制限付き API にアクセスできます。実際には、重要な追加 API はenterprise.hardwarePlatform
のみです。
https://github.com/chromium/chromium/blob/master/chrome/common/extensions/api/_permission_features.json から派生
Chrome にはさまざまな拡張 API が付属しています。それらの多くは、ChromeOS および/または Google 独自の拡張機能および/またはコンポーネントのみに制限されています。 (コンポーネントは、ブラウザの機能を拡張する別の方法です。これらは Chrome 開発者専用に予約されています。詳細については、chrome://components を参照してください。)
すべての既知の API と、それらが Windows で利用できるかどうかは次のとおりです。
許可 | Windows の Enterprise Extension で利用可能 |
---|---|
アクセシビリティ機能.変更 | はい |
アクセシビリティ機能.read | はい |
アクセシビリティプライベート | いいえ |
アクティブタブ | はい |
アクティビティログプライベート | いいえ |
自動入力アシスタントプライベート | いいえ |
自動入力プライベート | いいえ |
自動テストプライベート | いいえ |
背景 | はい |
ブックマーク | はい |
点字ディスプレイプライベート | いいえ |
閲覧データ | はい |
証明書プロバイダー | いいえ |
クロムプライベート | いいえ |
chromeos情報プライベート | いいえ |
クリップボード読み取り | はい |
クリップボード書き込み | はい |
コマンドラインプライベート | いいえ |
コマンド.アクセシビリティ | いいえ |
コンテンツ設定 | はい |
コンテキストメニュー | はい |
クッキー | はい |
クラッシュレポートプライベート | いいえ |
暗号トークンプライベート | いいえ |
デバッガ | はい |
開発者プライベート | いいえ |
開発ツール | はい |
宣言的な内容 | はい |
デスクトップキャプチャ | はい |
デスクトップキャプチャプライベート | はい、でも役に立たない |
ドキュメントスキャン | いいえ |
ダウンロード | はい |
ダウンロード.開く | はい |
ダウンロード.シェルフ | はい |
enterprise.deviceAttributes | いいえ |
enterprise.networkingAttributes | いいえ |
エンタープライズ.ハードウェアプラットフォーム | はい |
エンタープライズ.プラットフォームキー | いいえ |
enterprise.platformKeysPrivate | いいえ |
エンタープライズ.レポートプライベート | いいえ |
実験的な | はい、でも役に立たない |
ファイルブラウザハンドラ | いいえ |
ファイルマネージャープライベート | いいえ |
ファイルシステムプロバイダー | いいえ |
フォント設定 | はい |
gcm | はい |
地理位置情報 | はい |
歴史 | はい |
身元 | はい |
アイデンティティ.メール | はい |
アイデンティティプライベート | いいえ |
アイドルテスト | はい、でも役に立たない |
画像ライター非公開 | いいえ |
入力 | はい (Mac ではありません) |
inputMethodPrivate | いいえ |
言語設定プライベート | いいえ |
ランチャー検索プロバイダー | いいえ |
ロックウィンドウ全画面プライベート | いいえ |
ログイン | いいえ |
ログイン画面ストレージ | いいえ |
ログイン画面UI | いいえ |
ログイン状態 | いいえ |
ウェブカメラプライベート | いいえ |
networking.castPrivate | いいえ |
管理 | はい |
メディアプレーヤープライベート | いいえ |
メディアルータープライベート | いいえ |
MDNS | いいえ |
通知 | はい |
エコープライベート | いいえ |
ページキャプチャ | はい |
パスワードプライベート | いいえ |
プラットフォームキー | いいえ |
プラグイン | はい - TODO これは何ですか? |
印刷 | いいえ |
印刷メトリクス | いいえ |
プライバシー | はい |
プロセス | いいえ |
プロキシ | はい |
リソースプライベート | いいえ |
rtcプライベート | いいえ |
安全な閲覧プライベート | いいえ |
スクリプト | はい(m3) |
検索 | はい |
セッション | はい |
設定プライベート | いいえ |
signedInDevices | いいえ(おそらく将来) |
システムプライベート | いいえ |
タブグループ | はい(m3) |
タブ | はい |
タブキャプチャ | はい |
ターミナルプライベート | いいえ |
トップサイト | はい |
一時的な背景 | いいえ(おそらく将来) |
tts | はい |
ttsエンジン | はい |
ユーザープライベート | いいえ |
壁紙 | いいえ |
壁紙プライベート | いいえ |
ウェブナビゲーション | はい |
webrtcオーディオプライベート | いいえ |
webrtcデスクトップキャプチャプライベート | いいえ |
webrtcLoggingプライベート | いいえ |
webrtcLoggingPrivate.audioDebug | いいえ |
ウェブストアプライベート | いいえ |
ファイルの終わり。