管理已發布的服務

本頁說明如何管理已發布服務的存取要求、變更已發布服務的連線偏好設定,以及設定連線協調。

每個服務連結都有連線偏好設定,可控制是否自動接受連線。

  • 自動接受所有連線。服務附件會自動接受來自任何消費者的所有連入連線要求。
  • 明確接受所選消費者的連線。只有當消費者位於服務附件的消費者接受清單中,服務附件才會接受連入連線要求。您可以依專案、虛擬私有雲網路或個別 Private Service Connect 端點指定消費者 (預覽版)。您無法在同一個消費者接受或拒絕清單中,加入不同類型的消費者。

無論是哪種連線偏好設定,如果機構政策封鎖了連入連線,系統就會覆寫已接受的連線並拒絕連線。

建議您明確接受特定消費者建立的連結。如果您透過其他方式控管消費者存取權,並想對服務啟用寬鬆的存取權,自動接受所有連線可能就適合您。

如要進一步瞭解如何發布服務,請參閱「發布服務」。

角色

下列 IAM 角色提供執行本指南中工作所需的權限。

管理已發布服務的存取權

如果您發布的服務需要明確核准,可以更新消費者清單來接受或拒絕連線。如要接受連線,請將要求連線的消費者專案、虛擬私有雲網路或個別 Private Service Connect 端點,新增至服務的消費者接受清單。如要明確拒絕連線,請以相同方式更新消費者拒絕清單。

無論消費者要求連線之前或之後,您都可以將專案或虛擬私有雲網路新增至消費者清單。您只能在連線要求後新增端點,因為端點的 URI 要等到端點建立後才會顯示。

消費者清單中的所有值必須屬於相同類型。舉例來說,您無法根據消費者專案接受部分連線,並根據個別端點接受其他連線。如果將相同值同時加入接受清單和拒絕清單,系統會拒絕該消費者的連線要求。

根據預設,消費者清單的變更只會影響新的或待處理的連線。 除非您已啟用連線協調,否則先前接受的連線不會終止。

控制台

如要管理需要明確核准的服務存取權,您可以接受或拒絕現有的連線要求,也可以更新消費者接受/拒絕清單。這兩種方法會產生相同的結果,並更新相同的消費者名單。

查看已發布服務的詳細資料

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「已發布的服務」分頁標籤。

  3. 按一下要管理的服務。

接受或拒絕連結要求

  • 如果服務設定為根據用戶專案接受連線,嘗試連線至這項服務的專案會列在「已連線的專案」部分。勾選一或多個專案旁的核取方塊,然後按一下「接受專案」或「拒絕專案」
  • 如果服務已設為接受個別 Private Service Connect 端點,請按一下「等待核准」,查看嘗試連線至這項服務的端點。勾選一或多個端點旁的核取方塊,然後按一下「接受端點」或「拒絕端點」
  • 如果服務設定為根據虛擬私有雲網路接受消費者,您只能更新消費者接受/拒絕清單來接受或拒絕連線,詳情請參閱下一節。

更新消費者接受/拒絕清單

  1. 按一下「編輯服務詳細資料」
  2. 選用:選取新的連線偏好設定。
  3. 請完成下列適用步驟。如要新增多位消費者,請重複這個步驟。

    • 如要「接受所選專案的連線」,請按一下「新增接受的專案」,然後輸入專案和連線限制。
    • 如要「接受所選網路的連線」,請按一下「新增接受的網路」,然後輸入專案、虛擬私有雲網路和連線限制。
    • 如要「接受所選端點的連線」,請按一下「新增接受的端點」,然後輸入專案和端點的 ID。

      如要找出端點 ID,請查看已發布的服務,並在「等待核准」部分中查看「端點 ID」的值。

