接続要求の確認

サービス・プロバイダーは、コンシューマー・アカウント ID の管理を担当します。 現在、アカウントIDの追跡や検証はサポートされていません。 詳しくは、 コンシューマー・アカウント ID の管理に関する責任 を参照してください。

デフォルトのポリシーが「 レビュー」 に設定されている場合、 アカウントポリシーが 「レビュー」 に設定されている場合、着信接続リクエストについて通知されます。 これらのリクエストは、許可、拒否、取り消しのいずれかを選択できる。 プライベート・パス・サービスの「詳細」ページでは、許可された接続要求、拒否された接続要求、または有効期限が切れた接続要求を表示することもできます。

接続リクエストを処理する際には、次の3つのオプションから選択できます:

  • 許可-アカウントのサービスへの接続要求を許可します。 発信元アカウント IDを確認し、接続要求が正当であることを確認してください。 信頼できる送信元からのリクエストのみを受け入れるべきです。 このリクエストを認識しない場合は、拒否するか、自動的に期限切れになるまで放置できます。

  • 拒否-サービスへのアカウントの接続要求を拒否します。 リクエストを拒否して後で許可する場合、コンシューマはVPE(Virtual Private Endpoint)ゲートウェイを作成して新しい接続リクエストを作成する必要がある。

  • 取り消し-このアカウント ID から既存の接続をすべて削除します。 このアカウントIDに対してアカウントポリシーが存在する場合、そのステータスは拒否に更新され、存在しない場合、拒否ポリシーがこのアカウントIDに対して作成されます。

すべての接続要求を確認する必要がない場合は、デフォルト・ポリシーを変更するか、アカウント固有のポリシーを作成することで、プロセスを簡素化できます。 詳しくは、 アカウント・ポリシーについて を参照してください。

サービスプロバイダーとして、コンソール、CLI、API、またはTerraformを使用して、サービスへの接続リクエストを確認し、優先順位付け(許可、拒否、または取り消し)を行うことができます。

コンソールで接続要求を確認する

IBM Cloud コンソールで着信接続要求をトリアージするには、以下の手順を実行します。

  1. ブラウザーから、IBM Cloud コンソールを開き、アカウントにログインします。
  2. ナビゲーション メニューナビゲーション メニュー アイコン を選択し、 インフラストラクチャVPC アイコン > ネットワーク > プライベート パス サービスをクリックします。
  3. VPC のプライベートパスサービスの表で、プライベートパスサービスの名前をクリックすると、その詳細ページが表示されます。
  4. 接続セクションまでスクロールして、接続リクエストを確認します。 Actionsメニュー Actionsメニュー Actionsをクリックし、接続要求を許可、拒否、または取り消すオプションを選択します。 オプションを選択すると、選択内容を確認するプロンプトが出され、オプションでアカウント ID のアカウント・ポリシーを作成することができます。

アカウント IDに関連付けられている消費者に、あなたの操作が通知されます。 許可されている場合、コンシューマーはサービスにアクセスできるようになります。

接続要求は 30 日後に有効期限が切れます。

CLI からの接続要求の確認

以下の例は、CLI を使用してアカウント固有の接続要求を許可または拒否する方法を示しています。

始める前に、CLI 環境のセットアップを確認してください。

CLI からの接続要求の許可

CLI からプライベート・パス・サービスへの接続を許可するには、以下の手順を実行します。

  1. 以下のコマンドを入力します。
ibmcloud is private-path-service-gateway-endpoint-gateway-binding-permit PRIVATE_PATH_SERVICE_GATEWAY ENDPOINT_GATEWAY_BINDING
    (--set-account-policy true | false)
    [--output JSON] [-q, --quiet]

ここで、

PRIVATE_PATH_SERVICE_GATEWAY
プライベートパスサービスのIDまたは名前を示します。
ENDPOINT_GATEWAY_BINDING
プライベートパスサービス用のVPEゲートウェイバインディングのIDを示します。
--set-account-policy
このアクションが、同じアカウントからの保留中および将来のVPEゲートウェイバインディングに対するアクセスポリシーとなるかどうかを示します。 true、false のどちらかです。
--output
出力形式を指定します。サポートされているのはJSONのみです。 以下のいずれかです: JSON。
-q, --quiet
詳細出力を抑止します。

CLI からの接続要求の拒否

CLI からプライベート・パス・サービスへの接続を拒否するには、以下の手順を実行します。

  1. 以下のコマンドを入力します。
ibmcloud is private-path-service-gateway-endpoint-gateway-binding-deny PRIVATE_PATH_SERVICE_GATEWAY ENDPOINT_GATEWAY_BINDING
    (--set-account-policy true | false)
    [--output JSON] [-q, --quiet]

ここで、

PRIVATE_PATH_SERVICE_GATEWAY
プライベートパスサービスのIDまたは名前。
ENDPOINT_GATEWAY_BINDING
プライベートパスサービス用のVPEゲートウェイバインディングのID。
--set-account-policy
このアクションが、同じアカウントからの保留中および将来のVPEゲートウェイバインディングに対するアクセスポリシーとなるかどうかを示します。 一つ、 false``true。
--output
出力形式を指定してください。サポートされているのは JSON のみです。
-q, --quiet
詳細出力を抑制します。

