Add CLI and entry conversion support for JWT-SVID audience policies#6516
Closed
srikalyan wants to merge 2 commits intospiffe:mainfrom
Closed
Add CLI and entry conversion support for JWT-SVID audience policies#6516srikalyan wants to merge 2 commits intospiffe:mainfrom
srikalyan wants to merge 2 commits intospiffe:mainfrom
Conversation
…iffe#6043) Introduces per-audience JWT-SVID policy configuration to control JTI (JWT ID) claim inclusion and agent-side caching behavior. New JWTSVIDAudiencePolicy enum with three modes: - DEFAULT (0): No JTI, caching enabled (backwards compatible) - AUDITABLE (1): JTI included, caching enabled - UNIQUE (2): JTI included, caching disabled Features: - Per-entry default policy via jwt_svid_default_audience_policy - Per-audience overrides via jwt_svid_audience_policies map - "Most restrictive wins" for multi-audience tokens - Database schema v24 with entry_audience_policies table - Agent cache bypass for UNIQUE policy Note: API SDK and CLI integration will follow in a separate commit after spire-api-sdk is updated.
This commit adds support for the new JWT-SVID audience policy configuration in the SPIRE server CLI and entry conversion logic: CLI changes: - Add -jwtSVIDDefaultAudiencePolicy flag for default audience policy - Add -jwtSVIDAudiencePolicy flag for per-audience policy configuration - Update entry create, update, and show commands to handle new fields - Add AudiencePolicyFlag custom type for parsing audience:policy pairs Entry conversion: - Add JwtSvidDefaultAudiencePolicy and JwtSvidAudiencePolicies to EntryToProto and ProtoToEntry conversion functions - Add audiencePolicyToInternal helper for enum conversion Policy options: default, auditable, unique - default: No JTI claim, caching enabled (current behavior) - auditable: JTI claim included, caching enabled - unique: JTI claim included, caching disabled (unique tokens) Part of spiffe#6043 NOTE: Only merge after these dependent PRs are merged: - spire-api-sdk: spiffe/spire-api-sdk#84 - spire: spiffe#6514
Author
|
Will open it after my other 2 PRs are merged |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
-jwtSVIDDefaultAudiencePolicyflag for default audience policy-jwtSVIDAudiencePolicyflag for per-audience policy configurationPolicy options
Part of #6043
Dependencies
NOTE: Only merge after these dependent PRs are merged: