このページでは、ベーシック アクセスレベルの作成方法ついて説明します。カスタム アクセスレベルを作成して Google Cloud コンソールで詳細モードを使用するには、カスタム アクセスレベルの作成をご覧ください。
このページでは、アクセスレベルの具体的な実装方法について説明します。次の例をご覧ください。
始める前に
- アクセスレベルについて学習します。
ベーシック アクセスレベルを作成する
コンソール
ベーシック アクセスレベルを作成するには:
Google Cloud コンソールで [Access Context Manager] ページを開きます。
プロンプトが表示されたら、組織を選択します。
[Access Context Manager] ページの上部にある [新規] をクリックします。
[新しいアクセスレベル] パネルで、次の操作を行います。
[アクセスレベルのタイトル] フィールドに、アクセスレベルのタイトルを入力します。 タイトルは最大 50 文字です。先頭は英字にしてください。その後には、数字、英字、アンダースコア、スペースのみ使用できます。
[条件] セクションで、追加する属性のタイプの追加ボタンをクリックし、その属性に適用する値を指定します。
追加できる属性の完全なリストについては、アクセスレベルの属性をお読みください。
たとえば、ネットワーク内のどこからリクエストが発信されているかをアクセスレベルで考慮する場合は、[IP サブネットワーク] 属性を選択します。
同じ条件に複数の属性を追加するには、この手順を繰り返します。 条件に複数の属性を設定した場合は、それらすべての属性を満たしているアクセス リクエストのみが対象になります。
アクセスレベル条件には、それぞれの属性タイプを 1 つずつ指定できます。[Device Policy] 属性などの一部の属性では、追加オプションも設定できます。
アクセスレベルでは、ユーザー ID に基づく条件がサポートされています。ただし、条件に ID を追加するには、gcloud CLI または API を使用してアクセスレベルを作成または更新する必要があります。
[条件が満たされている場合に返す] オプションを使用して、リクエストが指定された属性をすべて満たすことを条件とするかどうか(TRUE)、またはリクエストがこれらの属性以外を満たす必要があるかどうか(FALSE)を設定します。
たとえば、ネットワークの特定の IP アドレス範囲からのリクエストを拒否する場合は、IP サブネットワーク属性を使用して IP アドレス範囲を指定し、条件を FALSE に設定します。
必要に応じて、[ADD ANOTHER CONDITION] をクリックしてアクセスレベルに条件を追加してから、前の 2 つの手順を繰り返します。
たとえば、より広い IP アドレス範囲内の IP アドレスのサブセットへのアクセスを拒否する場合は、新しい条件を作成し、IP サブネットワーク属性にサブセット IP アドレス範囲を指定して、FALSE を返すように条件を設定します。
同じアクセスレベルに複数の条件を追加するには、この手順を繰り返します。
複数の条件を作成した場合は、[Combine condition with] を使用して、アクセスレベルで 1 つの条件のみ(OR)、またはすべての条件(AND)を満たすリクエストが必要かどうかを指定します。
[保存] をクリックします。
gcloud
始める前に
- まだ存在していない場合は、組織のアクセス ポリシーを作成します。
gcloud コマンドライン ツールを使用してアクセスレベルを作成するには、gcloud access-context-manager levels create コマンドを使用します。
gcloud access-context-manager levels create LEVEL_NAME OPTIONS \ --policy=POLICY
ここで
LEVEL_NAME はアクセスレベルの一意の名前です。先頭は英字にしてください。その後には英字、数字、アンダースコアのみ使用できます。名前は、最大 50 文字です。
OPTIONS は必須オプションです。次の表に示す複数のオプションから構成されます。
オプション basic-level-specアクセスレベルの 1 つ以上の条件を指定する YAML ファイル。
titleアクセスレベルの短いタイトル。アクセスレベルのタイトルは Google Cloud コンソールに表示されます。
combine-function(省略可)条件を組み合わせる方法を指定します。
有効な値:
AND、ORdescription(省略可)アクセスレベルの詳細な説明。
POLICY は、組織のアクセス ポリシーの ID です。デフォルトのポリシーが設定されている場合、このパラメータは省略できます。
必要に応じて、gcloud の各フラグを含めることもできます。
basic-level-spec YAML ファイル
gcloud コマンドライン ツールを使用してアクセスレベルを作成するときは、basic-level-spec オプションに YAML ファイルを指定する必要があります。YAML ファイルは、アクセスレベルの 1 つ以上の条件を定義します。条件には少なくとも 1 つの属性を含める必要があります。条件に複数の属性が含まれる場合、AND 演算(すべてが true であること)または NAND 演算(true を含めないこと)として組み合わせてることができます。これは、条件に negate 属性が含まれているかどうかによって異なります。
YAML ファイルに含めることが可能な属性の完全なリストについては、アクセスレベルの属性をお読みください。
アクセスレベルと YAML の詳細については、アクセスレベルの YAML の例をご覧ください。
コマンドの例
gcloud access-context-manager levels create Device_Trust \
--basic-level-spec=corpdevspec.yaml \
--combine-function=AND \
--description='Access level that conforms to corporate spec.' \
--title='Device_Trust Extended' \
--policy=1521580097614100
API
始める前に
- まだ存在していない場合は、組織のアクセス ポリシーを作成します。
アクセスレベルを作成するには、accessLevels.create を呼び出します。
POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY/accessLevels
ここで
- POLICY は、組織のアクセス ポリシーの ID です。
リクエストの本文
リクエスト本文には、新しいアクセスレベルに必要な条件を指定する AccessLevel リソースを含める必要があります。
それぞれの Condition に、AND 演算(すべて true であること)または NAND 演算(true を含めないこと)として評価される属性が 1 つ以上含まれます。これは、negate フィールドが