gcloud

  1. 如要查看要修改的服務附件現有和待處理的連線,請使用 gcloud beta compute service-attachments describe 指令

    gcloud beta compute service-attachments describe ATTACHMENT_NAME \
        --region=REGION
    

    更改下列內容:

    • ATTACHMENT_NAME:服務連結的名稱。
    • REGION:服務連結的區域。

    輸出結果類似下列範例。如有任何待處理的消費者連結,系統會列出這些連結,並顯示 PENDING 狀態。您可以使用 endpointWithId 欄位中顯示的 Private Service Connect 端點 ID 型 URI,接受或拒絕個別端點。

    在本範例輸出內容中,專案 CONSUMER_PROJECT_1 位於接受清單中,因此 ENDPOINT_1 獲得接受,可以連線至服務。專案 CONSUMER_PROJECT_2 不在接受清單中,因此 ENDPOINT_2 處於待處理狀態。將 CONSUMER_PROJECT_2 新增至接受清單後,ENDPOINT_2 的狀態會變更為 ACCEPTED,端點即可連線至服務。

    connectedEndpoints:
    - consumerNetwork: https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_1/global/networks/CONSUMER_NETWORK_1
      endpoint: https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_1/regions/REGION_1/forwardingRules/ENDPOINT_1
      endpointWithId: https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_1/regions/REGION_1/forwardingRules/RESOURCE_ID_1
      pscConnectionId: 'ENDPOINT_1_ID'
      status: ACCEPTED
    - consumerNetwork: https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_2/global/networks/CONSUMER_NETWORK_2
      endpoint: https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_2/regions/REGION_2/forwardingRules/ENDPOINT_2
      endpointWithId: https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_2/regions/REGION_2/forwardingRules/RESOURCE_ID_2
      pscConnectionId: 'ENDPOINT_2_ID'
      status: PENDING
    connectionPreference: ACCEPT_MANUAL
    consumerAcceptLists:
    - connectionLimit: LIMIT_1
      projectIdOrNum: CONSUMER_PROJECT_1
    creationTimestamp: 'TIMESTAMP'
    description: 'DESCRIPTION'
    enableProxyProtocol: false
    fingerprint: FINGERPRINT
    id: 'ID'
    kind: compute#serviceAttachment
    name: NAME
    natSubnets:
    - https://www.googleapis.com/compute/beta/projects/PRODUCER_PROJECT/regions/REGION/subnetworks/PSC_SUBNET
    pscServiceAttachmentId:
      high: 'PSC_ATTACH_ID_HIGH'
      low: 'PSC_ATTACH_ID_LOW'
    region: https://www.googleapis.com/compute/v1/projects/PRODUCER_PROJECT/regions/REGION
    selfLink: https://www.googleapis.com/compute/v1/projects/projects/PRODUCER_PROJECT/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    targetService: https://www.googleapis.com/compute/v1/projects/PRODUCER_PROJECT/regions/REGION/forwardingRules/PRODUCER_FWD_RULE
    
  2. 如要接受或拒絕消費者連結,請按照下列步驟操作。

    • 如要根據專案或虛擬私有雲網路接受或拒絕消費者,請使用 gcloud compute service-attachments update 指令

      您可以指定 --consumer-accept-list--consumer-reject-list,也可以同時指定兩者。您可以在 --consumer-accept-list--consumer-reject-list 中指定多個值。您可以加入虛擬私有雲專案或網路,但不能同時加入專案和網路。

      gcloud compute service-attachments update ATTACHMENT_NAME \
          --region=REGION \
          --consumer-accept-list=ACCEPTED_PROJECT_OR_NETWORK_1=LIMIT_1,ACCEPTED_PROJECT_OR_NETWORK_2=LIMIT_2 \
          --consumer-reject-list=REJECTED_PROJECT_OR_NETWORK_1,REJECTED_PROJECT_OR_NETWORK_2
      

      更改下列內容:

      • ATTACHMENT_NAME:服務附件的名稱。

      • REGION:服務連結所在的區域。

      • ACCEPTED_PROJECT_OR_NETWORK_1ACCEPTED_PROJECT_OR_NETWORK_2:要接受的專案 ID、專案名稱或網路網址。--consumer-accept-list 為選用項目,可包含一或多個專案或聯播網,但不能同時包含這兩種項目。

      • LIMIT_1LIMIT_2:專案或網路的連線限制。連線限制是指可連線至這項服務的消費者端點數量。

      • REJECTED_PROJECT_OR_NETWORK_1REJECTED_PROJECT_OR_NETWORK_2:要拒絕的專案 ID、專案名稱或網路網址。--consumer-reject-list 為選用項目,可包含一或多個專案或網路,但不能同時包含這兩種項目。

    • 如要接受或拒絕個別 Private Service Connect 端點 (預先發布版),請使用 gcloud beta compute service-attachments update 指令

      gcloud beta compute service-attachments update ATTACHMENT_NAME \
          --region=REGION \
          --consumer-accept-list=ACCEPTED_ENDPOINT_URI_1,ACCEPTED_ENDPOINT_URI_2 \
          --consumer-reject-list=REJECTED_ENDPOINT_URI_1,REJECTED_ENDPOINT_URI_2
      

      更改下列內容:

      • ACCEPTED_ENDPOINT_URI_1ACCEPTED_ENDPOINT_URI_2:要接受的一或多個 Private Service Connect 端點的 ID 型 URI。如要尋找 Private Service Connect 端點的 ID 型 URI,請說明已連結的服務連結,並檢查 endpointWithId 欄位,或說明 Private Service Connect 端點並檢查 selfLinkWithId 欄位。--consumer-accept-list 為選用項目。

        舉例來說,本節開頭範例輸出內容中,待處理 Private Service Connect 端點的 ID 型 URI 為 https://www.googleapis.com/compute/beta/projects/CONSUMER_PROJECT_2/regions/REGION_2/forwardingRules/RESOURCE_ID_2

      • REJECTED_ENDPOINT_URI_1REJECTED_ENDPOINT_URI_2:要拒絕的一或多個 Private Service Connect 端點的 ID 型 URI。--consumer-reject-list 為選填欄位。

