@kya-os/mcp-i-cloudflare 1.13.6 → 1.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +23 -5
- package/dist/agent.js.map +1 -1
- package/dist/audit/deployment-binding.d.ts +54 -54
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -0
- package/dist/config.js.map +1 -1
- package/dist/delegation-http/anchor-do.d.ts.map +1 -1
- package/dist/delegation-http/anchor-do.js +108 -10
- package/dist/delegation-http/anchor-do.js.map +1 -1
- package/dist/delegation-http/anchor-registration-validate.d.ts +4 -0
- package/dist/delegation-http/anchor-registration-validate.d.ts.map +1 -1
- package/dist/delegation-http/anchor-registration-validate.js +9 -0
- package/dist/delegation-http/anchor-registration-validate.js.map +1 -1
- package/dist/delegation-http/anchor-registration.d.ts.map +1 -1
- package/dist/delegation-http/anchor-registration.js +119 -29
- package/dist/delegation-http/anchor-registration.js.map +1 -1
- package/dist/delegation-http/bearer-retry.d.ts +6 -14
- package/dist/delegation-http/bearer-retry.d.ts.map +1 -1
- package/dist/delegation-http/bearer-retry.js +37 -73
- package/dist/delegation-http/bearer-retry.js.map +1 -1
- package/dist/delegation-http/challenge.d.ts +20 -4
- package/dist/delegation-http/challenge.d.ts.map +1 -1
- package/dist/delegation-http/challenge.js +58 -8
- package/dist/delegation-http/challenge.js.map +1 -1
- package/dist/delegation-http/consent-anchor-bridge.d.ts +5 -8
- package/dist/delegation-http/consent-anchor-bridge.d.ts.map +1 -1
- package/dist/delegation-http/consent-anchor-bridge.js +236 -40
- package/dist/delegation-http/consent-anchor-bridge.js.map +1 -1
- package/dist/delegation-http/constants.d.ts +2 -0
- package/dist/delegation-http/constants.d.ts.map +1 -1
- package/dist/delegation-http/constants.js +2 -0
- package/dist/delegation-http/constants.js.map +1 -1
- package/dist/delegation-http/credential-consent.d.ts +3 -1
- package/dist/delegation-http/credential-consent.d.ts.map +1 -1
- package/dist/delegation-http/credential-consent.js +11 -1
- package/dist/delegation-http/credential-consent.js.map +1 -1
- package/dist/delegation-http/native-capabilities.d.ts +4 -0
- package/dist/delegation-http/native-capabilities.d.ts.map +1 -0
- package/dist/delegation-http/native-capabilities.js +53 -0
- package/dist/delegation-http/native-capabilities.js.map +1 -0
- package/dist/delegation-http/native-fetch.d.ts +3 -0
- package/dist/delegation-http/native-fetch.d.ts.map +1 -0
- package/dist/delegation-http/native-fetch.js +13 -0
- package/dist/delegation-http/native-fetch.js.map +1 -0
- package/dist/delegation-http/native-http.d.ts +102 -0
- package/dist/delegation-http/native-http.d.ts.map +1 -0
- package/dist/delegation-http/native-http.js +191 -0
- package/dist/delegation-http/native-http.js.map +1 -0
- package/dist/delegation-http/native-oauth.d.ts +26 -0
- package/dist/delegation-http/native-oauth.d.ts.map +1 -0
- package/dist/delegation-http/native-oauth.js +369 -0
- package/dist/delegation-http/native-oauth.js.map +1 -0
- package/dist/delegation-http/native-pickup.d.ts +20 -0
- package/dist/delegation-http/native-pickup.d.ts.map +1 -0
- package/dist/delegation-http/native-pickup.js +227 -0
- package/dist/delegation-http/native-pickup.js.map +1 -0
- package/dist/delegation-http/pickup-routes.d.ts +1 -0
- package/dist/delegation-http/pickup-routes.d.ts.map +1 -1
- package/dist/delegation-http/pickup-routes.js +55 -1
- package/dist/delegation-http/pickup-routes.js.map +1 -1
- package/dist/delegation-http/register.d.ts.map +1 -1
- package/dist/delegation-http/register.js +4 -7
- package/dist/delegation-http/register.js.map +1 -1
- package/dist/delegation-http/remote-issuer.d.ts +37 -0
- package/dist/delegation-http/remote-issuer.d.ts.map +1 -0
- package/dist/delegation-http/remote-issuer.js +289 -0
- package/dist/delegation-http/remote-issuer.js.map +1 -0
- package/dist/delegation-http/sid.d.ts +5 -2
- package/dist/delegation-http/sid.d.ts.map +1 -1
- package/dist/delegation-http/sid.js +8 -2
- package/dist/delegation-http/sid.js.map +1 -1
- package/dist/delegation-http/types.d.ts +31 -0
- package/dist/delegation-http/types.d.ts.map +1 -1
- package/dist/delegation-http/well-known-capability.d.ts.map +1 -1
- package/dist/delegation-http/well-known-capability.js +5 -0
- package/dist/delegation-http/well-known-capability.js.map +1 -1
- package/dist/helpers/env-mapper.d.ts.map +1 -1
- package/dist/helpers/env-mapper.js +4 -0
- package/dist/helpers/env-mapper.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/proof-generator.d.ts +2 -0
- package/dist/proof-generator.d.ts.map +1 -1
- package/dist/proof-generator.js +1 -0
- package/dist/proof-generator.js.map +1 -1
- package/dist/runtime/oauth-handler.d.ts.map +1 -1
- package/dist/runtime/oauth-handler.js +44 -1
- package/dist/runtime/oauth-handler.js.map +1 -1
- package/dist/security/mcp-admission.d.ts +43 -0
- package/dist/security/mcp-admission.d.ts.map +1 -0
- package/dist/security/mcp-admission.js +165 -0
- package/dist/security/mcp-admission.js.map +1 -0
- package/dist/security/mcp-holder-admission.d.ts +19 -0
- package/dist/security/mcp-holder-admission.d.ts.map +1 -0
- package/dist/security/mcp-holder-admission.js +52 -0
- package/dist/security/mcp-holder-admission.js.map +1 -0
- package/dist/security/presented-delegation.d.ts +13 -0
- package/dist/security/presented-delegation.d.ts.map +1 -0
- package/dist/security/presented-delegation.js +73 -0
- package/dist/security/presented-delegation.js.map +1 -0
- package/dist/services/consent.service.d.ts +10 -0
- package/dist/services/consent.service.d.ts.map +1 -1
- package/dist/services/consent.service.js +15 -3
- package/dist/services/consent.service.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -33,9 +33,22 @@ export declare function buildConsentUri(i: ChallengeVerdictInput): string;
|
|
|
33
33
|
/** The pickup endpoint URL on the worker's authorization host: `…/api/delegation/pickup/<sid>`. */
|
|
34
34
|
export declare function buildPickupUri(i: ChallengeVerdictInput): string;
|
|
35
35
|
/**
|
|
36
|
-
* Build the human-facing `instructions` string (§8.1)
|
|
37
|
-
*
|
|
38
|
-
*
|
|
36
|
+
* Build the human-facing `instructions` string (§8.1), gated on the host's
|
|
37
|
+
* declared pickup profile (`ChallengeVerdictInput.pickupProfile`).
|
|
38
|
+
*
|
|
39
|
+
* DEFAULT (no profile): the reviewed token-first choreography — generate an
|
|
40
|
+
* unpadded-base64url 32-byte token, establish the binding with it, relay the
|
|
41
|
+
* consent link after 202 pending, poll with the SAME token, retry as plain
|
|
42
|
+
* Bearer. No did:key polls and no signed retries: this runtime's pickup
|
|
43
|
+
* surface treats signature-only polls as no-identity polls, and its mint
|
|
44
|
+
* does not `cnf`-bind the delegation to a pickup key, so those directives
|
|
45
|
+
* would dead-end a compliant agent (signed poll never binds; signed retry of
|
|
46
|
+
* a non-holder-bound VC is refused as `kyaos/holder-mismatch`).
|
|
47
|
+
*
|
|
48
|
+
* The explicit pickupProfile opt-in retains the reviewed binding-first legacy
|
|
49
|
+
* envelope for hosts that support signed pickup. It does not make that legacy
|
|
50
|
+
* credential holder-bound. Strict native challenges and their mandatory fresh
|
|
51
|
+
* retry proofs are emitted by native-http.ts from the registered native contract.
|
|
39
52
|
*/
|
|
40
53
|
export declare function buildInstructions(i: ChallengeVerdictInput): string;
|
|
41
54
|
/**
|
|
@@ -46,7 +59,10 @@ export declare function buildChallengeBody(i: ChallengeVerdictInput, challengePr
|
|
|
46
59
|
/**
|
|
47
60
|
* Build the full §8.1 401 `Response`: dual `WWW-Authenticate` challenges (Delegation
|
|
48
61
|
* first, then Bearer), `Retry-After`, JSON content type, and `Cache-Control:
|
|
49
|
-
* no-store`.
|
|
62
|
+
* no-store`. Under the native profile the unsigned consent hint headers
|
|
63
|
+
* (`KYA-Auth-Required`/`KYA-Auth-Url`/`Link`/`KYA-Action`) are mirrored from the
|
|
64
|
+
* fetcher-200 envelope so header-only surfaces see the consent target on the 401
|
|
65
|
+
* too; the default legacy envelope stays 1.13.6-shaped.
|
|
50
66
|
*/
|
|
51
67
|
export declare function buildChallengeResponse(i: ChallengeVerdictInput, challengeProof: string): Response;
|
|
52
68
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challenge.d.ts","sourceRoot":"","sources":["../../src/delegation-http/challenge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAUnE;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,CAAC,EAAE,qBAAqB,GACvB,MAAM,CAqBR;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,yFAAyF;AACzF,wBAAgB,eAAe,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAEhE;AAED,mGAAmG;AACnG,wBAAgB,cAAc,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAE/D;AAED
|
|
1
|
+
{"version":3,"file":"challenge.d.ts","sourceRoot":"","sources":["../../src/delegation-http/challenge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAUnE;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,CAAC,EAAE,qBAAqB,GACvB,MAAM,CAqBR;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,yFAAyF;AACzF,wBAAgB,eAAe,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAEhE;AAED,mGAAmG;AACnG,wBAAgB,cAAc,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAE/D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAmBlE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,CAAC,EAAE,qBAAqB,EACxB,cAAc,EAAE,MAAM,GACrB,MAAM,CAsCR;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,CAAC,EAAE,qBAAqB,EACxB,cAAc,EAAE,MAAM,GACrB,QAAQ,CAmBV;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,6BAA6B,CAC3C,CAAC,EAAE,qBAAqB,EACxB,cAAc,EAAE,MAAM,GACrB,QAAQ,CAcV;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,wBAAwB,EAC7B,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAE,GACvE,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
|
|
@@ -60,17 +60,37 @@ export function buildPickupUri(i) {
|
|
|
60
60
|
return `https://${i.authorizationHost}/api/delegation/pickup/${i.sid}`;
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
|
-
* Build the human-facing `instructions` string (§8.1)
|
|
64
|
-
*
|
|
65
|
-
*
|
|
63
|
+
* Build the human-facing `instructions` string (§8.1), gated on the host's
|
|
64
|
+
* declared pickup profile (`ChallengeVerdictInput.pickupProfile`).
|
|
65
|
+
*
|
|
66
|
+
* DEFAULT (no profile): the reviewed token-first choreography — generate an
|
|
67
|
+
* unpadded-base64url 32-byte token, establish the binding with it, relay the
|
|
68
|
+
* consent link after 202 pending, poll with the SAME token, retry as plain
|
|
69
|
+
* Bearer. No did:key polls and no signed retries: this runtime's pickup
|
|
70
|
+
* surface treats signature-only polls as no-identity polls, and its mint
|
|
71
|
+
* does not `cnf`-bind the delegation to a pickup key, so those directives
|
|
72
|
+
* would dead-end a compliant agent (signed poll never binds; signed retry of
|
|
73
|
+
* a non-holder-bound VC is refused as `kyaos/holder-mismatch`).
|
|
74
|
+
*
|
|
75
|
+
* The explicit pickupProfile opt-in retains the reviewed binding-first legacy
|
|
76
|
+
* envelope for hosts that support signed pickup. It does not make that legacy
|
|
77
|
+
* credential holder-bound. Strict native challenges and their mandatory fresh
|
|
78
|
+
* retry proofs are emitted by native-http.ts from the registered native contract.
|
|
66
79
|
*/
|
|
67
80
|
export function buildInstructions(i) {
|
|
68
81
|
const consentUri = buildConsentUri(i);
|
|
69
82
|
const pickupUri = buildPickupUri(i);
|
|
70
|
-
|
|
71
|
-
`
|
|
72
|
-
|
|
73
|
-
|
|
83
|
+
if (i.pickupProfile === "kya-http/2") {
|
|
84
|
+
return (`This action requires human authorization. First establish your pickup binding at ${pickupUri}. ` +
|
|
85
|
+
`If you can sign HTTP requests, sign each poll with an ephemeral did:key; otherwise generate one random 32-byte token encoded as unpadded base64url and send it as X-KYA-Pickup-Token on EVERY poll. ` +
|
|
86
|
+
`After receiving 202 pending, show your user this link and ask them to approve: ${consentUri}. ` +
|
|
87
|
+
`Continue polling ${pickupUri} every ${i.pollIntervalS} seconds with the same binding. ` +
|
|
88
|
+
`When the response status is 200, take the 'delegation' value and retry your original request with header 'Authorization: Bearer <delegation>'.`);
|
|
89
|
+
}
|
|
90
|
+
return (`This action requires human authorization. Generate one random 32-byte token encoded as unpadded base64url and keep it for this authorization request. ` +
|
|
91
|
+
`First establish your pickup binding at ${pickupUri} by sending that token as X-KYA-Pickup-Token. ` +
|
|
92
|
+
`After receiving 202 pending, show your user this link and ask them to approve: ${consentUri}. ` +
|
|
93
|
+
`Continue polling ${pickupUri} every ${i.pollIntervalS} seconds with the same X-KYA-Pickup-Token on EVERY poll. ` +
|
|
74
94
|
`When the response status is 200, take the 'delegation' value and retry your original request with header 'Authorization: Bearer <delegation>'.`);
|
|
75
95
|
}
|
|
76
96
|
/**
|
|
@@ -89,6 +109,26 @@ export function buildChallengeBody(i, challengeProof) {
|
|
|
89
109
|
}
|
|
90
110
|
kyaos.poll_interval_s = i.pollIntervalS;
|
|
91
111
|
kyaos.challenge_proof = challengeProof;
|
|
112
|
+
if (i.pickupProfile === "kya-http/2") {
|
|
113
|
+
// Machine-readable choreography descriptor: agents that parse structure
|
|
114
|
+
// instead of prose read the pin header and retry presentation from here.
|
|
115
|
+
// Key order mirrors the golden fixture's `kyaos.action`. NATIVE PROFILE
|
|
116
|
+
// ONLY: checkpoint's legacy-drift boundary treats this block's presence
|
|
117
|
+
// as a reviewed signal of native pickup support, so the default legacy
|
|
118
|
+
// body stays 1.13.6-shaped (no action block).
|
|
119
|
+
kyaos.action = {
|
|
120
|
+
type: "delegation",
|
|
121
|
+
consent_uri: buildConsentUri(i),
|
|
122
|
+
pickup_uri: buildPickupUri(i),
|
|
123
|
+
poll_interval_s: i.pollIntervalS,
|
|
124
|
+
pin: { header: "X-KYA-Pickup-Token" },
|
|
125
|
+
retry: {
|
|
126
|
+
header: "Authorization",
|
|
127
|
+
scheme: "Bearer",
|
|
128
|
+
value_from: "delegation",
|
|
129
|
+
},
|
|
130
|
+
};
|
|
131
|
+
}
|
|
92
132
|
return {
|
|
93
133
|
error: KYAOS_ERRORS.authorizationRequired,
|
|
94
134
|
kyaos,
|
|
@@ -98,15 +138,25 @@ export function buildChallengeBody(i, challengeProof) {
|
|
|
98
138
|
/**
|
|
99
139
|
* Build the full §8.1 401 `Response`: dual `WWW-Authenticate` challenges (Delegation
|
|
100
140
|
* first, then Bearer), `Retry-After`, JSON content type, and `Cache-Control:
|
|
101
|
-
* no-store`.
|
|
141
|
+
* no-store`. Under the native profile the unsigned consent hint headers
|
|
142
|
+
* (`KYA-Auth-Required`/`KYA-Auth-Url`/`Link`/`KYA-Action`) are mirrored from the
|
|
143
|
+
* fetcher-200 envelope so header-only surfaces see the consent target on the 401
|
|
144
|
+
* too; the default legacy envelope stays 1.13.6-shaped.
|
|
102
145
|
*/
|
|
103
146
|
export function buildChallengeResponse(i, challengeProof) {
|
|
147
|
+
const consentUri = buildConsentUri(i);
|
|
104
148
|
const headers = new Headers();
|
|
105
149
|
headers.append("WWW-Authenticate", buildWWWAuthenticateDelegation(i));
|
|
106
150
|
headers.append("WWW-Authenticate", buildWWWAuthenticateBearer(i.realm));
|
|
107
151
|
headers.set("Retry-After", String(i.pollIntervalS));
|
|
108
152
|
headers.set("Content-Type", "application/json");
|
|
109
153
|
headers.set("Cache-Control", "no-store");
|
|
154
|
+
if (i.pickupProfile === "kya-http/2") {
|
|
155
|
+
headers.set("KYA-Auth-Required", "true");
|
|
156
|
+
headers.set("KYA-Auth-Url", consentUri);
|
|
157
|
+
headers.set("Link", `<${consentUri}>; rel="kya-authorize"`);
|
|
158
|
+
headers.set("KYA-Action", "challenge");
|
|
159
|
+
}
|
|
110
160
|
return new Response(JSON.stringify(buildChallengeBody(i, challengeProof)), {
|
|
111
161
|
status: 401,
|
|
112
162
|
headers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challenge.js","sourceRoot":"","sources":["../../src/delegation-http/challenge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIlE;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG,iBAAiB,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,UAAU,8BAA8B,CAC5C,CAAwB;IAExB,MAAM,MAAM,GAGR;QACF,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC;QAC/B,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;QAC7B,KAAK,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC;QACjC,aAAa,EAAE,CAAC,CAAC,YAAY;QAC7B,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC;QACjC,IAAI,EAAE,YAAY;KACnB,CAAC;IAEF,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM;IACzC,8EAA8E;IAC9E,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,CACnC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE1C,OAAO,cAAc,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAAa;IACtD,OAAO,qCAAqC,KAAK,wCAAwC,CAAC;AAC5F,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,eAAe,CAAC,CAAwB;IACtD,OAAO,WAAW,CAAC,CAAC,iBAAiB,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC;AAC/D,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,cAAc,CAAC,CAAwB;IACrD,OAAO,WAAW,CAAC,CAAC,iBAAiB,0BAA0B,CAAC,CAAC,GAAG,EAAE,CAAC;AACzE,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"challenge.js","sourceRoot":"","sources":["../../src/delegation-http/challenge.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,14 +45,11 @@ import type { HttpChallengeConfig } from "../config";
|
|
|
45
45
|
*/
|
|
46
46
|
export declare function resolveServerUrl(env: CloudflareEnv, c: HonoContext, realm?: string): string;
|
|
47
47
|
/**
|
|
48
|
-
* Resolve
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
* sets to the anchor sid). Falls back to the query for the legacy raw-HTML
|
|
54
|
-
* form's `action="/consent/approve?sid=…"` target, which some external PEPs may
|
|
55
|
-
* still construct directly.
|
|
48
|
+
* Resolve an explicit anchor `sid` from the query or body. Older anchor forms
|
|
49
|
+
* submit only `session_id`; recognize those only by the original kya namespace.
|
|
50
|
+
* An ordinary legacy UUID must not select the HTTP handler merely because it
|
|
51
|
+
* also meets the opaque HTTP ID syntax. The selected handler still validates
|
|
52
|
+
* CSRF and persisted anchor state before granting any authority.
|
|
56
53
|
*
|
|
57
54
|
* Peeks the body via `clone()` so the ORIGINAL request stream is never consumed
|
|
58
55
|
* here — `readBodyFields` still performs the one real body read, downstream in
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent-anchor-bridge.d.ts","sourceRoot":"","sources":["../../src/delegation-http/consent-anchor-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;
|
|
1
|
+
{"version":3,"file":"consent-anchor-bridge.d.ts","sourceRoot":"","sources":["../../src/delegation-http/consent-anchor-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAmWrD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,aAAa,EAClB,CAAC,EAAE,WAAW,EACd,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,CAiBR;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,iBAAiB,CACrC,CAAC,EAAE,WAAW,GACb,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA+B7B;AAqYD;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,CAAC,EAAE,WAAW,EACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACjC,OAAO,CAAC,QAAQ,CAAC,CA+GnB;AAED;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,CAAC,EAAE,WAAW,EACd,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACjC,OAAO,CAAC,QAAQ,CAAC,CAySnB"}
|