Skip to content

Commit eef09e1

Browse files
committed
docs(auth): align polaris-cv docs with exchange-only enforcement
1 parent abe1a2d commit eef09e1

2 files changed

Lines changed: 6 additions & 4 deletions

File tree

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,9 @@ request adding CHANGELOG notes for breaking (!) changes and possibly other secti
149149
directly under an allowed location, at `s3://b1/ns`, and rejected it as a custom location even
150150
though the request asked for none. The namespace location is now compared against the
151151
catalog's `default-base-location`, which is what it is derived from.
152+
- Internal JWTs are bound to principal secret generation via `polaris-cv` (no secret material in the
153+
token). Credential-generation is enforced on token exchange; bearer verify is signature and claims
154+
only. Secrets-load failures during exchange return service unavailable.
152155

153156
### Commits
154157

@@ -236,7 +239,6 @@ request adding CHANGELOG notes for breaking (!) changes and possibly other secti
236239
- OPA authorizer now includes the realm identifier in the authorization context sent to OPA (`input.context.realm`). This ensures OPA policies can enforce tenant isolation across realms, preventing potential collisions if identical principal or resource names exist in different realms.
237240
- Management API delete operations for principals, principal roles, catalog roles, and catalogs now return error messages that match the actual failure reason (for example, concurrent modification no longer reports a misleading protected-entity message).
238241
- Python CLI `setup apply` now defaults to an `INTERNAL` catalog type when the `type` field is left blank or null in the setup config, instead of crashing with `AttributeError`
239-
- Internal JWTs are bound to principal secret generation via `polaris-cv` (no secret material in the token). Credential-generation is enforced on token exchange; bearer verify is signature and claims only. Secrets-load failures during exchange return service unavailable.
240242

241243
## [1.6.0]
242244

polaris-core/src/main/java/org/apache/polaris/core/entity/PolarisPrincipalSecrets.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,9 +180,9 @@ public boolean matchesSecret(String potentialSecret) {
180180
/**
181181
* Credentials-generation fingerprint corresponding to the secret that matches {@code
182182
* potentialSecret}: the main generation when it matches the main secret hash, the secondary
183-
* generation when it matches the secondary secret hash, or empty when it matches neither. Tokens
184-
* minted from these credentials are bound to the matching generation, so their validity cannot
185-
* outlive the validity of the credentials that produced them.
183+
* generation when it matches the secondary secret hash, or empty when it matches neither. Newly
184+
* minted tokens carry this fingerprint in the {@code polaris-cv} claim; credential-generation is
185+
* enforced on token exchange, while bearer verify checks only the JWT signature and claims.
186186
*
187187
* <p>Comparisons are constant-time, as in {@link #matchesCredentialsVersion(String)}.
188188
*/

0 commit comments

Comments
 (0)