Skip to content

Conversation

@npinaeva
Copy link
Member

@npinaeva npinaeva commented Oct 13, 2025

Add a blog post with short description of changes, some migration examples and future plans.
I have also added a new version of the CNP model made in drawio, and the source file should be import-able to make future changes, but lmk if you have better ideas to store images

Fixes a part of #312

@netlify
Copy link

netlify bot commented Oct 13, 2025

Deploy Preview for kubernetes-sigs-network-policy-api ready!

Name Link
🔨 Latest commit 8f0cf6b
🔍 Latest deploy log https://app.netlify.com/projects/kubernetes-sigs-network-policy-api/deploys/68f0ca1da9330a00087f32e1
😎 Deploy Preview https://deploy-preview-333--kubernetes-sigs-network-policy-api.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Oct 13, 2025
@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Oct 13, 2025
Copy link
Contributor

@bowei bowei left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

Don't we write a new blog post vs update the old ones?

main drawbacks to this API was that it was designed exclusively for use by the
Application Developer, although in reality it is used by many different cluster
personas, sometimes creating a complex web of objects to be maintained. In
Contrast, each resource in the Network Policy API is designed to be used by a
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[minor] don't capitalize Contrast.

The `Baseline` tier will allow administrators to set baseline security rules that
describe default connectivity for cluster workloads, which CAN be overridden by
developer NetworkPolicies if needed.
The major use case BANPs solve is the ability to flip the [default security stance of the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BANPs don't exist.

Suggest "The major use case for Baseline tier is to set a default security stance..."

cluster](user-stories.md#story-5-cluster-wide-default-guardrails).

### AdminNetworkPolicy Actions
### ClusterNetworkPolicy Actions
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest just leave this as ### Actions

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I edited all headers to remote the CNP from it, it probably was only important when we had ANP vs BANP

traffic, AdminNetworkPolicies will enable administrators to set `Pass`,
`Deny` or `Allow` as the action of each rule. AdminNetworkPolicy rules should
traffic, ClusterNetworkPolicy will enable administrators to set `Pass`,
`Deny` or `Accept` as the action of each rule. ClusterNetworkPolicy rules should
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[minor] the sentence "ClusterNetworkPolicy rules should be read as-is..." is confusing for me, but we don't have to fix this for this PR.

AdminNetworkPolicy `Pass` rules allow an admin to delegate security posture for
ClusterNetworkPolicy `Pass` rules in the `Admin` tier allow an admin to delegate security posture for
certain traffic to the Namespace owners by overriding any lower precedence Allow
or Deny rules. For example, intra-tenant traffic management can be delegated to tenant
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think tenant should be replaced with "namespace"

any well defined NetworkPolicies, and if not terminated ultimately be evaluated against any
BaselineAdminNetworkPolicies.
by a `Pass` rule will skip any further `Admin` tier rule selection, be evaluated against
any well-defined NetworkPolicies, and if not terminated ultimately be evaluated against any
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest:

"Traffic selected by a Pass rule will skip any lower precedence Admin tier rules and proceed to be evaluated by NetworkPolicy and Baseline tier policies i.e. NetworkPolicy will apply or if there is no NP match, Baseline policies will be evaluated.

Integer priority values were added to the ClusterNetworkPolicy API to allow Cluster
Admins to express direct and intentional ordering between various CNP Objects.
The `Priority` field in the CNP spec is defined as an integer value
within the range 0 to 1000 where rules with lower priority values have
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would leave the actual number range out of the doc to make it easier to maintain if the range changes.

@tssurya
Copy link
Contributor

tssurya commented Oct 14, 2025

#328 there is another blog post from @frozenprocess ?
maybe combining them is better? or do we want to go with both?

Ah I see comment on that one already: #328 (comment)

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: npinaeva

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 16, 2025
@npinaeva
Copy link
Member Author

Don't we write a new blog post vs update the old ones?

I am not sure what you mean, I did write a new blog post

Add a blog post with short description of changes, some migration
examples and future plans.

Signed-off-by: Nadia Pinaeva <[email protected]>
@npinaeva npinaeva added this to the v1alpha2 milestone Oct 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants