
【Google Cloud/Workspace】Chrome Enterprise Core でデバイス単位のアクセス制御ができるかの検証をやってみた
このブログを見つけていただきありがとうございます!
コンサルティング部のみゃんです。
最近雨が続いていますね。
私は最近ジムに通い始めて、以前よりは低気圧に悩まされなくなりました。
運動の秋にしたい今日この頃です。
さて突然ですが、Googleが提供している「Chrome Enterprise Premium」というサービスはご存知でしょうか。
簡単に言うと、ChromeブラウザとGoogle Cloudの仕組みを組み合わせて、企業のWeb利用を保護するセキュリティサービスです。
ブラウザ上でのフィッシング・マルウェア対策や、コピー・ダウンロードなどを制御するDLP、ユーザー・端末・場所などの条件に応じたアプリへのアクセス制御を提供します。
Chrome Enterprise Coreの管理機能を拡張する有料サービスで、特に端末や利用状況を確認してからアクセスを許可するゼロトラスト運用に役立ちます。
Google Cloud上で様々なセキュリティサービスを活用して、外部からの不正なアクセスを防御する対策はしているけれども、万が一開発者や管理者のセッション情報が漏洩して、悪意のある第三者が強い権限でGoogle Cloud上のサービスにアクセスできるようになってしまったらどうしよう。
こんな懸念がある場合の1つの対策として、活用できないかと考え、検証してみることにしました。
今回IP制限等ではなく、デバイスの何らかの属性を元にアクセス制御をかけることで、セッション情報が漏洩しても許可していないデバイスからのアクセスを拒否できるのではないかと考えました。
しかし、いざ検証しようとしたところ、私の検証環境では「Chrome Enterprise Premium」を使用することができませんでした。(未契約のため)
そこで無料版の「Chrome Enterprise Core」で同じようなことができないかを検証することにしました。
本ブログは「Chrome Enterprise Core」によるデバイスレベルでのアクセス制御についての検証記事となります。
まずは結論から
忙しい人のために、まずは結論です。
「Chrome Enterprise Core」ではデバイスレベルでのアクセス制御はできませんでした!
公式ドキュメントにも、Google CloudのAccess Context Managerのコンソール画面にも明記されています。
それでは、そもそもなぜ検証をやってみるに至ったのかというと、公式ドキュメント上、一縷の望みが見えたからです。
該当の公式ドキュメントはこちら。

「デバイス証明書を使用したアクセスレベル」という行が今回検証したいアクセスポリシーです。
Coreの列を見るとチェックが付いているので、Coreでもできるのではないかと考えました。
ただし、アクセスレベルを作成するためには、組織レベルのライセンスが必要とも明記されているため、どっちみちPremiumライセンスが必要な可能性は高いなと思いました。
実際にやってみないことには、わからないので一縷の望みにかけて検証しましたが、結果このアクセスレベルの作成時にライセンスが必要という旨のエラーが出て作成できませんでした。
組織レベルのライセンスがあり、アクセスレベルさえ作成してしまえば、ライセンスを適用していないユーザーへもデバイス証明書を使用したアクセス制御を設定できるのではないかと考えているので、こちらは別途検証したいと思います。
それでは今回の検証内容の詳細を紹介していきます!
やってみた
前提条件
検証を行う上での、前提条件はこちらです。
- Google Workspace 管理コンソール上で、Endpoint Verificationが有効になっていること
- 有効化する手順
- 「エンドポイントの確認を使用してデバイス シグナルを収集する」がオンになっていることを確認する


仕組み
今回検証するデバイス証明書を使用したアクセス制御は「Endpoint Verification」という仕組みを使用します。
Access Context Managerを使用して、Google Cloudのプロジェクトやリソース等に対する属性レベルでのアクセス制御を設定することができます。
仕組みは以下のイメージです。