API

  1. 如要說明要修改的服務附件,請將要求傳送至 serviceAttachments.get 方法

    HTTP 方法和網址:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務連結的名稱。

    如有任何待處理的消費者連結,系統會列出這些連結,並顯示 PENDING 狀態。您可以在 endpointWithId 欄位中,查看 Private Service Connect 端點的 ID 型 URI,並用來接受或拒絕個別端點。

    請記下 fingerprint 值,您會在下一個步驟中使用。

  2. 如要接受或拒絕消費者專案或網路,請對 serviceAttachments.patch 方法發出要求。

    您可以依專案或虛擬私有雲網路接受及拒絕消費者,但無法在同一要求中同時包含專案和網路。

    • 如要根據專案接受或拒絕消費者,請傳送下列要求。

      HTTP 方法和網址:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "consumerAcceptLists": [
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_1",
            "connectionLimit": "LIMIT_1"
          },
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_2",
            "connectionLimit": "LIMIT_2"
          }
        ],
        "consumerRejectLists": [
          "REJECTED_PROJECT_1",
          "REJECTED_PROJECT_2"
        ],
        "fingerprint" : "FINGERPRINT"
      }
      

      更改下列內容:

      • PROJECT_ID:服務附件的專案。
      • REGION:服務連結的區域。
      • ATTACHMENT_NAME:服務附件的名稱。
      • ACCEPTED_PROJECT_1ACCEPTED_PROJECT_2:要接受的專案 ID 或編號。consumerAcceptList 為選用項目,可包含一或多個專案。
      • LIMIT_1LIMIT_2:專案的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_1REJECTED_PROJECT_2:要拒絕的專案 ID 或編號。consumerRejectList 為選用項目,可包含一或多個專案。
      • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。
    • 如要根據虛擬私有雲網路接受或拒絕消費者,請傳送下列要求。

      HTTP 方法和網址:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "consumerAcceptLists": [
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_1/global/network/ACCEPTED_NETWORK_1",
            "connectionLimit": "LIMIT_1"
          },
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_2/global/network/ACCEPTED_NETWORK_2",
            "connectionLimit": "LIMIT_2"
          }
        ],
        "consumerRejectLists": [
          "projects/REJECTED_PROJECT_ID_1/global/networks/REJECTED_NETWORK_1",
          "projects/REJECTED_PROJECT_ID_2/global/network/REJECTED_NETWORK_2"
        ],
        "fingerprint": "FINGERPRINT"
      }
      

      更改下列內容:

      • ACCEPTED_PROJECT_ID_1ACCEPTED_PROJECT_ID_2:您要接受的網路的父項專案 ID。consumerAcceptLists 為選用項目,可包含一或多個電視網。
      • ACCEPTED_NETWORK_1ACCEPTED_NETWORK_2:您要接受的網路名稱。
      • LIMIT_1LIMIT_2:網路的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_ID_1REJECTED_PROJECT_ID_2:要拒絕的網路的父項專案 ID。consumerRejectLists 為選用項目,可包含一或多個電視網。
      • REJECTED_NETWORK_1REJECTED_NETWORK_2:要拒絕的網路名稱。
    • 如要根據個別 Private Service Connect 端點 (搶先版) 接受或拒絕消費者,請傳送下列要求。

      HTTP 方法和網址:

      PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "consumerAcceptLists": [
          {
            "endpointUrl": "ACCEPTED_ENDPOINT_URI_1"
          },
          {
            "endpointUrl": "ACCEPTED_ENDPOINT_URI_2"
          }
        ],
        "consumerRejectLists": [
          "REJECTED_ENDPOINT_URI_1",
          "REJECTED_ENDPOINT_URI_2"
        ],
        "fingerprint": "FINGERPRINT"
      }
      

      更改下列內容:

      • ACCEPTED_ENDPOINT_URI_1ACCEPTED_ENDPOINT_URI_2:要接受的一或多個 Private Service Connect 端點的 ID 型 URI。如要找出 Private Service Connect 端點的 ID 型 URI,請說明已連線的服務連結並檢查 endpointWithId 欄位,或說明端點並檢查 selfLinkWithId 欄位。依據 ID 建立的 URI 範例如下:https://www.googleapis.com/compute/beta/projects/consumer-project/regions/us-central1/forwardingRules/1234567890

        這份清單為選用項目。

      • REJECTED_ENDPOINT_URI_1REJECTED_ENDPOINT_URI_2:要拒絕的一或多個 Private Service Connect 端點的 ID 型 URI。這份清單為選用項目。

