Why|なぜやるのか?
- 「Google Chrome拡張機能」の社内利用について、どのように管理されていますでしょうか?
- ソフトウェアとは異なり、インストール時に「管理者権限」が要求されるわけではない
- 「Chrome ウェブストア」上で提供されているため、Googleによる最低限の審査?管理?が行われている
- と同時に、「個人情報取得→漏洩のリスク」「悪意のある拡張機能の存在」は考慮する必要がある
- 上記の理由から、部門横断で業務効率化に寄与する拡張機能を「ホワイトリスト」として一覧化することとしました
- 「ホワイトリスト」に掲載されている拡張機能はユーザが自由にインストール可能とし、非掲載の拡張機能をインストールする場合には「SlackにてIT管理部門へ一声かけてもらう」という運用です
How|どうやってやるのか?
- 「Chrome拡張機能が保存されているユーザフォルダ」に対して、ファイル名を出力するバッチファイルを作成します
- グループポリシーにて「ログオフ」タイミングでスクリプトを実行させるよう設定し、ユーザごとに結果が出力されるようにします
- ユーザごとの出力結果をコマンドで1ファイルにマージし、重複を削除することで、社内ユーザが利用している拡張機能一覧を作成します
- 拡張機能一覧(ユーザ利用の全種)から、IDを基に「Chromeウェブストア」で検索して機能を確認し、「ホワイトリスト」を作成します
What|なにをやるのか?
作成したスクリプト(バッチファイル)
getChromeExtensions.bat
@echo off
chcp 65001
REM ************************************************
REM ログオンユーザのChromeの拡張機能一覧を取得
REM ************************************************
set yyyymmdd=%DATE:/=%
pushd \\hoge\fuga\スクリプト出力先
dir /b /a:d %USERPROFILE%\AppData\Local\Google\Chrome\"User Data"\Default\Extensions > %USERNAME%_%yyyymmdd%.txt
スクリプトの解説
-
dir /b
で「ファイル名のみ」を表示させます -
dir /a:d
で「ファイルのみ(フォルダ以外)」を表示させます - Windowsの場合、Chromeの拡張機能の保存場所は
C:\Users\<ユーザー名>\AppData\Local\Google\Chrome\User Data\Default\Extensions
フォルダ内です - 実行日付を
set
し、username
とともに出力ファイル名として、テキストファイルを作成する -
pushed
に成果物の出力先のパスを指定します
グループポリシーの設定
ユーザの「ログオフ」時に、指定のバッチファイルを実行させる設定を行います
- PCの「スタートアップ」「シャットダウン」をトリガーにしたい場合
- PC側のオブジェクトにGPOを追加する
- ユーザの「ログイン」「ログオフ」をトリガーしたい場合
- ユーザ側のオブジェクトにGPOを追加する
- その他、上手く動作していない場合のチェックポイントには下記を参照しました
ユーザごとの出力結果を集計し「拡張機能一覧」を作成
出力結果は、下記のようなテキストファイルになっています
%USERNAME%_%yyyymmdd%.txt
abcdefghijklmnopqrstuvwxyzabcdef
bcdefghijklmnopqrstuvwxyzabcdefg
cdefghijklmnopqrstuvwxyzabcdefgh
defghijklmnopqrstuvwxyzabcdefghi
efghijklmnopqrstuvwxyzabcdefghij
出力結果のあるフォルダにて下記のコマンドを実行し、ユーザごとの出力結果を1ファイルに纏めます
copy *.txt all¥merge.txt
上記統合ファイルの中身を、Excelやスプレッドシート上で「重複削除」することで、ユーザがインストールしている「拡張機能のID一覧」を作成します
社内的「ホワイトリスト」の作成
今回のバッチファイルではChrome拡張機能のIDを取得しています
アナログにはなりますが、「Chromeウェブストア」で「ID」を検索し、「拡張機能名」と「機能の概要」を把握します
あとは「機能」や「使い勝手」を基に、IT管理部門にて全社的に活用できるものを判断して、「社内ホワイトリスト」に記載します
初回のリスト作成時点で掲載した拡張機能の一例です
-
Black Menu for Google™
- ワンクリックでGoogle各サービスにアクセスできる機能
-
Event Merge for Google Calendar™
- Googleカレンダーを見やすくする機能
-
Google Sheets Row Highlighter
- Googleスプレッドシートでカレントセルの行(列)をハイライトする
-
FireShot
- ウェブページ全体のスクリーンショットを撮影、編集
-
ChatGPT Ctrl+Enter Sender
- ChatGPTでのメッセージ送信を「Ctrl+Enter」に割り当て、途中送信を防ぐ
なお、取得したIDのうち「約25%」はChromeウェブストアで検索結果が出ませんでした。拡張機能ではなくテーマのIDだったりしたのでしょうか?
(補足)「Chrome Stats」を使った拡張機能の簡易リスクチェック
インストールする拡張機能を検索すると、当該拡張機能の「基本情報」と「リスクインパクト」を確認できます
- Risk欄に赤字で「Very high risk impact 」の記載があったら、要確認です
以上です