このページでは、コンテキストアウェア アクセスを設定し、アクセスレベルを Google グループにバインドして、Endpoint Verification をデプロイする方法について説明します。コンテキストアウェア アクセスを使用すると、次のことができます。
ユーザー ID、ネットワーク、ロケーション、デバイスの状態などの属性に基づいて、 Google Cloud リソースのアクセス ポリシーを定義します。
継続的にアクセスするためのセッション時間と再認証方法を制御する。
コンテキストアウェア アクセスは、ユーザーが Google Cloud スコープを必要とするクライアント アプリケーション(ウェブ上の Google Cloud コンソールや Google Cloud CLI など)にアクセスするたびに適用されます。
始める前に
アクセスレベルを作成します。ベーシック アクセスレベルまたはカスタム アクセスレベルを作成できます。詳しくは、アクセスレベルをご覧ください。
アクセスレベルを適用するユーザーを含む Google グループを作成します。コンテキストアウェア アクセスの制限を適用するには、グループをアクセスレベルにバインドします。このグループのユーザーがリソースにアクセスするには、作成したアクセスレベルのいずれかを満たす必要があります。
必要なロール
組織レベルで Cloud アクセス バインディング管理者(roles/accesscontextmanager.gcpAccessAdmin)ロールを付与します。このロールは、Access Context Manager アクセス バインディングの作成に必要です。
コンソール
Google Cloud コンソールで、[IAM] ページに移動します。
プロジェクト セレクタのメニューで、組織 ID を選択します。
[アクセスを許可] をクリックして、以下を構成します。
新しいプリンシパル: 権限を付与するユーザーまたはグループを指定します。
ロールを選択: [Access Context Manager] > [Cloud アクセス バインディング管理者] を選択します。
[保存] をクリックします。
gcloud
組織レベルの IAM 権限を追加するのに十分な権限で認証されていることを確認してください。少なくとも、組織管理者のロールが必要です。
適切な権限があることを確認したら、次のコマンドを実行してログインします。
gcloud auth login次のコマンドを実行して、Cloud アクセス バインディング管理者(
roles/accesscontextmanager.gcpAccessAdmin)ロールを付与します。gcloud organizations add-iam-policy-binding ORGANIZATION_ID \ --member=PRINCIPAL \ --role=roles/accesscontextmanager.gcpAccessAdmin次のように置き換えます。
ORGANIZATION_ID: 組織の ID。組織 ID を確認するには、次のコマンドを使用します。
gcloud organizations list ``` * <code><var>PRINCIPAL</var></code>: the user or group that you want to grant the role to.
Google グループをアクセスレベルにバインドする
Google Cloudリソースにアクセスできるユーザーにコンテキストアウェア アクセスの制限を適用するには、Google グループを 1 つ以上のアクセスレベルにバインドする必要があります。指定されたグループのユーザーは、バインドされたアクセスレベルで定義された条件を満たしている場合にのみアクセス権が付与されます。
グループをアクセスレベルにバインドする
グループをアクセスレベルにバインドするには、 Google Cloud コンソールまたは gcloud CLI を使用します。
コンソール
Google Cloud コンソールを使用してグループをアクセスレベルにバインドする手順は次のとおりです。
Google Cloud コンソールで、[Chrome Enterprise Premium] ページに移動します。
表示された指示に従って組織を選択します。
[ Google Cloud コンソールと API のアクセスを管理する] をクリックします。このページには、既存のアクセス バインディングが一覧表示されます。
[バインディングを作成] をクリックします。
[プリンシパル] セクションで、[追加] をクリックします。
バインドする Google グループのメールアドレスを入力します。
[アクセスレベル] セクションで、グループのメンバーがアクセス権を取得するために満たす必要のあるアクセスレベルを選択します。複数のアクセスレベルは論理和(OR)されます。論理 OR は、リソースにアクセスするには、選択したレベルの少なくとも 1 つの条件を満たす必要があることを意味します。
アクセス バインディングを保存するには、[保存] をクリックします。
バインディングが反映されるまでに数分かかることがあります。バインディングが有効になると、グループのメンバーが Google Cloud コンソールにアクセスしたり、 Google Cloud API とやり取りする gcloud CLI などのツールを使用したりするときに、構成されたアクセスレベルの要件が適用されます。
gcloud
グループをアクセスレベルにバインドするには、次のコマンドを実行します。
gcloud access-context-manager cloud-bindings create \ --group-key=GROUP_EMAIL \ --level=ACCESS_LEVEL_ID \ --organization=ORGANIZATION_ID
次のように置き換えます。
GROUP_EMAIL: バインドする Google グループのメールアドレス(例:my-restricted-users@example.com)。ACCESS_LEVEL_ID: 適用するアクセスレベルの完全なリソース名。リソース名の形式はaccessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAMEです。
POLICY_ID は、次のコマンドを実行してポリシーを一覧表示することで確認できます。
gcloud access-context-manager policies list --organization ORGANIZATION_ID
ORGANIZATION_ID: 省略可。 Google Cloud組織 ID。組織 ID は、gcloud CLI 構成でデフォルトの組織を設定していない場合にのみ必要です。
グループ バインディングを一覧表示する
既存のバインディングを一覧表示するには、次のコマンドを実行します。
gcloud access-context-manager cloud-bindings list \
--organization ORGANIZATION_ID
Endpoint Verification をデプロイする
デバイス属性をアクセス制御ポリシーに統合するための手順として、Endpoint Verification をデプロイすることもできます。この機能を使用すると、OS バージョンや構成などのデバイス属性に基づいてリソースへのアクセスを許可または拒否することで、組織のセキュリティを強化できます。
Endpoint Verification は、macOS、Windows、Linux で Chrome 拡張機能として実行され、モデルや OS バージョンなどのデバイス特性と、ディスク暗号化、ファイアウォール、画面ロック、OS パッチの有無などのセキュリティ特性に基づいてアクセス制御ポリシーを作成できます。
次のステップ
証明書ベースのアクセスを必須にする方法について学習します。これにより、認証情報が不正使用された場合でも、承認されたデバイスのみがリソースにアクセスできるようにして、セキュリティを強化できます。
Google Cloud コンソールを使用して、組織の会社所有のデバイスに管理者として Endpoint Verification 拡張機能をデプロイします。