變更已發布服務的連線偏好設定

您可以為已發布的服務切換自動和明確的消費者接受狀態。這項變更對現有連線的影響,取決於服務附件是否已啟用連線協調功能。

如果停用連線協調功能,變更連線偏好設定不會影響現有的 ACCEPTEDREJECTED 連線:

  • 從自動接受切換為明確接受時,新連線必須位於消費者接受清單中,才能成為 ACCEPTED
  • 從明確接受切換為自動接受後,所有現有的 PENDING 連線都會自動 ACCEPTED

啟用連線協調功能後,系統會根據新的連線偏好設定,重新評估所有現有連線:

  • 從自動切換為明確接受時,如果現有消費者連線不在消費者接受清單中,就會變更為 PENDING,並終止這些連線。
  • 從明確接受切換為自動接受時,所有現有的 PENDINGREJECTED 連線都會變更為 ACCEPTED

如要進一步瞭解如何更新服務的消費者接受清單,請參閱「管理已發布服務的存取要求」。

控制台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「已發布的服務」分頁標籤。

  3. 按一下要更新的服務,然後點選「編輯服務詳細資料」

  4. 選取要用於這項服務的新連線偏好設定。

  5. 選用:如果改為使用明確接受機制,您可以立即將消費者加入接受清單,也可以稍後再加入。如要接受消費者,請執行下列任一操作。如要新增多位消費者,請為每位消費者重複這個步驟。

    • 如要「接受所選專案的連線」,請按一下「新增接受的專案」,然後輸入專案和連線限制。
    • 如要「接受所選網路的連線」,請按一下「新增接受的網路」,然後輸入專案、虛擬私有雲網路和連線限制。
    • 如要「接受所選端點的連線」,請按一下「新增接受的端點」,然後輸入專案和端點的 ID。
  6. 按一下 [儲存]