システム要件としては、Chromeブラウザのみの対応となります。そのため、対応しているOSは以下です。
- Apple Mac OS X El Capitan (10.11) 以降
- ChromeOS 110以降
- Linux DebianまたはUbuntu(CPUはAES命令をサポートしている必要があります)
- マイクロソフト Windows 10 および 11
手順
以下の公式ドキュメントに従って、設定を進めました。
まず管理するデバイスに、Endpoint Verification(Chrome拡張機能)をインストールする必要があります。
Chromeの拡張機能なので、自分でインストールすることも可能です。
今回は管理者側で自動インストールを設定する方法を試してみました。
【Google Workspace管理コンソール】
「デバイス」>「Chrome」>「アプリと拡張機能」>「ユーザーとブラウザ」を開きます。
「組織部門」から対象の組織を選択します。(今回は検証用組織「Miyama-test」を選択)
右下に「+」マークがあるので、そちらから「Chromeウェブストアから追加」を押下します。

「Endpoint Verification」を検索し、選択します。


「証明書の管理」>「鍵へのアクセスを許可する」と「企業向けアプリの真正性確認を許可する」をオンにします。

「インストールポリシー」>「インストールを許可する」>「自動インストールする」を選択します。



「保存」を押下します。

数分待つと、デバイス側(私のMac端末)のChrome上の拡張機能に「Endpoint Verification」が追加されました。
有効/無効のトグルは非活性化されており、ユーザー側で無効にすることはできなくなっていました。

管理コンソール上で、デバイスが管理対象となっていることを確認してみます。
「デバイス」>「モバイルとエンドポイント」より対象のデバイスを選択し、「管理元」を確認します。
「エンドポイントの確認」となっていれば、「Endpoint Verification」の管理対象です。

【Google Cloudコンソール】
無事デバイスが管理対象として登録されたので、次にアクセスレベルを作成します。
検証プロジェクトでは、Access Context ManagerのAPIの有効化がされていなかったので、有効化します。
gcloud services enable accesscontextmanager.googleapis.com

アクセスレベルを設定するためのYAMLを作成します。
cat > level-cba.yaml <<'EOF'
expression: "certificateBindingState(origin, device) == CertificateBindingState.CERT_MATCHES_EXISTING_DEVICE"
EOF
ポリシーIDを確認します。
gcloud access-context-manager policies list --organization=<組織のID>
NAME 列の数字がポリシーIDです。SCOPES が空の行が組織全体のポリシー(組織レベルのアクセスポリシー)で、今回使うのはこちらです。SCOPES にフォルダやプロジェクトが入っている行は、範囲を限定したポリシー(スコープ付きポリシー)です。アクセスバインディングで使えるのは組織レベルのポリシーのアクセスレベルだけなので、この行は使いません。
証明書ベースのアクセス(CBA)のアクセスレベルを作成します。
${POLICY_ID}は先ほど確認したポリシーIDに置き換えて実行します。
gcloud access-context-manager levels create core_test_cba \
--title="core-test-cba" \
--custom-level-spec=level-cba.yaml \
--policy=${POLICY_ID}
エラーになりました。
組織にライセンスが必要というエラーです。
ERROR: (gcloud.access-context-manager.levels.create) FAILED_PRECONDITION: Org owning policy must have license

切り分けのため、デバイス属性を使用しない基本アクセスレベルを作成してみます。
cat > level-region-only.yaml <<'EOF'
- regions:
- JP
EOF
gcloud access-context-manager levels create core_test_region_only \
--title="core-test-region-only" \
--basic-level-spec=level-region-only.yaml \
--policy=${POLICY_ID}
リージョン制限をするアクセスレベルは作成できました。

コンソール上から、アクセスレベルの作成画面より、デバイスポリシーの設定にはChrome Enterprise Premiumが必要なことがわかります。

Premiumだと何ができるかもコンソール上から表を確認できました。
デバイス属性の制御はPremiumが必要です。

まとめ
以上の検証から、やはりドキュメント通り、デバイス証明書をはじめデバイス属性を使用するアクセスレベルの作成にはPremiumのライセンスが必要なようです。
また今回は検証できませんでしたが、デバイス証明書による制御にはデバイス側にヘルパーアプリを入れる必要なので、別途検証したいと思います。
「Chrome Enterprise Premium」には最大5,000ユーザーまで60日間無料で使えるトライアルが用意されています。期間終了後も保護を継続する場合は、サブスクリプションを購入する必要がありますが、まずはこちらの無料トライアルでお試しいただくのが良いかと思います!
ここまで読んでいただきありがとうございます!
以上、コンサルティング部のみゃんでした!
参考リンク








