Files
flex-auth/examples/claims/keycloak-group-overage.yaml
tegwick f930e96568
Some checks failed
CI / Build and Test (push) Has been cancelled
CI / Lint (push) Has been cancelled
IAM Profile consumption doc + claim fixtures; close FLEX-WP-0005
Completes FLEX-WP-0005 T05 and closes the Foundations and Topaz
Alignment workstream.

docs/iam-profile-consumption.md captures flex-auth's input surface
against NetKingdom IAM Profile v0.1:
- boundary (flex-auth consumes verified claims; upstream layer
  validates signatures and audiences)
- normalized input envelope (matches Markitect's EnterpriseIdentity)
- required, recommended, and tolerated claim variations
- role-claim location union (top-level / realm_access / resource_access)
- scope encoding (string vs array)
- principal-type detection (human / service / emergency)
- group-overage and freshness expectations
- production vs local-development handling

examples/claims/ ships five contract fixtures:
- key-cape-lightweight.yaml (profile minimum)
- keycloak-heavy.yaml (full variation set + MFA)
- service-account.yaml (svc-* hub-to-hub)
- emergency.yaml (break-glass with incident metadata)
- keycloak-group-overage.yaml (Entra-style hasgroups: true)

All fixtures parse as valid YAML. They become contract tests for the
standalone evaluator (FLEX-WP-0002 P2.4) and the Topaz adapter
(FLEX-WP-0004 T01); both code paths must produce identical normalized
envelopes for the same fixture.

FLEX-WP-0005 workstream marked status=done in this file and completed
in the State Hub. FLEX-WP-0002 is now fully unblocked.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 09:09:36 +02:00

27 lines
829 B
YAML

# Claim envelope when the token-side `groups` list has been clipped by
# the IdP. Both Microsoft Entra and Keycloak signal this differently;
# this fixture shows the Entra-style `hasgroups: true` flag. flex-auth
# sets directory.group_overage = true and depends on the directory
# resolver (FLEX-WP-0004 T05) to fetch the full set.
#
# Reference: docs/iam-profile-consumption.md §"Group Overage and
# Freshness".
iss: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/v2.0
sub: f1c4f64e-2c0c-4cda-8c9f-9f3f8f3a2b0e
aud:
- flex-auth
exp: 4102444800
iat: 1767225600
preferred_username: ada
name: Ada Lovelace
scope: openid profile hub:read
roles:
- viewer
hasgroups: true
_claim_names:
groups: src1
_claim_sources:
src1:
endpoint: https://graph.microsoft.com/v1.0/users/f1c4f64e/getMemberObjects