gcloud

  • 如要將服務附件的連線偏好設定從 ACCEPT_AUTOMATIC 變更為 ACCEPT_MANUAL,請使用 gcloud compute service-attachments update 指令

    您可以透過 --consumer-accept-list--consumer-reject-list 控制哪些專案可連線至服務。變更連線偏好設定時,您可以設定接受和拒絕清單,或稍後更新清單。

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --connection-preference=ACCEPT_MANUAL \
        [ --consumer-accept-list=ACCEPTED_PROJECT_OR_NETWORK_1=LIMIT_1,ACCEPTED_PROJECT_OR_NETWORK_2=LIMIT_2] \
        [ --consumer-reject-list=REJECTED_PROJECT_OR_NETWORK_1,REJECTED_PROJECT_OR_NETWORK_2 ]
    

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。

    • REGION:服務連結所在的區域。

    • ACCEPTED_PROJECT_OR_NETWORK_1ACCEPTED_PROJECT_OR_NETWORK_2:要接受的專案 ID、專案名稱或網路網址。--consumer-accept-list 為選用項目,可包含一或多個專案或聯播網,但不能同時包含這兩種項目。

    • LIMIT_1LIMIT_2:專案的連線限制。連線限制是指可連線至這項服務的消費者端點數量。

    • REJECTED_PROJECT_OR_NETWORK_1REJECTED_PROJECT_OR_NETWORK_2:要拒絕的專案 ID、專案名稱或網路網址。--consumer-reject-list 為選用項目,可包含一或多個專案或聯播網,但不能同時包含這兩種項目。

  • 如要將服務附件的連線偏好設定從 ACCEPT_MANUAL 變更為 ACCEPT_AUTOMATIC,請使用下列指令。

    如果您在接受清單或拒絕清單中有值,請在變更連線偏好設定 ("") 時,將這些值設為空白。

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --connection-preference=ACCEPT_AUTOMATIC \
        --consumer-accept-list="" \
        --consumer-reject-list=""
    

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。

    • REGION:服務連結所在的區域。

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務連結的名稱。

    請記下 fingerprint 值,您會在下一個步驟中使用。

  2. 如要變更服務連結的連線偏好設定,請將要求傳送至 serviceAttachments.patch 方法

    • 如要將連線偏好設定從 ACCEPT_AUTOMATIC 變更為 ACCEPT_MANUAL,並根據專案更新消費者接受/拒絕清單,請提出下列要求。

      HTTP 方法和網址:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "connectionPreference": "ACCEPT_MANUAL",
        "consumerAcceptLists": [
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_1"
            "connectionLimit": "LIMIT_1",
          },
          {
            "projectIdOrNum": "ACCEPTED_PROJECT_2"
            "connectionLimit": "LIMIT_2",
          }
        ],
        "consumerRejectLists": [
          "REJECTED_PROJECT_1",
          "REJECTED_PROJECT_2",
        ],
        "fingerprint" : "FINGERPRINT"
      }
      

      更改下列內容:

      • PROJECT_ID:服務附件的專案。
      • REGION:服務連結的區域。
      • ATTACHMENT_NAME:服務附件的名稱。
      • ACCEPTED_PROJECT_1ACCEPTED_PROJECT_2:要接受的專案 ID 或編號。consumerAcceptList 為選用項目,可包含一或多個專案。
      • LIMIT_1LIMIT_2:專案的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_1REJECTED_PROJECT_2:要拒絕的專案 ID 或編號。consumerRejectList 為選用項目,可包含一或多個專案。
      • FINGERPRINT:您在步驟 1 中找到的服務附件最新指紋。
    • 如要將連線偏好設定從 ACCEPT_AUTOMATIC 變更為 ACCEPT_MANUAL,並根據虛擬私有雲網路更新消費者接受/拒絕清單,請提出下列要求。

      HTTP 方法和網址:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
      

      JSON 要求主體:

      {
        "connectionPreference": "ACCEPT_MANUAL",
        "consumerAcceptLists": [
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_1/global/networks/ACCEPTED_NETWORK_1",
            "connectionLimit": "LIMIT_1"
          },
          {
            "networkUrl": "projects/ACCEPTED_PROJECT_ID_2/global/networks/ACCEPTED_NETWORK_2",
            "connectionLimit": "LIMIT_2"
          }
        ],
        "consumerRejectLists": [
          "projects/REJECTED_PROJECT_ID_1/global/networks/REJECTED_NETWORK_1",
          "projects/REJECTED_PROJECT_ID_2/global/network/REJECTED_NETWORK_2"
        ],
        "fingerprint" : "FINGERPRINT"
      }
      

      更改下列內容:

      • ACCEPTED_PROJECT_ID_1ACCEPTED_PROJECT_ID_2:您要接受的網路的父項專案 ID。consumerAcceptLists 為選用項目,可包含一或多個電視網。
      • ACCEPTED_NETWORK_1ACCEPTED_NETWORK_2:您要接受的網路名稱。
      • LIMIT_1LIMIT_2:網路的連線限制。連線限制是指可連線至這項服務的消費者端點數量。
      • REJECTED_PROJECT_ID_1REJECTED_PROJECT_ID_2:要拒絕的網路的父項專案 ID。consumerRejectLists 為選用項目,可包含一或多個電視網。
      • REJECTED_NETWORK_1REJECTED_NETWORK_2:要拒絕的網路名稱。
      • FINGERPRINT:您在步驟 1 中找到的服務附件最新指紋。
  • 如要將服務附件的連線偏好設定從 ACCEPT_MANUAL 變更為 ACCEPT_AUTOMATIC,請提出下列要求。

    如果 consumerAcceptListsconsumerRejectLists 欄位指定任何消費者,請在將連線偏好設定變更為 ACCEPT_AUTOMATIC 時,將這些欄位設為空白。

    HTTP 方法和網址:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "connectionPreference": "ACCEPT_AUTOMATIC",
      "consumerAcceptLists": [ ],
      "consumerRejectLists": [ ],
      "fingerprint" : "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。

    • REGION:服務連結的區域。

    • ATTACHMENT_NAME:服務連結的名稱。

    • FINGERPRINT:您在步驟 1 中找到的服務附件最新指紋。

