當您在環境中設定多承租人時,NSX 支援建立群組和原則。
專案的群組和防火牆規則僅會套用至專案中的虛擬機器,亦即,連線至專案中網路的虛擬機器。專案中的規則 (包括將「任何」套用至 DFW 的規則) 不會影響專案外部的工作負載。
備註: /infra 空間中的分組和防火牆規則會套用至 NSX 部署中的每一個虛擬機器,包括專案中的虛擬機器。例如,在以標籤為基礎的群組,會包含具有與成員相同標籤的所有虛擬機器,包括專案內部和外部的虛擬機器。
群組
系統會為您建立的每一個專案,各建立一個預設群組。預設群組代表專案本身。系統會將專案中所建立的所有區段,新增至專案的預設群組。僅連結至群組區段的那些虛擬機器,才會新增至群組。預設群組有助於將規則的範圍限制在特定專案內。
預設群組會有一項群組範圍運算式,用來定義群組範圍的路徑。管理員只能將 /infra
空間中的規則直接套用至預設群組下的專案,或者透過 /infra
空間內群組中的靜態成員資格來套用。
您建立的任何其他群組都支援以下項目:
- 靜態成員 - 虛擬機器、區段、區段連接埠、IP 位址
- 動態成員 - 虛擬機器
請發出以下 API 呼叫,來建立群組:
PATCH /policy/api/v1/orgs/default/projects/<project-id>/infra/domains/default/groups/<group-id>以下的範例要求用來建立以虛擬機器為基礎的群組:
URL:
PATCH https://{{nsx-manager-ip}}/policy/api/v1/orgs/default/projects/project-1/infra/domains/default/groups/group-1本文:
{ "expression": [ { "member_type": "VirtualMachine", "key": "Name", "operator": "CONTAINS", "value": "App", "resource_type": "Condition" } ], "description": "my group", "display_name": "g1", "_revision": 0 }
分散式防火牆
組織內的專案支援「緊急」、「基礎結構」、「環境」和「應用程式 DFW 」類別。/infra
原則的優先順序最高,其次是「專案」原則。/infra
空間中的 DFW 規則可以延伸至專案。
- 依預設,在
/infra
空間下建立的規則會套用至環境中的所有工作負載。- 若要定義規則的範圍,請在 NSX UI 上選取套用至的適當選項。例如,您可以使用套用至選項,將規則限定在特定工作負載範圍內。
- 您還可以將套用至選項用於在
/infra
空間下建立的群組,或由系統產生且包含專案中所有虛擬機器的專案預設群組 (ORG-default-PROJECT-<name-of-project>
)。
- 以下內容適用於在
/infra
空間中建立的群組:- 動態成員資格會評估系統的所有虛擬機器,包括專案中的虛擬機器。例如,如果組成員資格包含標記有 web 的所有虛擬機器,則群組將包含專案內部和外部帶有 web 標記的虛擬機器。
- 對於靜態成員資格,您可以明確參考虛擬機器 (
ORG-default-PROJECT-<name-of-project>
),來新增連線至專案的工作負載。/infra
空間中的群組不支援建立於專案下的其他資源。
),或使用專案預設群組 (
建立專案時,系統會建立一些預設原則。預設原則有助於將原則的範圍限制在特定專案內。
對於專案原則,如果將範圍設定為 [任何],則原則將僅限於該專案內。專案規則僅有權存取專案中的群組以及已與專案共用的群組。
請發出以下 API 呼叫,來套用安全原則:
PATCH /policy/api/v1/orgs/default/projects/<project-id>/infra/domains/default/security-policies/<security-policy-id>
範例要求:
URL:
PATCH https://{{nsx-manager-ip}}/policy/api/v1/orgs/default/projects/project-1/infra/domains/default/security-policies/web-db本文:
{ "resource_type": "SecurityPolicy", "description": "web-db", "display_name": "web-db", "rules": [ { "resource_type": "Rule", "description": "web-db-rule-1", "display_name": "web-db-rule-1", "sequence_number": 1, "source_groups": [ "/orgs/default/projects/project-1/infra/domains/default/groups/group-1" ], "destination_groups": [ "/orgs/default/projects/project-1/infra/domains/default/groups/group-1" ], "services" : ["/infra/services/HTTP"], "action" : "ALLOW", "_revision": 0 } ], "sequence_number": 1, "_revision": 0 }