Skip to content

Commit b2ad413

Browse files
committed
GEP 3779 - Identity Based Authz for east-west
1 parent fe41f50 commit b2ad413

File tree

2 files changed

+78
-0
lines changed

2 files changed

+78
-0
lines changed

geps/gep-3779/index.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# GEP-3779: Identity Based Authz for East-West Traffic
2+
3+
* Issue: [#3779](https://github.com/kubernetes-sigs/gateway-api/issues/3779)
4+
* Status: Provisional
5+
6+
(See [status definitions](../overview.md#gep-states).)
7+
8+
9+
## TLDR
10+
11+
Provide a method for configuing **Gateway API implementations** to add identity based Authorization for east-west traffic. K8s Service Accounts can serve as the client identities.
12+
13+
14+
## Goals
15+
16+
(Using the [Gateway API Personas](../../concepts/roles-and-personas.md))
17+
18+
* A way for Ana the Application Developer to configure a Gateway API implementation to perform identity based authorization that **allows** the requests for some K8s clients to the K8s workloads.
19+
20+
* A way for Chihiro the Application Developer to configure a Gateway API implementation to perform identity based authorization that **denies** the requests for some K8s to the K8s workloads.
21+
22+
23+
## Non-Goals
24+
25+
* Supporting any other identity than K8s service accounts.
26+
27+
* Supporting identity based authorization for north-south traffic.
28+
29+
30+
## Introduction
31+
32+
An identity-based authorization API is essential because it provides a structured way to control access to network traffic based on client identities within a Kubernetes cluster, a capability particularly vital for enforcing fine-grained security policies in complex multi-tenant or large-scale environments.
33+
34+
All the open source meshes have their own implementaition of idenity based authorization and it is now important use case for Gateway APIs for east-west traffic.
35+
36+
As service meshes commonly implement mTLS , client identity is provided in X.509 certificates through fields such as the URI SAN (often for workload-specific identities like SPIFFE IDs), DNS SAN etc. After TLS termination on the destination side for inbound traffic, identity-based authorization can be applied by the users. The request is then permitted or denied based on the rules defined in the authorization policy.
37+
38+
Identity based authorization policies can also be applied to an entire namespace. The rules of that policy are enforced for network traffic involving all workloads within that namespace.
39+
40+
## Outstanding Questions and Concerns (TODO)
41+
42+
43+
## API
44+
45+
46+
47+
## Conformance Details
48+
49+
50+
#### Feature Names
51+
52+
53+
### Conformance tests
54+
55+
56+
## Alternatives
57+
58+
59+
## References

geps/gep-3779/metadata.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
apiVersion: internal.gateway.networking.k8s.io/v1alpha1
2+
kind: GEPDetails
3+
number: 3779
4+
name: Identity Based Authz for east-west traffic
5+
status: Provisional
6+
# Any authors who contribute to the GEP in any way should be listed here using
7+
# their GitHub handle.
8+
authors:
9+
- aryan16
10+
- liorliberman
11+
# references is a list of hyperlinks to relevant external references.
12+
# It's intended to be used for storing GitHub discussions, Google docs, etc.
13+
references: {}
14+
# featureNames is a list of the feature names introduced by the GEP, if there
15+
# are any. This will allow us to track which feature was introduced by which GEP.
16+
featureNames: {}
17+
# changelog is a list of hyperlinks to PRs that make changes to the GEP, in
18+
# ascending date order.
19+
changelog: {}

0 commit comments

Comments
 (0)