設定連線協調功能

您可以為現有服務附件啟用或停用連線協調

控制台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「已發布的服務」分頁標籤。

  3. 按一下要更新的服務,然後點選「編輯服務詳細資料」

  4. 選取或取消選取「啟用連結對帳」核取方塊,然後按一下「儲存」

gcloud

  • 如要啟用連線對帳功能,請使用 service-attachments update 指令

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --reconcile-connections
    

    更改下列內容:

    • ATTACHMENT_NAME:服務附件的名稱。
    • REGION:服務連結的區域。
  • 如要停用連線對帳,請使用下列指令:

    gcloud compute service-attachments update ATTACHMENT_NAME \
        --region=REGION \
        --no-reconcile-connections
    

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務連結的名稱。

    請記下 fingerprint 值,您會在下一個步驟中使用。

  2. serviceAttachments.patch 方法傳送要求

    HTTP 方法和網址:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "reconcileConnections": RECONCILIATION,
      "fingerprint": "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務連結的名稱。
    • RECONCILIATION:是否啟用連線對帳功能。選項為 truefalse
    • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。

在已發布的服務中新增或移除子網路

您可以編輯已發布的服務,加入 Private Service Connect 子網路。

舉例來說,您可能需要為現有服務提供更多 IP 位址。如要新增更多地址,請採取下列其中一項做法:

