You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On current main, issuer, authorization-server metadata, and DPoP token caches use request.url; client registrations use the issuer. Two resources in the same Solid/LWS storage therefore repeat discovery or authentication. Simply replacing the URL with its origin or issuer is unsafe: an origin can host several storages, and an issuer can serve unrelated accounts and resource servers.
Proposal — issue only
Design a configurable context/key resolver independently of cache persistence and the component caching design in #29. Keep the core library protocol-agnostic; supply Solid/LWS-aware discovery as an adapter.
Discover an authoritative storage root/context using the protocol's advertised relationships and storage description, validating trust and membership. The Solid Protocol specifies a storage-description Link relation. Define which deployed Solid/LWS versions and relationships are supported rather than assuming their vocabularies are interchangeable.
Specify URL canonicalization, path-segment boundaries, redirects, nested/multiple storages on one origin, cross-origin storage descriptions, mapping expiration and invalidation, account switches, missing/CORS-hidden metadata, and a conservative exact-URL fallback.
Use the same resolved credential context for token cache keys and Web Lock names, including cross-tab refresh-token rotation. Avoid embedding tokens or other secrets in lock names.
Keep DPoP proofs request-specific (htu, htm, fresh jti); sharing credential material never means sharing proofs.
Acceptance criteria
Requests to two resources in one verified storage reuse appropriate cached material.
Distinct storages on the same origin remain isolated, as do clients/accounts using the same issuer.
No implementation PR is requested for this issue yet. This also records the storage-scope portion of the older per-issuer cache proposal #11, without adopting issuer-wide credential sharing.
Related persistence work: #45. Configurable storage adapters do not themselves authorize broader credential reuse.
Problem
On current
main, issuer, authorization-server metadata, and DPoP token caches userequest.url; client registrations use the issuer. Two resources in the same Solid/LWS storage therefore repeat discovery or authentication. Simply replacing the URL with its origin or issuer is unsafe: an origin can host several storages, and an issuer can serve unrelated accounts and resource servers.Proposal — issue only
Design a configurable context/key resolver independently of cache persistence and the component caching design in #29. Keep the core library protocol-agnostic; supply Solid/LWS-aware discovery as an adapter.
htu,htm, freshjti); sharing credential material never means sharing proofs.Acceptance criteria
No implementation PR is requested for this issue yet. This also records the storage-scope portion of the older per-issuer cache proposal #11, without adopting issuer-wide credential sharing.
Related persistence work: #45. Configurable storage adapters do not themselves authorize broader credential reuse.