1 つ以上の接続テストの Identity and Access Management(IAM)(アクセス制御)ポリシーを設定または取得できます。さらに、特定の接続テストに対するユーザーやサービス アカウントの権限を表示できます。
このドキュメントでは、Network Management API を使用するアクセス制御の例を示します。 Google Cloud コンソールまたは gcloud コマンドを使用してこの手順を行うには、IAM 入門ガイドをご覧ください。
以降のコマンドに記載されているポリシー バインディングと ETag については、IAM ポリシーの API リファレンスをご覧ください。
接続テストの実行に必要な IAM のロールと権限については、ロールと権限をご覧ください。
アクセス制御ポリシーを設定する
この手順では、指定された接続テストリソースにアクセス制御ポリシーを設定します。
API
networkmanagement.connectivitytests.setIamPolicy メソッドを使用して、USER、ROLE、TEST_ID のアクセス制御ポリシーを設定します。
次の例では、networkmanagement.admin のロールを mytest-1 の username@yourcompany.com にバインドするポリシーを設定します。
 POST https: //networkmanagement.googleapis.com/v1/{resource=projects/*/locations/global/connectivityTests/TEST_ID}:setIamPolicy
   {
     "version": "VERSION",
     "etag": "ETAG",
     "bindings": [{
       "role": "ROLE",
       "members": [
         "PRINCIPAL"
       ]
     }]
   }
次の値を置き換えます。
TEST_ID: 実行中の接続テスト オブジェクト(テスト)の IDVERSION: ポリシーの形式を指定します。有効な値は、0、1、3のいずれかです。条件付きロール バインディングに影響するオペレーションにはすべて、バージョン3を指定する必要があります。ETAG: オプティミスティック同時実行制御でポリシーの同時更新による相互上書きを防ぐために使用されます(ETag はBwWbrqiZFRs=などです)。ROLE: プリンシパルに割り当てるロール(roles/networkmanagement.adminなど)。PRINCIPAL: Google Cloud リソースへのアクセスをリクエストする ID(user:username@yourcompany.comなど)を指定します。プリンシパル(メンバー)のタイプのリストについては、IAM ポリシーの API リファレンスをご覧ください。
アクセス制御ポリシーを取得する
この手順では、指定された接続テストリソースのアクセス制御ポリシーを取得します。
API
networkmanagement.connectivitytests.getIamPolicy メソッドを使用して、PRINCIPAL、ROLE、TEST_ID のアクセス制御ポリシーを設定します。
次の例では、networkmanagement.admin のロールをmytest-1 の username@yourcompany.com にバインドするポリシーを取得します。
  GET https: //networkmanagement.googleapis.com/v1/{resource=projects/*/locations/global/connectivityTests/TEST_ID}:getIamPolicy
    {
      "version": "VERSION",
      "etag": "ETAG",
      "bindings": [{
        "role": "ROLE",
        "members": [
          "PRINCIPAL"
        ]
      }]
    }
次の値を置き換えます。
TEST_ID: 実行中の接続テスト オブジェクト(テスト)の IDVERSION: ポリシーの形式を指定します。有効な値は、0、1、3のいずれかです。条件付きロール バインディングに影響するオペレーションにはすべて、バージョン3を指定する必要があります。ETAG: オプティミスティック同時実行制御でポリシーの同時更新による相互上書きを防ぐために使用されます(ETag はBwWbrqiZFRs=などです)。ROLE: プリンシパルに割り当てるロール(roles/networkmanagement.adminなど)。PRINCIPAL: Google Cloud リソースへのアクセスをリクエストする ID(user:username@yourcompany.comなど)を指定します。プリンシパルのタイプのリストについては、IAM ポリシーの API リファレンスをご覧ください。
IAM 権限をテストする
この手順では、接続テストリソースに対してユーザーまたはサービス アカウントが持つ権限を返します。
API
networkmanagement.connectivitytests.testIamPermissions メソッドを使用して、TEST_ID に割り当てられた権限を返します。
次の例では、username@yourcompany.com に mytest-1 に対する networkmanagement.connectivitytests.get 権限があることを確認します。
  POST https://networkmanagement.googleapis.com/v1/{resource=projects/*/locations/global/connectivityTests/TEST_ID}:testIamPermissions
    {
      "permissions": [
        "networkmanagement.connectivitytests.get"
      ]
    }
TEST_ID を、実行中の接続テスト オブジェクト(テスト)の ID に置き換えます。