見出し画像

Intuneを使いChromeの拡張機能(Windows Account)を常時セットした状態にする

Chromeを通常使うブラウザにしてAzureADの多要素認証を利用のシングルサインオンを行っているとSaaSに切り替わらずこんなメッセージが出る事があります。

拡張機能を要求してきますね。

これは単純に拡張機能と書かれたリンクから飛べるWindowsAccountをChromeに追加すれば良い話なのですが

こいつね

こやつ、Chromeのアップデート時とかに急に消えてたりするので結構厄介なんですよね…(GoogleAccount利用ならレジストリに入るので良いのですがGWS使ってない会社だと本来ログイン無しで使ってたりするし…)
ですので今回はIntuneを使いこいつを直接レジストリに書き込んで必ず拡張機能が導入された状態にしてしまおうと思います。

尚、先にお伝えしますが今回の手順に関してはほぼ先人の知恵を多少アレンジしただけで出来てしまいます。
色々な所に応用の効く話ではありますので、国井さんとShinichiroKosugiさんの記事も是非参考になさって下さい。

国井さんのBlog

@ShinichiroKosugiさんのQiita

拡張機能は何処で制御されているのか?

こちらについては国井さんのBlogにてレジストリ内の以下のキーに拡張機能の詳細が書き込まれ、制御されている事が解説されています。

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist

引用先:Intuneを使ってChromeに拡張機能を自動追加する(https://azuread.net/archives/11640)

実際に見てみますと

まだWindows Accountを入れていない状態でコレ

色々な端末でチェックしてみましたがGoogleAccountログインしている端末であれば、値の名前1,2,3と連番で値の名前が登録され、それぞれに何らかのレジストリ情報が書き込まれてるっぽい。

では実際に登録してみる

今回は全社員に共通するレジストリを書き込む想定していますので値が重複しないよう、とりあえず連番ではここまで利用しないであろうという「10」という値で拡張機能の追加を行ってみます。

こちらも国井さんのBlog情報そのままになりますが拡張機能の追加は先程のキーに以下のような値を追加する事で実現できるとあります。

名前:(任意の数字)
種類:文字列値(REG_SZ)
データ:<拡張子ID>;https://clients2.google.com/service/update2/crx

Intuneを使ってChromeに拡張機能を自動追加する
https://azuread.net/archives/11640

上記でも解説したように、上記キーには1,2,3と連番で値の名前が付番されて各機能が制御されているようですので、確実に使わないと思われる番号を名前に付番し(今回はいとぅは「10」で登録)、制御します。
そして拡張子IDですがChromeのWEBストアにて番号を確認します。

拡張子IDを確認

最終的に自分の環境では以下の値を書き込みました。

名前:10
種類:文字列値(REG_SZ)
データ:ppnbnpeolgkicgegkbkbjmhlideopiji;https://clients2.google.com/service/update2/crx
しっかり書き込み完了!

書き込み後にChromeを再起動すると拡張機能がポリシー追加によって追加&制御されていることが確認できます。

WindowsAccountが追加されました!

値の名前ですが文字列でなければ4桁の数字でも機能追加出来たのを確認でしております。この辺は各社の環境によって指定数字を変えてあげれば良いのではないかと思います(体感ですが10でも十分だとは思いますが…為念環境はご確認下さい)

レジストリをIntuneで配布する

レジストリ追加の仕方は判りましたので、次はこの設定をIntuneでどう配るかについて解説していきます。
※…とはいっても配布部分についてはほぼ@ShinichiroKosugiさんの内容と重複していますので悪しからず…。

レジストリをフォルダに保管する

まずは先程実行したレジストリをエクスポートします。

レジストリの値を選択肢てエクスポート

この辺は特に説明不要かと思いますが、この後配布を行う為のIntunewinファイルに変換しますので、何らかのフォルダに格納を行って下さい。

Intunewinファイルの作成

Microsoft Win32 コンテンツ準備ツールリンクよりIntuneWinAppUtil.exeをダウンロードし、レジストリを配布できる状態に変換します。
※今回はエクスポートした【kakucho.reg】をCドライブ直下【kakucho】というフォルダに格納した場合で解説します。

今回は個々にレジストリファイルとIntunewinファイルを生成します。

IntuneWinAppUtilで行うコマンドは以下の通り

Please specify the source folder: c:\kakucho
Please specify the setup file: kakucho.reg
Please specify the output folder: c:\kakucho
Do you want to specify catalog folder (Y/N)?N

上記コマンドが通れば指定フォルダにIntunewinファイルが生成されます。

無事kakucho.intunewinファイルが生成されました

作成したファイルをIntuneに設定する

それでは、生成したIntunewinファイルを配布するためにIntuneに登録していきましょう!

Intuneの画面からアプリ>Windowsの画面で追加を実施します。

追加ボタンを押します

アプリの種類はWindowsアプリ(Win32)を選択です。

アプリパッケージとして先程のkakucho.intunewinファイルを選択

アプリ情報は配信情報が分かる程度でOKですね。

必須事項を埋めるだけでもOKかと思います。

アプリケーションの編集ではインストールコマンド、アンインストールコマンドに同様の情報を記入します。
<レジストリ名>は各自で設定した名称に変更して下さい。
後はインストールの処理を必ず「ユーザ」にするのも忘れずに!
※こちらも国井さんのBlogで解説されています。

regedit.exe /s <レジストリ名>.reg
他の設定はこんな感じ

必要条件は必要なアーキテクチャ(32bit,64bit)を選択。
OSのバージョンは自社環境に合わせて選択すればよいかと思います。

見栄はってますがまだ21H1以前のOSがあったのは内緒…(;´Д`)

検出条件は手動構成で行うを選択し、レジストリを選んだら以下の情報を書き込みます。キーパスを書く時にレジストリエディタに表示されるパスのComputerがたまに日本語になってるケースがあるので注意です。

■キーパス
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist
■値の名前
10(レジストリの値の名前と同じ)
■検出方法
値が存在する
ここを間違えると上手く配信されません

ユーザの割り当ては特筆することはないですが再起動がかかる処理でもありませんので、コンテンツはバックグラウンドで実施し、エンドユーザの通知部分はトースト非通知にしておけば余計な問い合わせは減るかと思いますw

バックグラウンド実行でトーストは非通知でいいでしょう。

以上で配信準備は完了です。
まぁ最初はグループを絞って配信されているかどうかをテストすることをオススメします。その際に気を付けなければいけないのは、配信が行われてもChromeが起動している場合は適用が行われませんので配布確認後には必ずChromeを再起動するのを忘れないようにして下さい。

最後に

最初これをIntuneで配布しようとした際には配布設定の細かいパラメータ部分で結構ミスをしており、なかなか配布できずに悩みました…。
※例えばキーパスのコンピューターが日本語表記だったetc…

正直レジストリ自体はGPOであれば配布できますので。正直ActiveDirectory環境がある会社はこちらにセットして配布したほうが多分簡単です。
ただ、その場合社内ネットワーク接続時でないと配布できませんので、Intuneで配布する価値はそれなりにあるのではないかと思います。

重ねてになりますが、今回のこの処理のほとんどは先人のBlog情報の焼き直しになりますので重ねて国井さん、ShinichiroKosugiさんのアウトプットには感謝しております…本当にありがとうございます。

この記事が気に入ったらサポートをしてみませんか?