[GH-ISSUE #4926] Policy exclusions, negative policies, and explicit policy logic #10133

Open
opened 2026-08-05 01:24:46 -04:00 by saavagebueno · 0 comments
Owner

Originally created by @nelson1christopher on GitHub (Dec 9, 2025).
Original GitHub issue: https://github.com/netbirdio/netbird/issues/4926

Is your feature request related to a problem? Please describe.
It is difficult, or not practical to create a policy that functions as a 0.0.0.0/0 route while also excluding specific subnets from matching, such as my 192.168.1.0/24 local network, or the 10.200.200.0/24 office server vlan I don't want certain users or groups to have access to, or the subnets where YouTube is hosted because I don't want a forgetful user streaming video across the VPN and congesting my network.

Describe the solution you'd like

  1. Exclusion operator (!) that can be applied to any object (user, subnet, resource, network, etc).
  2. Logic operators (AND, OR) that can be applied to any policy scope.
  3. Explicit ordered evaluation of policies, top->down would be ideal.

Describe alternatives you've considered
Multiple policies. This is clunky and nonsensical without ordered evaluation.
Posture checks. This is not what they're for, and doesn't apply to destination subnets.

Additional context
I envision a gui workflow similar to Fortigate, where each policy is isolated by context, (wan->internal, or s2s1->wan) and matches are based on subnets, users, services/ports, and rules are evaluated in top- down order relative to the gui, with click-drag manipulation.

Originally created by @nelson1christopher on GitHub (Dec 9, 2025). Original GitHub issue: https://github.com/netbirdio/netbird/issues/4926 **Is your feature request related to a problem? Please describe.** It is difficult, or not practical to create a policy that functions as a 0.0.0.0/0 route while also excluding specific subnets from matching, such as my 192.168.1.0/24 local network, or the 10.200.200.0/24 office server vlan I don't want certain users or groups to have access to, or the subnets where YouTube is hosted because I don't want a forgetful user streaming video across the VPN and congesting my network. **Describe the solution you'd like** 1. Exclusion operator (!) that can be applied to any object (user, subnet, resource, network, etc). 2. Logic operators (AND, OR) that can be applied to any policy scope. 3. Explicit ordered evaluation of policies, top->down would be ideal. **Describe alternatives you've considered** Multiple policies. This is clunky and nonsensical without ordered evaluation. Posture checks. This is not what they're for, and doesn't apply to destination subnets. **Additional context** I envision a gui workflow similar to Fortigate, where each policy is isolated by context, (wan->internal, or s2s1->wan) and matches are based on subnets, users, services/ports, and rules are evaluated in top- down order relative to the gui, with click-drag manipulation.
saavagebueno added the feature-request label 2026-08-05 01:24:46 -04:00
Sign in to join this conversation.
No Label feature-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#10133