Resource Manager 標記可控管 Google Cloud 資源的存取權。Resource Manager 標記可讓您整理 Google Cloud 資源,並根據資源是否具備特定標記,以條件允許或拒絕政策。您可以使用 Resource Manager 標記,依區隔和服務類型為每個虛擬機器 (VM) 執行個體加上標記。您可以使用資源管理工具標記,在建立 Secure Web Proxy 政策時識別主機。
本指南說明如何執行下列操作:
- 建立含有空白政策的 Secure Web Proxy 執行個體。
- 建立 Resource Manager 標記並套用至 VM 執行個體。
- 使用 Resource Manager 標記建立 Secure Web Proxy 政策。
- 建立 Secure Web Proxy 執行個體。
- 測試 VM 的連線能力。
事前準備
完成初始設定步驟。
請機構管理員授予您建立及更新代碼所需的角色。
確認已安裝 Google Cloud CLI 406.0.0 以上版本:
gcloud version | head -n1
如果您安裝的是舊版 gcloud CLI,請更新版本:
gcloud components update --version=406.0.0
建立含有空白政策的 Secure Web Proxy 執行個體
如要建立 Secure Web Proxy 執行個體,請先建立空白的安全政策,然後再建立網路 Proxy。
建立空白安全性政策
主控台
在 Google Cloud 控制台中,前往「SWP Policies」頁面。
按一下「建立政策」。
輸入要建立的政策名稱,例如
myswppolicy
。輸入政策的說明,例如
My new swp policy
。在「區域」清單中,選取要建立政策的區域。
按一下 [建立]。
Cloud Shell
使用您慣用的文字編輯器建立
POLICY_FILE
.yaml 檔案。將POLICY_FILE
替換為您要用於政策檔案的檔案名稱。在您建立的 YAML 檔案中加入下列內容:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION
更改下列內容:
PROJECT_NAME
:專案名稱REGION
:這項政策適用的地區POLICY_NAME
:您要建立的政策名稱POLICY_DESCRIPTION
:您要建立的政策說明
匯入安全性政策:
gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
建立網路 Proxy
主控台
前往 Google Cloud 控制台的「Web Proxies」頁面。
按一下「建立安全無虞的網路 Proxy」
。輸入要建立的網路 Proxy 名稱,例如
myswp
。輸入網頁 Proxy 的說明,例如
My new swp
。在「區域」清單中,選取要建立網路 Proxy 的區域。
在「Network」(網路) 清單中,選取要建立網路 Proxy 的網路。
在「Subnetwork」(子網路) 清單中,選取要建立網路 Proxy 的子網路。
選用步驟:輸入 Secure Web Proxy IP 位址。您可以從先前步驟中建立的子網路中,輸入安全網路 Proxy IP 位址範圍的 IP 位址。如果您未輸入 IP 位址,安全 Web Proxy 例項會自動從所選子網路中選擇 IP 位址。
在「憑證」清單中,選取要用來建立網路 Proxy 的憑證。
在「Policy」清單中,選取要與網路 Proxy 建立關聯的政策。
按一下 [建立]。
Cloud Shell
使用您慣用的文字編輯器建立
GATEWAY_FILE
.yaml 檔案。將GATEWAY_FILE
替換為您要用於網頁 Proxy 檔案的檔案名稱。在您建立的 YAML 檔案中加入下列內容:
name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME addresses: [GATEWAY_IP_ADDRESS] scope: samplescope
更改下列內容:
GATEWAY_NAME
:這個例項的名稱GATEWAY_PORT_NUMBERS
:這個閘道器的通訊埠號碼清單,例如[80,443]
CERTIFICATE_URLS
:SSL 憑證網址清單SUBNET_NAME
:包含GATEWAY_IP_ADDRESS
的子網路名稱GATEWAY_IP_ADDRESS
:選用的 IP 位址清單,適用於先前在初始設定步驟中建立的 Proxy 子網路內的 Secure Web Proxy 例項如果您選擇不列出 IP 位址,請省略這個欄位,讓網路 Proxy 為您選擇 IP 位址。
建立 Secure Web Proxy 執行個體:
gcloud network-services gateways import GATEWAY_NAME \ --source=GATEWAY_FILE.yaml \ --location=REGION
測試連線能力
如要測試連線能力,請在虛擬私有雲 (VPC) 網路中的任何 VM 中使用 curl
指令:
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
預期會發生 403 Forbidden
錯誤。
建立及附加 Resource Manager 標記
如要建立及附加 Resource Manager 標記,請按照下列步驟操作:
-
建立標記時,請使用
GCE_FIREWALL
用途指定標記。Google Cloud 網路功能 (包括 Secure Web Proxy) 需要GCE_FIREWALL
用途才能套用標記。不過,您可以將這個標記用於其他動作。
建立 Secure Web Proxy 規則
如要建立 Secure Web Proxy 規則,請按照下列步驟操作:
使用您慣用的文字編輯器建立
RULE_FILE
.yaml 檔案。將RULE_FILE
替換為您選擇的檔案名稱。如要允許從所選標記存取網址,請在 YAML 檔案中新增下列內容:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME description: RULE_DESCRIPTION enabled: true priority: RULE_PRIORITY sessionMatcher: CEL_EXPRESSION basicProfile: ALLOW
更改下列內容:
RULE_NAME
:此規則的名稱RULE_DESCRIPTION
:您要建立的規則說明RULE_PRIORITY
:此規則的優先順序;數字越小,優先順序越高CEL_EXPRESSION
:一般運算語言 (CEL) 運算式詳情請參閱 CEL 比對器語言參考資料。
舉例來說,如要允許從所需標記存取
example.com
,請在您為sessionMatcher
建立的 YAML 檔案中加入下列內容:sessionMatcher: "source.matchTag('TAG_VALUE') && host() == 'example.com'"
將
TAG_VALUE
替換為您要允許的標記,格式為tagValues/1234
。匯入您建立的規則:
gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=RULE_FILE.yaml \ --location=REGION \ --gateway-security-policy=POLICY_NAME
測試連線能力
如要測試連線能力,請使用與 TAG_VALUE
標記相關聯的任何 VM 中的 curl
指令:
curl -x https://IPv4_ADDRESS:443 http://example.com
--proxy-insecure
將 IPv4_ADDRESS
替換為安全 Web Proxy 執行個體的 IPv4 位址。