NSX admite la creación de grupos y directivas al configurar varios tenants en el entorno.

Los grupos y las reglas de firewall de un proyecto solo se aplican a las máquinas virtuales del proyecto (es decir, a las máquinas virtuales conectadas a las redes del proyecto). Las reglas dentro de un proyecto, incluidas aquellas en las que se aplique ANY a DFW, no afectan a las cargas de trabajo fuera del proyecto.
Nota: La agrupación y las reglas de firewall del espacio /infra se aplican a todas las máquinas virtuales de la implementación de NSX, incluidas las de los proyectos. Por ejemplo, un grupo basado en una etiqueta incluirá todas las máquinas virtuales con la misma etiqueta que los miembros, tanto dentro como fuera del proyecto.

Grupos

El sistema crea un grupo predeterminado para cada proyecto que cree. El grupo predeterminado representa el propio proyecto. El sistema agrega todos los segmentos creados en un proyecto al grupo predeterminado del proyecto. Solo se agregan al grupo las máquinas virtuales que están asociadas a los segmentos del grupo. El grupo predeterminado ayuda a restringir el ámbito de las reglas a un proyecto en particular.

El grupo predeterminado tiene una expresión de ámbito de grupo que define la ruta del ámbito del grupo. Los administradores pueden aplicar reglas desde el espacio /infra solo a proyectos en el grupo Predeterminado, ya sea directamente o a través de una pertenencia estática a un grupo desde el espacio /infra.

Las siguientes opciones son compatibles con los grupos adicionales que cree:

  • Miembros estáticos: máquina virtual, segmentos, puertos de segmentos, direcciones IP
  • Miembros dinámicos: máquina virtual
Cree un grupo realizando la siguiente llamada API:
PATCH /policy/api/v1/orgs/default/projects/<project-id>/infra/domains/default/groups/<group-id>
Solicitud de muestra para crear un grupo basado en máquinas virtuales:
URL:
PATCH https://{{nsx-manager-ip}}/policy/api/v1/orgs/default/projects/project-1/infra/domains/default/groups/group-1
Cuerpo:
{
  "expression": [
  {
    "member_type": "VirtualMachine",    
    "key": "Name",
    "operator": "CONTAINS",
    "value": "App",
    "resource_type": "Condition"
  }
  ],
  "description": "my group",
  "display_name": "g1",
  "_revision": 0
}

Firewall distribuido

Las categorías de DFW de emergencia, infraestructura, entorno y aplicación son compatibles con los proyectos dentro de la organización. Las directivas de /infra tienen la prioridad más alta seguida de las directivas de proyecto. Las reglas de DFW del espacio /infra pueden extenderse a un proyecto.

  • Las reglas creadas en el espacio /infra se aplican de forma predeterminada a todas las cargas de trabajo del entorno.
    • Para definir el ámbito de las reglas, seleccione la opción adecuada para Se aplica a en la interfaz de usuario de NSX. Por ejemplo, puede restringir las reglas a una carga de trabajo específica mediante la opción Se aplica a .
    • También puede utilizar la opción Se aplica a para los grupos creados en el espacio /infra o para los grupos predeterminados del proyecto (ORG-default-PROJECT-<name-of-project>) que genera el sistema y que contienen todas las máquinas virtuales del proyecto.
  • Lo siguiente se aplica a los grupos creados en el espacio /infra:
    • La pertenencia dinámica evalúa todas las máquinas virtuales del sistema, incluidas las máquinas virtuales de un proyecto. Por ejemplo, si la pertenencia a un grupo incluye todas las máquinas virtuales etiquetadas con web, el grupo incluirá máquinas virtuales con la etiqueta web dentro y fuera del proyecto.
    • Para la pertenencia estática, puede agregar cargas de trabajo conectadas a un proyecto haciendo referencia explícita a las máquinas virtuales (Miembros > Máquinas virtuales) o mediante los grupos predeterminados del proyecto (ORG-default-PROJECT-<name-of-project>). Otros recursos creados en un proyecto no serán compatibles con los grupos en el espacio /infra.

El sistema crea algunas directivas predeterminadas cuando se crea un proyecto. Las directivas predeterminadas ayudan a restringir el ámbito de las directivas a un proyecto en particular.

Para las directivas de proyecto, cuando el ámbito se establece en Cualquiera, las directivas se limitan a ese proyecto. Las reglas de proyecto solo tienen acceso a los grupos del proyecto y a los grupos que se han compartido con el proyecto.

Aplique directivas de seguridad realizando la siguiente llamada API:
PATCH /policy/api/v1/orgs/default/projects/<project-id>/infra/domains/default/security-policies/<security-policy-id>

Solicitud de ejemplo:

URL:
PATCH https://{{nsx-manager-ip}}/policy/api/v1/orgs/default/projects/project-1/infra/domains/default/security-policies/web-db
Cuerpo:
{
  "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
}