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
DPoP currently requires a Web Crypto private key, preventing callers from using external signers such as Secure Enclave, TPM, or HSM keys through the existing request helpers. Accept { publicKey, sign } alongside CryptoKeyPair:
The callback receives the exact JWS signing input and returns raw signature bytes. The library retains proof construction, serialization, nonce tracking, and JWT assembly; signing failures prevent the request from being sent.
All 267 tests pass, along with type, documentation example, formatting, and package checks. Added signature-verification, nonce-retry, and failure-path coverage, and separately exercised the callback with a real macOS Secure Enclave key.
I think this can already be handled with the existing headers and customFetch affordances.
For token endpoint and PAR requests, you can supply an externally signed proof through options.headers. For protected resource requests, pass it through the headers argument. Neither requires a DPoP handle, and resource requests automatically select Authorization: DPoP … when the dpop header is present.
Alternatively, customFetch lets you generate and attach the proof immediately before sending the request. When injecting a proof there for protected resource requests, also update the authorization scheme to DPoP. For AS requests, leave the configured client authentication intact.
Proof construction and nonce tracking would live in your integration with either approach.
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
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.
DPoP currently requires a Web Crypto private key, preventing callers from using external signers such as Secure Enclave, TPM, or HSM keys through the existing request helpers. Accept
{ publicKey, sign }alongsideCryptoKeyPair:The callback receives the exact JWS signing input and returns raw signature bytes. The library retains proof construction, serialization, nonce tracking, and JWT assembly; signing failures prevent the request from being sent.
All 267 tests pass, along with type, documentation example, formatting, and package checks. Added signature-verification, nonce-retry, and failure-path coverage, and separately exercised the callback with a real macOS Secure Enclave key.