同樣地,您也可以編輯已發布的服務,移除 Private Service Connect 子網路。不過,如果子網路的任何 IP 位址用於 Private Service Connect 的 SNAT,系統就會無法移除子網路。

如果變更子網路設定,請更新防火牆規則,允許來自新子網路的要求連線至後端 VM。

控制台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「已發布的服務」分頁標籤。

  3. 按一下要更新的服務,然後點選「編輯服務詳細資料」

  4. 修改這項服務使用的子網路。

    如要新增子網路,可以按照以下步驟操作:

    1. 按一下「保留新的子網路」
    2. 輸入子網路的「名稱」和「說明」 (選填)。
    3. 選取子網路的「區域」
    4. 輸入要用於子網路的「IP 範圍」,然後按一下「新增」
  5. 按一下 [儲存]

gcloud

如要更新用於這項服務連結的 Private Service Connect 子網路,請使用 gcloud compute service-attachments update 指令

gcloud compute service-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --nat-subnets=PSC_SUBNET_LIST

更改下列內容:

  • ATTACHMENT_NAME:服務附件的名稱。

  • REGION:服務連結所在的區域。

  • PSC_SUBNET_LIST:以半形逗號分隔的清單,包含一或多個要用於這項服務附件的子網路。

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務連結的名稱。

    請記下 fingerprint 值,您會在下一個步驟中使用。

  2. 如要更新用於這項服務連結的 Private Service Connect 子網路,請傳送要求至 serviceAttachments.patch 方法

    HTTP 方法和網址:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "natSubnets": [
      "PSC_SUBNET1_URI",
      "PSC_SUBNET2_URI"
      ],
      "fingerprint": "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。

    • REGION:服務連結的區域。

    • ATTACHMENT_NAME:服務附件的名稱。

    • PSC_SUBNET1_URIPSC_SUBNET2_URI:要搭配這項服務連結使用的子網路 URI。您可以指定一或多個子網路。

    • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。

更新已發布服務的傳播連線限制

您可以更新服務連結的傳播連線數量限制。 提高限制後,系統會 Google Cloud 自動檢查是否可以建立任何待處理的傳播連線。調降限制後,現有的傳播連線不會受到影響。不過,如果達到新上限,系統可能會封鎖重新建立已刪除或遭拒絕的傳播連線。

控制台

  1. 前往 Google Cloud 控制台的「Private Service Connect」頁面。

    前往 Private Service Connect

  2. 按一下「已發布的服務」分頁標籤。

  3. 按一下要更新的服務,然後點選「編輯服務詳細資料」

  4. 按一下「進階設定」

  5. 輸入新的 NCC 傳播連線數量限制

gcloud

使用 gcloud compute service-attachments update 指令

gcloud compute service-attachments update ATTACHMENT_NAME \
    --region=REGION \
    --propagated-connection-limit=LIMIT

更改下列內容:

  • ATTACHMENT_NAME:服務附件的名稱。

  • REGION:服務連結所在的區域。

  • LIMIT:傳播連線限制的新值。

API

  1. 如要取得服務附件的 fingerprint,請向 serviceAttachments.get 方法傳送要求。

    HTTP 方法和網址:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。
    • REGION:服務連結的區域。
    • ATTACHMENT_NAME:服務連結的名稱。

    請記下 fingerprint 值,您會在下一個步驟中使用。

  2. serviceAttachments.patch 方法傳送要求

    HTTP 方法和網址:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/serviceAttachments/ATTACHMENT_NAME
    

    JSON 要求主體:

    {
      "propagatedConnectionLimit": LIMIT,
      "fingerprint": "FINGERPRINT"
    }
    

    更改下列內容:

    • PROJECT_ID:服務附件的專案。

    • REGION:服務連結的區域。

    • ATTACHMENT_NAME:服務附件的名稱。

    • LIMIT:傳播連線限制的新值。

    • FINGERPRINT:您在上一個步驟中找到的服務附件最新指紋。