コマンドの例

  • コンシューマー接続要求を拒否します。 ibmcloud is private-path-service-gateway-endpoint-gateway-binding-deny r006-2e671f14-19fc-4089-9ad3-973176711259 r006-17635273-0702-4a31-b406-a0014c291fbb --set-account-policy true

  • コンシューマー接続要求を拒否します。 ibmcloud is ppsg-egb-deny cli-ppsg r006-f7e2b651-0d02-46e1-8811-16ea2157b547 --set-account-policy true

  • コンシューマー接続要求を許可します。 ibmcloud is ppsg-egb-permit r006-e64dab2d-8fd2-43bd-8390-229ba66e53c4 r006-0dcc2105-14a1-4501-9b43-29632e910e4b --set-account-policy true

  • コンシューマー接続要求を許可します。 ibmcloud is ppsg-egb-permit cli-ppsg r006-3a30c0b3-8c4b-4a64-bb93-3f3e17459363 --set-account-policy true

API を使用した接続要求の確認

API を使用して着信接続要求をトリアージするには、以下の手順を実行します。

  1. API 環境をセットアップします。

  2. API コマンドで使用する以下の値を変数に格納します。

    • ppsgId-プライベート・パス・サービスを取得し、変数にデータを取り込みます。

      export ppsgId=<your_ppsg_id>
      
    • egwBindingId-VPE ゲートウェイ・バインディングを取得し、変数にデータを取り込みます。

      export egwbId=<your_endpoint_gateway_binding_id>
      

次の例は、APIを使用してアカウント固有の接続要求を許可、拒否、または取り消す方法を示している:

  1. 接続要求を許可する場合:

    curl -X POST -sH "Authorization:${iam_token}" \
    "$vpc_api_endpoint/v1/private_path_service_gateways/{ppsgId}/endpoint_gateway_bindings/{egwBindingId}/permit?version=$api_version&generation=2" \
    -d {
      "set_account_policy": true
    }'
    

set_account_policy が true に設定されている場合:

  • そのアカウントに既存のアクセス・ポリシーがある場合、そのポリシーはアクセスを許可するように更新される。 そうでない場合は、新しい許可アクセス・ポリシーがアカウントに作成されます。
  • そのアカウントで保留中のVPEゲートウェイのバインディングはすべて許可される。
  1. 接続要求を拒否するには:

    curl -X POST -sH "Authorization:${iam_token}" \
    "$vpc_api_endpoint/v1/private_path_service_gateways/{ppsgId}/endpoint_gateway_bindings/{egwBindingId}/deny?version=$api_version&generation=2" \
    -d {
      "set_account_policy": true
    }'
    

set_account_policy が true に設定されている場合:

  • そのアカウントに既存のアクセスポリシーがある場合、そのポリシーは リクエストを拒否するように更新される。 そうでない場合は、新しい許可アクセス・ポリシーがアカウントに作成されます。
  • そのアカウントに対する保留中のVPEゲートウェイのバインディングがすべて拒否されました。
  1. アカウントを取り消すには:
    • accountId-コンシューマー・アカウント ID を取得し、変数にデータを取り込みます。

      export accountId=<consumer_account_id>
      
    • 次のコマンドを実行して、アカウントを取り消します。

      curl -X POST -sH "Authorization:${iam_token}" \
      "$vpc_api_endpoint/v1/private_path_service_gateways/{ppsgId}?version=$api_version&generation=2" \
      -d {
        "account": {
          "id": "$accountId"
        }
      }'
      

Terraformで接続リクエストをレビューする

次の例では、Terraform を使ってエンドポイント・ゲートウェイを Private Path ネットワークにバインドすることを許可しています:

resource "ibm_is_private_path_service_gateway_endpoint_gateway_binding_operations" "policy" {
  access_policy = "permit"
  endpoint_gateway_binding = data.ibm_is_private_path_service_gateway_endpoint_gateway_bindings.ppsgEGWBindings.endpoint_gateway_bindings.0.id
  private_path_service_gateway = ibm_is_private_path_service_gateway.example.id
}

次の例では、Terraform を使用して、Private Path ネットワークへのエンドポイント・ゲートウェイのバインディングを拒否しています:

resource "ibm_is_private_path_service_gateway_endpoint_gateway_binding_operations" "policy" {
  count = length(data.ibm_is_private_path_service_gateway_endpoint_gateway_bindings.bindings.endpoint_gateway_bindings)
  access_policy = "deny"
  endpoint_gateway_binding = data.ibm_is_private_path_service_gateway_endpoint_gateway_bindings.bindings.endpoint_gateway_bindings[count.index].id
  private_path_service_gateway = ibm_is_private_path_service_gateway.ppsg.id
}

Terraform リソースに関するドキュメントについては、 Terraform Registry を参照してください。