このページでは、既存のアクセスレベルを管理する方法について説明します。次のことが可能です。
始める前に
gcloud
コマンドライン ツールを使用するためのデフォルトのアクセス ポリシーを設定する。または
ポリシーの名前を入手する。ポリシー名は、
gcloud
コマンドライン ツールを使用して API 呼び出しを行うコマンドに必要です。デフォルトのアクセス ポリシーを設定する場合は、gcloud
コマンドライン ツールのポリシーを指定する必要はありません。アクセスレベルを管理できる、組織レベルの Identity and Access Management(IAM)の役割を持っていることを確認してください。管理者に、次のいずれかの役割の付与、または同じ権限を持つカスタム役割の割り当てを依頼します。
アクセスレベルを表示するには: Access Context Manager 読み取り(
roles/accesscontextmanager.policyReader
)アクセスレベルを表示、変更するには:Access Context Manager 編集者(
roles/accesscontextmanager.policyEditor
)またはAccess Context Manager 管理者(roles/accesscontextmanager.policyAdmin
)
アクセスレベルを一覧表示する
Console
すべてのアクセスレベルを一覧表示するには、Google Cloud コンソールの [Access Context Manager] ページを開き、プロンプトが表示されたら組織を選択します。組織のアクセスレベルは、各アクセスレベルの構成に関する詳細を含めて、ページ上のグリッドに表示されます。
gcloud
すべてのアクセスレベルを一覧表示するには、list
コマンドを使用します。
gcloud access-context-manager levels list \ [--policy=POLICY_NAME]
ここで
- POLICY_NAME は組織のアクセス ポリシーの名前です。この値は、デフォルトのアクセス ポリシーを設定していない場合にのみ必要です。
出力は、以下のようになります。
NAME TITLE LEVEL_TYPE Device_Trust Device_Trust Extended Basic Service_Group_A Service_Group_A Basic
API
ポリシーのすべてのアクセスレベルを一覧表示するには、accessLevels.list
を呼び出します。
GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels
ここで
- POLICY_NAME は組織のアクセス ポリシーの名前です。
リクエストの本文
リクエストの本文は空にする必要があります。
オプション パラメータ
必要に応じて、次のクエリ パラメータを 1 つ以上含めます。
パラメータ | |
---|---|
pageSize
|
デフォルトでは、 このパラメータを使用して、ページごとに返されるアクセスレベルの数を変更できます。 |
pageToken
|
呼び出しによって返されたアクセスレベルの数がページサイズを超えた場合、レスポンスの本文にページトークンが含まれます。 このパラメータを後続の呼び出しで使用して、結果の次のページを取得できます。 |
accessLevelFormat
|
通常、アクセスレベルは、 このパラメータに値 |
レスポンスの本文
成功した場合、呼び出しのレスポンス本文に、アクセスレベルを一覧表示する AccessLevels
オブジェクトと nextPageToken
文字列が含まれています。nextPageToken
は、返されるアクセスレベルの数がページサイズを超えた場合にのみ値を持ちます。それ以外の場合、nextPageToken
は空の文字列として返されます。
アクセスレベルを一覧表示する(形式)
gcloud
コマンドライン ツールを使用すると、YAML または JSON 形式でアクセスレベルのリストを取得できます。
アクセスレベルの整形されたリストを取得するには、list
コマンドを使用します。
gcloud access-context-manager levels list \ --format=FORMAT \ [--policy=POLICY_NAME]
ここで
FORMAT は次のいずれかの値です。
list
(YAML 形式)json
(JSON 形式)
POLICY_NAME は組織のアクセス ポリシーの名前です。この値は、デフォルトのアクセス ポリシーを設定していない場合にのみ必要です。
YAML 出力は、以下のようになります。
- basic: {'conditions': [{'ipSubnetworks': ['8.8.0/24']}]} description: Level for corp access. name: accessPolicies/165717541651/accessLevels/corp_level title: Corp Level - basic: {'combiningFunction': 'OR', 'conditions': [{'ipSubnetworks': ['8.8.0/24']}]} description: Level for net access. name: accessPolicies/165717541651/accessLevels/net_level title: Net Level
JSON 出力は、以下のようになります。
[ { "basic": { "conditions": [ { "ipSubnetworks": [ "8.8.0/24" ] } ] }, "description": "Level for corp access.", "name": "accessPolicies/165717541651/accessLevels/corp_level", "title": "Corp Level" }, { "basic": { "combiningFunction": "OR", "conditions": [ { "ipSubnetworks": [ "8.8.0/24" ] } ] }, "description": "Level for net access.", "name": "accessPolicies/165717541651/accessLevels/net_level", "title": "Net Level" } ]
アクセスレベルを説明する
Console
Google Cloud コンソールを使用してアクセスレベルを一覧表示する手順をご覧ください。アクセスレベルを一覧表示すると、表示されるグリッドに詳細が表示されます。
gcloud
アクセスレベルの一覧表示では、名前、タイトル、レベルの種類のみが表示されます。レベルの実際の動作に関する詳細情報を取得するには、describe
コマンドを使用します。
gcloud access-context-manager levels describe LEVEL_NAME \ [--policy=POLICY_NAME]
ここで
LEVEL_NAME は、説明するアクセスレベルの名前です。
POLICY_NAME は組織のアクセス ポリシーの名前です。この値は、デフォルトのアクセス ポリシーを設定していない場合にのみ必要です。
このコマンドでは、レベルに関する情報を YAML 形式で印刷します。たとえば、レベルによって特定のオペレーティング システム バージョンへのアクセスが制限されている場合、出力は次のようになります。
basic: conditions: - devicePolicy: allowedEncryptionStatuses: - ENCRYPTED osConstraints: - minimumVersion: 10.13.6 osType: DESKTOP_MAC - minimumVersion: 10.0.18219 osType: DESKTOP_WINDOWS - minimumVersion: 68.0.3440 osType: DESKTOP_CHROME_OS requireScreenlock: true name: accessPolicies/330193482019/accessLevels/Device_Trust title: Device_Trust Extended
API
アクセスレベルの一覧表示では、レベルの名前、タイトル、種類のみが表示されます。
アクセスレベルに関する詳細情報を取得するには、accessLevels.get
を呼び出します。
GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME
ここで
POLICY_NAME は組織のアクセス ポリシーの名前です。
LEVEL_NAME は、説明するアクセスレベルの名前です。
リクエストの本文
リクエストの本文は空にする必要があります。
オプション パラメータ
必要に応じて、accessLevelFormat
クエリ パラメータを含めます。通常、アクセスレベルは、BasicLevel
または CustomLevel
として定義されているとおりに返されます。
このパラメータに値 CEL
を指定して、Cloud Common Expression Language で BasicLevels
を CustomLevels
として返すことができます。
レスポンスの本文
成功した場合、呼び出しのレスポンス本文に、アクセスレベルで行われる内容、最後にレベルが更新されたのはいつかなどについての詳細を含めて AccessLevel
リソースが含まれています。
アクセスレベルを更新する
このセクションでは、個々のアクセスレベルを更新する方法について説明します。1 つのオペレーションで組織のすべてのアクセスレベルを更新するには、アクセスレベルの一括変更をご覧ください。
Console
アクセスレベルを更新するには、次の手順を行います。
Google Cloud コンソールで [Access Context Manager] ページを開きます。
プロンプトが表示されたら、組織を選択します。
グリッドで、更新するアクセスレベルの名前をクリックします。
[アクセスレベルの編集] ウィンドウで、アクセスレベルを変更します。
追加または変更できる属性の完全なリストについては、アクセスレベルの属性をお読みください。
[保存] をクリックします。
既存の条件の更新や削除だけでなく、新しい条件を追加したり、既存の条件に新しい属性を追加したりできます。
gcloud
アクセスレベルを更新するには、update
コマンドを使用します。
ベーシック アクセスレベル:
gcloud access-context-manager levels update LEVEL_NAME \ --basic-level-spec=FILE \ [--policy=POLICY_NAME]
カスタム アクセスレベル:
gcloud access-context-manager levels update LEVEL_NAME \ --custom-level-spec=FILE \ [--policy=POLICY_NAME]
ここで
LEVEL_NAME は、更新するアクセスレベルの名前です。
FILE は、アクセスレベルの条件を定義する(ベーシック アクセスレベルの場合)、または単一のブール値に解決される CEL 式を定義する(カスタム アクセスレベルの場合)、.yaml ファイルの名前です。
ベーシック アクセスレベル条件で使用できる属性の完全なリストについては、アクセスレベルの属性をお読みください。
POLICY_NAME は組織のアクセス ポリシーの名前です。この値は、デフォルトのアクセス ポリシーを設定していない場合にのみ必要です。
以下のオプションを 1 つ以上指定できます。
オプション combine-function
このオプションはベーシック アクセスレベルでのみ使用します。
条件を組み合わせる方法を決定します。
有効な値:
AND
、OR
description
アクセスレベルの詳細な説明。
title
アクセスレベルの短いタイトル。アクセスレベルのタイトルは Google Cloud コンソールに表示されます。
gcloud 向けフラグを含めることが可能です。
コマンドの例
gcloud access-context-manager levels update Device_Trust \ --basic-level-spec=corpdevspec.yaml \ --combine-function=OR \ --description='Access level that conforms to updated corporate spec.' \ --title='Device_Trust Extended' \ --policy=1034095178592
API
アクセスレベルを更新するには、accessLevels.patch
を呼び出します。
PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME?updateMask=FIELDS
ここで
POLICY_NAME は組織のアクセス ポリシーの名前です。
LEVEL_NAME は、説明するアクセスレベルの名前です。
FIELDS は、更新中の完全修飾されたフィールド名のカンマ区切りリストです。
リクエストの本文
リクエストの本文には、アクセスレベルに加える変更を指定する AccessLevel
リソースを含める必要があります。
レスポンスの本文
成功した場合、呼び出しのレスポンス本文に PATCH 操作に関する詳細を提供する Operation
リソースが含まれます。
アクセスレベルを削除する
Console
アクセスレベルを削除するには、次の手順を行います。
Google Cloud コンソールで [Access Context Manager] ページを開きます。
プロンプトが表示されたら、組織を選択します。
グリッドで、削除するアクセスレベルの行の
ボタンをクリックします。[削除] をクリックします。
表示されるダイアログ ボックスで、アクセスレベルを削除することを確認します。
gcloud
アクセスレベルを削除するには、次の手順を行います。
アクセスレベルを削除するには、
delete
コマンドを使用します。gcloud access-context-manager levels delete LEVEL_NAME \ [--policy=POLICY_NAME]
ここで
LEVEL_NAME は、削除するアクセスレベルの名前です。
POLICY_NAME は組織のアクセス ポリシーの名前です。この値は、デフォルトのアクセス ポリシーを設定していない場合にのみ必要です。
アクセスレベルを削除することを確認します。
次に例を示します。
You are about to delete level Device_Trust Do you want to continue (Y/n)?
You should see output similar to the following:
Waiting for operation [accessPolicies/330193482019/accessLevels/Device_Trust/delete/1531171874311645] to complete...done. Deleted level [Device_Trust].
API
アクセスレベルを削除するには、accessLevels.delete
を呼び出します。
DELETE https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME
ここで
POLICY_NAME は組織のアクセス ポリシーの名前です。
LEVEL_NAME は、説明するアクセスレベルの名前です。
リクエストの本文
リクエストの本文は空にする必要があります。
レスポンスの本文
成功した場合、呼び出しのレスポンス本文に削除オペレーションに関する詳細を説明する Operation
リソースが含まれています。