管理 Private Service Connect 消費者的安全性

本頁面說明服務用戶如何為使用 Private Service Connect 的用戶機構和虛擬私有雲網路設定安全性。

管理員可透過機構政策,廣泛控管專案可使用 Private Service Connect 端點和後端連線的虛擬私有雲網路或機構。網路管理員可透過虛擬私有雲防火牆規則防火牆政策,控管對 Private Service Connect 資源的網路層級存取權。機構政策和防火牆規則是互補的,可以一起使用。

角色

如要取得管理機構政策所需的權限,請要求管理員為您授予機構的機構政策管理員 (roles/orgpolicy.policyAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

如要取得建立防火牆規則所需的權限,請要求管理員授予您虛擬私有雲網路的Compute 網路管理員 (roles/compute.networkAdmin) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

消費者機構政策

您可以搭配使用組織政策清單限制,控管 Private Service Connect 端點或後端的部署作業。如果端點或後端遭消費者機構政策封鎖,資源建立作業就會失敗。

詳情請參閱「消費者端機構組織政策」。

禁止端點和後端連線至未經授權的服務連結

資源:端點和後端

gcloud

  1. 建立名為 /tmp/policy.yaml 的暫時檔案,用來儲存新政策。在檔案中新增下列內容:

    name: organizations/CONSUMER_ORG/policies/compute.restrictPrivateServiceConnectProducer
    spec:
      rules:
        - values:
            allowedValues:
            - under:organizations/PRODUCER_ORG_NUMBER
            - under:organizations/433637338589
    

    更改下列內容:

    • CONSUMER_ORG:您要控管端點和後端連線的機構的機構資源 ID
    • PRODUCER_ORG_NUMBER:您要允許端點和後端連線的生產者機構的數值機構資源 ID。

    如要禁止端點和後端連線至 Google 擁有的服務附件,請從 allowedValues 區段中移除下列項目:- under:organizations/433637338589

    如要指定可連結至專案中服務附件的其他機構,請在 allowedValues 區段中加入其他項目。

    除了機構,您也可以指定授權資料夾和專案,格式如下:

    • under:folders/FOLDER_ID

      FOLDER_ID 必須是數字 ID。

    • under:projects/PROJECT_ID

      PROJECT_ID 必須是字串 ID。

    舉例來說,下列項目可用於建立機構政策,禁止 Consumer-org-1 中的端點和後端連線至服務附件,除非服務附件與允許值或允許值的後代相關聯。允許的值為機構 Producer-org-1、專案 Producer-project-1 和資料夾 Producer-folder-1

    name: organizations/Consumer-org-1/policies/compute.restrictPrivateServiceConnectProducer
    spec:
        rules:
          - values:
              allowedValues:
              - under:organizations/Producer-org-1
              - under:projects/Producer-project-1
              - under:folders/Producer-folder-1
    
  2. 套用政策。

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. 查看已生效的政策。

    gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \
        --effective \
        --organization=CONSUMER_ORG
    

禁止消費者依連線類型部署端點

資源:端點

gcloud

  1. 建立名為 /tmp/policy.yaml 的暫時檔案,用來儲存新政策。

    • 如要禁止消費者機構中的使用者建立連線至 Google API 的端點,請在檔案中加入下列內容:

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - SERVICE_PRODUCERS
      
    • 如要禁止消費者機構中的使用者建立連線至已發布服務的端點,請在檔案中新增下列內容:

      name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers
      spec:
        rules:
          - values:
              allowedValues:
              - GOOGLE_APIS
      

    CONSUMER_ORG 替換為要控管端點部署作業的消費者機構名稱。

  2. 套用政策。

    gcloud org-policies set-policy /tmp/policy.yaml
    
  3. 查看已生效的政策。

    gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \
        --effective \
        --organization=CONSUMER_ORG
    

防火牆規則

資源:全部

您可以使用 VPC 防火牆規則防火牆政策,控管 Private Service Connect 資源的存取權。輸出防火牆規則可封鎖或允許 VM 執行個體存取端點和後端的 IP 位址或子網路。

舉例來說,圖 1 說明防火牆規則控管 Private Service Connect 端點所連線子網路存取權的設定。

防火牆規則會控管端點子網路的流量。來自 vm-1 的流量可以連上端點子網路,但來自 vm-2 的流量會遭到封鎖 (按一下可放大)。
  1. 下列防火牆規則會拒絕所有輸出流量傳送到端點子網路:

    gcloud compute firewall-rules create deny-all \
        --network=vpc-1 \
        --direction=egress \
        --action=deny \
        --destination-ranges=10.33.0.0/24
        --priority=1000
    
  2. 下列優先順序較高的防火牆規則,允許具有 allow-psc 網路標記的 VM 將輸出流量傳送至端點子網路:

    gcloud compute firewall-rules create allow-psc \
        --network=vpc-1 \
        --direction=egress \
        --action=allow \
        --target-tags=allow-psc \
        --destination-ranges=10.33.0.0/24
        --priority=100
    

使用防火牆規則限制端點或後端的存取權

如要限制 VM 存取端點或後端的子網路,請按照下列步驟操作。

  1. 建立防火牆規則,拒絕輸出流量前往端點或後端子網路。

    gcloud compute firewall-rules create deny-all \
        --network=NETWORK \
        --direction=egress \
        --action=deny \
        --destination-ranges=ENDPOINT_SUBNET_RANGE \
        --priority=1000
    

    更改下列內容:

    • NETWORK:端點或後端的網路名稱。
    • ENDPOINT_SUBNET_RANGE:要控管存取權的端點或後端子網路 IP CIDR 範圍。
  2. 建立第二個防火牆規則,允許標記的 VM 將輸出流量傳送至端點或後端子網路。

    gcloud compute firewall-rules create allow-psc \
        --network=NETWORK \
        --direction=egress \
        --action=allow \
        --target-tags=allow-psc \
        --destination-ranges=ENDPOINT_SUBNET_RANGE \
        --priority=100