Files
acdl/platform/abac/token-vend.policy
T
Jon Chery fe0ee6aa45 feat(P04): kyverno-json ABAC policy + evaluator (REQ-339, D-227, C-5.1, security-engineer)
---ci---
project: acdl
phase: 4
milestone: v1.28
status: execute
persona: security-engineer
---
2026-08-19 23:04:27 +00:00

51 lines
1.1 KiB
Plaintext

{
"apiVersion": "json.kyverno.io/v1alpha1",
"kind": "ValidatingPolicy",
"metadata": {
"name": "token-vend",
"annotations": {
"nova.cloudinit.dev/severity": "critical",
"title.policy.kyverno.io": "Token vend ABAC authorization (REQ-339, C-5.1, C-6.1)"
}
},
"spec": {
"rules": [
{
"name": "owner-matches",
"assert": {
"all": [
{
"check": {
"(target_resource.owner == subject.owner)": true
}
}
]
}
},
{
"name": "role-env-match",
"assert": {
"all": [
{
"check": {
"((subject.role == 'developer' && environment == 'dev') || (subject.role == 'sre' && contains(['qa','prod','dr'], environment)))": true
}
}
]
}
},
{
"name": "requested-claims-present",
"assert": {
"all": [
{
"check": {
"(length(requested_claims) > `0`)": true
}
}
]
}
}
]
}
}