@dotdo/oauth 0.1.5 → 0.1.6
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/dev.d.ts +10 -1
- package/dist/dev.d.ts.map +1 -1
- package/dist/dev.js +6 -5
- package/dist/dev.js.map +1 -1
- package/dist/jwt.d.ts +17 -11
- package/dist/jwt.d.ts.map +1 -1
- package/dist/jwt.js.map +1 -1
- package/dist/pkce.d.ts.map +1 -1
- package/dist/pkce.js +33 -19
- package/dist/pkce.js.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +251 -78
- package/dist/server.js.map +1 -1
- package/dist/types.d.ts +36 -8
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/dev.d.ts
CHANGED
|
@@ -28,9 +28,18 @@ export interface DevUser {
|
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
30
|
* Development mode configuration
|
|
31
|
+
*
|
|
32
|
+
* @warning SECURITY: devMode should NEVER be enabled in production environments.
|
|
33
|
+
* It bypasses upstream OAuth providers and uses simple password authentication,
|
|
34
|
+
* which is insecure for production use. Only use for local development and testing.
|
|
31
35
|
*/
|
|
32
36
|
export interface DevModeConfig {
|
|
33
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* Enable dev mode (disables upstream OAuth)
|
|
39
|
+
*
|
|
40
|
+
* @warning SECURITY: Never enable in production! This bypasses all upstream
|
|
41
|
+
* OAuth security and allows simple password-based authentication.
|
|
42
|
+
*/
|
|
34
43
|
enabled: boolean;
|
|
35
44
|
/** Pre-configured test users */
|
|
36
45
|
users?: DevUser[];
|
package/dist/dev.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAuC,MAAM,YAAY,CAAA;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAGhD;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,cAAc;IACd,EAAE,EAAE,MAAM,CAAA;IACV,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,sBAAsB;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CACjB;AAED
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"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"}
|
package/dist/dev.js
CHANGED
|
@@ -18,9 +18,9 @@ export function createTestHelpers(storage, devUsers, options) {
|
|
|
18
18
|
const user = {
|
|
19
19
|
id: userData.id,
|
|
20
20
|
email: userData.email,
|
|
21
|
-
name: userData.name,
|
|
22
|
-
organizationId: userData.organizationId,
|
|
23
|
-
roles: userData.roles,
|
|
21
|
+
...(userData.name !== undefined && { name: userData.name }),
|
|
22
|
+
...(userData.organizationId !== undefined && { organizationId: userData.organizationId }),
|
|
23
|
+
...(userData.roles !== undefined && { roles: userData.roles }),
|
|
24
24
|
createdAt: Date.now(),
|
|
25
25
|
updatedAt: Date.now(),
|
|
26
26
|
};
|
|
@@ -85,7 +85,7 @@ export function createTestHelpers(storage, devUsers, options) {
|
|
|
85
85
|
clientId: params.clientId,
|
|
86
86
|
userId: params.userId,
|
|
87
87
|
redirectUri: params.redirectUri,
|
|
88
|
-
scope: params.scope,
|
|
88
|
+
...(params.scope !== undefined && { scope: params.scope }),
|
|
89
89
|
codeChallenge: params.codeChallenge,
|
|
90
90
|
codeChallengeMethod: 'S256',
|
|
91
91
|
issuedAt: Date.now(),
|
|
@@ -100,11 +100,12 @@ export function createTestHelpers(storage, devUsers, options) {
|
|
|
100
100
|
}
|
|
101
101
|
// If allowAnyCredentials is enabled, create a new user
|
|
102
102
|
if (allowAnyCredentials) {
|
|
103
|
+
const namePart = email.split('@')[0];
|
|
103
104
|
const newUser = {
|
|
104
105
|
id: `dev_${generateToken(12)}`,
|
|
105
106
|
email,
|
|
106
107
|
password,
|
|
107
|
-
name:
|
|
108
|
+
...(namePart && { name: namePart }),
|
|
108
109
|
};
|
|
109
110
|
devUsers.set(email.toLowerCase(), newUser);
|
|
110
111
|
return newUser;
|
package/dist/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"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"}
|
package/dist/jwt.d.ts
CHANGED
|
@@ -6,18 +6,24 @@
|
|
|
6
6
|
* fetches public keys from JWKS endpoints.
|
|
7
7
|
*/
|
|
8
8
|
/**
|
|
9
|
-
* Result of JWT verification
|
|
9
|
+
* Result of JWT verification - discriminated union based on validity
|
|
10
10
|
*/
|
|
11
|
-
export
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
11
|
+
export type JWTVerifyResult = {
|
|
12
|
+
valid: true;
|
|
13
|
+
payload: JWTPayload;
|
|
14
|
+
header: JWTHeader;
|
|
15
|
+
error?: undefined;
|
|
16
|
+
} | {
|
|
17
|
+
valid: false;
|
|
18
|
+
error: string;
|
|
19
|
+
payload?: undefined;
|
|
20
|
+
header?: undefined;
|
|
21
|
+
} | {
|
|
22
|
+
valid: false;
|
|
23
|
+
error: string;
|
|
24
|
+
payload: JWTPayload;
|
|
25
|
+
header: JWTHeader;
|
|
26
|
+
};
|
|
21
27
|
/**
|
|
22
28
|
* JWT Header
|
|
23
29
|
*/
|
package/dist/jwt.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../src/jwt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,
|
|
1
|
+
{"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../src/jwt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,GAC1E;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAA;CAAE,GACxE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAA;AAE3E;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,6BAA6B;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,aAAa;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,cAAc;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,wCAAwC;IACxC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACvB,uCAAuC;IACvC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,kCAAkC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,aAAa;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,wBAAwB;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC5B,qDAAqD;IACrD,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,sEAAsE;IACtE,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,4BAA4B;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AA4BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,SAAS,CAC7B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,eAAe,CAAC,CAiH1B;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,GAAG,IAAI,CAc1F;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,GAAE,MAAU,GAAG,OAAO,CAQ/E;AA4MD;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC"}
|
package/dist/jwt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.js","sourceRoot":"","sources":["../src/jwt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"jwt.js","sourceRoot":"","sources":["../src/jwt.ts"],"names":[],"mappings":"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"}
|
package/dist/pkce.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,GAAE,MAAW,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"pkce.d.ts","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,GAAE,MAAW,GAAG,MAAM,CAoBhE;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAK7E;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAe,GACtB,OAAO,CAAC,OAAO,CAAC,CAQlB;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,MAAM,GAAE,MAAW,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAIxG;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAU3D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAWxD;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAW/D;AA6BD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,GAAE,MAAW,GAAG,MAAM,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,GAAE,MAAW,GAAG,MAAM,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAKtE;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGvF"}
|
package/dist/pkce.js
CHANGED
|
@@ -19,11 +19,16 @@ export function generateCodeVerifier(length = 64) {
|
|
|
19
19
|
throw new Error('Code verifier length must be between 43 and 128 characters');
|
|
20
20
|
}
|
|
21
21
|
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~';
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
// Use rejection sampling to avoid modulo bias
|
|
23
|
+
// For 66 chars, maxValid = 256 - (256 % 66) = 256 - 58 = 198
|
|
24
|
+
const maxValid = 256 - (256 % chars.length);
|
|
24
25
|
let verifier = '';
|
|
25
26
|
for (let i = 0; i < length; i++) {
|
|
26
|
-
|
|
27
|
+
let value;
|
|
28
|
+
do {
|
|
29
|
+
value = crypto.getRandomValues(new Uint8Array(1))[0];
|
|
30
|
+
} while (value >= maxValid);
|
|
31
|
+
verifier += chars[value % chars.length];
|
|
27
32
|
}
|
|
28
33
|
return verifier;
|
|
29
34
|
}
|
|
@@ -120,6 +125,29 @@ export function constantTimeEqual(a, b) {
|
|
|
120
125
|
}
|
|
121
126
|
return result === 0;
|
|
122
127
|
}
|
|
128
|
+
/** Alphanumeric characters for token/state generation */
|
|
129
|
+
const ALPHANUMERIC_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
130
|
+
/**
|
|
131
|
+
* Generate a cryptographically random string from a given charset
|
|
132
|
+
* Uses rejection sampling to avoid modulo bias.
|
|
133
|
+
*
|
|
134
|
+
* @param length - Length of the string
|
|
135
|
+
* @param charset - Characters to use for generation
|
|
136
|
+
* @returns Random string
|
|
137
|
+
*/
|
|
138
|
+
function generateRandomString(length, charset) {
|
|
139
|
+
// Use rejection sampling to avoid modulo bias
|
|
140
|
+
const maxValid = 256 - (256 % charset.length);
|
|
141
|
+
let result = '';
|
|
142
|
+
for (let i = 0; i < length; i++) {
|
|
143
|
+
let value;
|
|
144
|
+
do {
|
|
145
|
+
value = crypto.getRandomValues(new Uint8Array(1))[0];
|
|
146
|
+
} while (value >= maxValid);
|
|
147
|
+
result += charset[value % charset.length];
|
|
148
|
+
}
|
|
149
|
+
return result;
|
|
150
|
+
}
|
|
123
151
|
/**
|
|
124
152
|
* Generate a random state parameter for CSRF protection
|
|
125
153
|
*
|
|
@@ -127,14 +155,7 @@ export function constantTimeEqual(a, b) {
|
|
|
127
155
|
* @returns Random state string
|
|
128
156
|
*/
|
|
129
157
|
export function generateState(length = 32) {
|
|
130
|
-
|
|
131
|
-
const randomValues = new Uint8Array(length);
|
|
132
|
-
crypto.getRandomValues(randomValues);
|
|
133
|
-
let state = '';
|
|
134
|
-
for (let i = 0; i < length; i++) {
|
|
135
|
-
state += chars[randomValues[i] % chars.length];
|
|
136
|
-
}
|
|
137
|
-
return state;
|
|
158
|
+
return generateRandomString(length, ALPHANUMERIC_CHARS);
|
|
138
159
|
}
|
|
139
160
|
/**
|
|
140
161
|
* Generate a random token (for access tokens, refresh tokens, etc.)
|
|
@@ -143,14 +164,7 @@ export function generateState(length = 32) {
|
|
|
143
164
|
* @returns Random token string
|
|
144
165
|
*/
|
|
145
166
|
export function generateToken(length = 32) {
|
|
146
|
-
|
|
147
|
-
const randomValues = new Uint8Array(length);
|
|
148
|
-
crypto.getRandomValues(randomValues);
|
|
149
|
-
let token = '';
|
|
150
|
-
for (let i = 0; i < length; i++) {
|
|
151
|
-
token += chars[randomValues[i] % chars.length];
|
|
152
|
-
}
|
|
153
|
-
return token;
|
|
167
|
+
return generateRandomString(length, ALPHANUMERIC_CHARS);
|
|
154
168
|
}
|
|
155
169
|
/**
|
|
156
170
|
* Generate a unique authorization code
|
package/dist/pkce.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE;IACtD,IAAI,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IAED,MAAM,KAAK,GAAG,oEAAoE,CAAA;IAClF,MAAM,
|
|
1
|
+
{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../src/pkce.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE;IACtD,IAAI,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;IAC/E,CAAC;IAED,MAAM,KAAK,GAAG,oEAAoE,CAAA;IAClF,8CAA8C;IAC9C,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAE3C,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,IAAI,KAAa,CAAA;QACjB,GAAG,CAAC;YACF,KAAK,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAA;QACvD,CAAC,QAAQ,KAAK,IAAI,QAAQ,EAAC;QAC3B,QAAQ,IAAI,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IACzC,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,QAAgB;IAC1D,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;IACjC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACrC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC9D,OAAO,eAAe,CAAC,UAAU,CAAC,CAAA;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAAgB,EAChB,SAAiB,EACjB,SAAiB,MAAM;IAEvB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,+BAA+B;QAC/B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAC/D,OAAO,iBAAiB,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;AACxD,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,SAAiB,EAAE;IACpD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAA;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAmB;IACjD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAA;IACpC,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAA;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC;SAChB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AACvB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,wBAAwB;IACxB,MAAM,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3D,mCAAmC;IACnC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;IAC3B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAA;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,CAAS,EAAE,CAAS;IACpD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC;IAED,OAAO,MAAM,KAAK,CAAC,CAAA;AACrB,CAAC;AAED,yDAAyD;AACzD,MAAM,kBAAkB,GAAG,gEAAgE,CAAA;AAE3F;;;;;;;GAOG;AACH,SAAS,oBAAoB,CAAC,MAAc,EAAE,OAAe;IAC3D,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAE7C,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,IAAI,KAAa,CAAA;QACjB,GAAG,CAAC;YACF,KAAK,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAA;QACvD,CAAC,QAAQ,KAAK,IAAI,QAAQ,EAAC;QAC3B,MAAM,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE;IAC/C,OAAO,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE;IAC/C,OAAO,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;AACzD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO,aAAa,CAAC,EAAE,CAAC,CAAA;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAc;IACnD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAA;IACjC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC9D,OAAO,eAAe,CAAC,UAAU,CAAC,CAAA;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAc,EAAE,IAAY;IACnE,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACnD,OAAO,iBAAiB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;AAC9C,CAAC"}
|
package/dist/server.d.ts
CHANGED
|
@@ -44,6 +44,8 @@ export interface OAuth21ServerConfig {
|
|
|
44
44
|
onUserAuthenticated?: (user: OAuthUser) => void | Promise<void>;
|
|
45
45
|
/** Enable debug logging */
|
|
46
46
|
debug?: boolean;
|
|
47
|
+
/** Allowed CORS origins (default: issuer origin only in production, '*' in dev mode) */
|
|
48
|
+
allowedOrigins?: string[];
|
|
47
49
|
}
|
|
48
50
|
/**
|
|
49
51
|
* Extended Hono app with test helpers
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,EAIV,SAAS,EAGT,mBAAmB,EACpB,MAAM,YAAY,CAAA;AASnB,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,WAAW,EAGjB,MAAM,UAAU,CAAA;AAEjB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAA;IACd,iDAAiD;IACjD,OAAO,EAAE,YAAY,CAAA;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,mBAAmB,CAAA;IAC9B,mEAAmE;IACnE,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yCAAyC;IACzC,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,oDAAoD;IACpD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/D,2BAA2B;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,wFAAwF;IACxF,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,IAAI;IACzC,+DAA+D;IAC/D,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,GAAG,aAAa,CAokB9E;AAyeD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC7E,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA"}
|
package/dist/server.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { Hono } from 'hono';
|
|
18
18
|
import { cors } from 'hono/cors';
|
|
19
|
-
import { generateAuthorizationCode, generateToken, generateState, verifyCodeChallenge, hashClientSecret, } from './pkce.js';
|
|
19
|
+
import { generateAuthorizationCode, generateToken, generateState, verifyCodeChallenge, hashClientSecret, verifyClientSecret, } from './pkce.js';
|
|
20
20
|
import { createTestHelpers, generateLoginFormHtml, } from './dev.js';
|
|
21
21
|
/**
|
|
22
22
|
* Create an OAuth 2.1 server as a Hono app
|
|
@@ -58,11 +58,19 @@ import { createTestHelpers, generateLoginFormHtml, } from './dev.js';
|
|
|
58
58
|
* ```
|
|
59
59
|
*/
|
|
60
60
|
export function createOAuth21Server(config) {
|
|
61
|
-
const { issuer, storage, upstream, devMode, scopes = ['openid', 'profile', 'email', 'offline_access'], accessTokenTtl = 3600, refreshTokenTtl = 2592000, authCodeTtl = 600, enableDynamicRegistration = true, onUserAuthenticated, debug = false, } = config;
|
|
61
|
+
const { issuer, storage, upstream, devMode, scopes = ['openid', 'profile', 'email', 'offline_access'], accessTokenTtl = 3600, refreshTokenTtl = 2592000, authCodeTtl = 600, enableDynamicRegistration = true, onUserAuthenticated, debug = false, allowedOrigins, } = config;
|
|
62
62
|
// Validate configuration
|
|
63
63
|
if (!devMode?.enabled && !upstream) {
|
|
64
64
|
throw new Error('Either upstream configuration or devMode must be provided');
|
|
65
65
|
}
|
|
66
|
+
// Security warning: devMode should never be used in production
|
|
67
|
+
// Use globalThis to access process in a way that works in all environments (Node, Deno, browsers)
|
|
68
|
+
const nodeEnv = globalThis.process?.env?.NODE_ENV;
|
|
69
|
+
if (devMode?.enabled && nodeEnv === 'production') {
|
|
70
|
+
console.warn('[OAuth] WARNING: devMode is enabled in a production environment!\n' +
|
|
71
|
+
'This bypasses upstream OAuth security and allows simple password authentication.\n' +
|
|
72
|
+
'This is a critical security risk. Set devMode.enabled = false for production.');
|
|
73
|
+
}
|
|
66
74
|
const app = new Hono();
|
|
67
75
|
// Dev mode user storage
|
|
68
76
|
const devUsers = new Map();
|
|
@@ -78,12 +86,26 @@ export function createOAuth21Server(config) {
|
|
|
78
86
|
accessTokenTtl,
|
|
79
87
|
refreshTokenTtl,
|
|
80
88
|
authCodeTtl,
|
|
81
|
-
allowAnyCredentials: devMode.allowAnyCredentials,
|
|
89
|
+
...(devMode.allowAnyCredentials !== undefined && { allowAnyCredentials: devMode.allowAnyCredentials }),
|
|
82
90
|
});
|
|
83
91
|
}
|
|
84
|
-
// CORS for all endpoints
|
|
92
|
+
// CORS for all endpoints - restrictive by default
|
|
93
|
+
// In production, only allow issuer origin unless explicitly configured
|
|
94
|
+
// In dev mode, allow all origins if not specified
|
|
95
|
+
const corsOrigins = allowedOrigins ?? (devMode?.enabled ? ['*'] : [new URL(issuer).origin]);
|
|
85
96
|
app.use('*', cors({
|
|
86
|
-
origin:
|
|
97
|
+
origin: (origin) => {
|
|
98
|
+
// If '*' is in the list, allow all origins
|
|
99
|
+
if (corsOrigins.includes('*')) {
|
|
100
|
+
return origin || '*';
|
|
101
|
+
}
|
|
102
|
+
// Otherwise, check if the origin is in the allowed list
|
|
103
|
+
if (origin && corsOrigins.includes(origin)) {
|
|
104
|
+
return origin;
|
|
105
|
+
}
|
|
106
|
+
// Return null to deny the request
|
|
107
|
+
return null;
|
|
108
|
+
},
|
|
87
109
|
allowMethods: ['GET', 'POST', 'OPTIONS'],
|
|
88
110
|
allowHeaders: ['Content-Type', 'Authorization'],
|
|
89
111
|
exposeHeaders: ['WWW-Authenticate'],
|
|
@@ -99,7 +121,7 @@ export function createOAuth21Server(config) {
|
|
|
99
121
|
issuer,
|
|
100
122
|
authorization_endpoint: `${issuer}/authorize`,
|
|
101
123
|
token_endpoint: `${issuer}/token`,
|
|
102
|
-
registration_endpoint:
|
|
124
|
+
...(enableDynamicRegistration && { registration_endpoint: `${issuer}/register` }),
|
|
103
125
|
revocation_endpoint: `${issuer}/revoke`,
|
|
104
126
|
scopes_supported: scopes,
|
|
105
127
|
response_types_supported: ['code'],
|
|
@@ -140,14 +162,14 @@ export function createOAuth21Server(config) {
|
|
|
140
162
|
*/
|
|
141
163
|
app.get('/authorize', async (c) => {
|
|
142
164
|
const params = c.req.query();
|
|
143
|
-
// Validate required parameters
|
|
144
|
-
const clientId = params
|
|
145
|
-
const redirectUri = params
|
|
146
|
-
const responseType = params
|
|
147
|
-
const codeChallenge = params
|
|
148
|
-
const codeChallengeMethod = params
|
|
149
|
-
const scope = params
|
|
150
|
-
const state = params
|
|
165
|
+
// Validate required parameters (bracket notation for index signature access)
|
|
166
|
+
const clientId = params['client_id'];
|
|
167
|
+
const redirectUri = params['redirect_uri'];
|
|
168
|
+
const responseType = params['response_type'];
|
|
169
|
+
const codeChallenge = params['code_challenge'];
|
|
170
|
+
const codeChallengeMethod = params['code_challenge_method'];
|
|
171
|
+
const scope = params['scope'];
|
|
172
|
+
const state = params['state'];
|
|
151
173
|
if (debug) {
|
|
152
174
|
console.log('[OAuth] Authorize request:', { clientId, redirectUri, responseType, scope });
|
|
153
175
|
}
|
|
@@ -167,6 +189,13 @@ export function createOAuth21Server(config) {
|
|
|
167
189
|
if (!redirectUri) {
|
|
168
190
|
return c.json({ error: 'invalid_request', error_description: 'redirect_uri is required' }, 400);
|
|
169
191
|
}
|
|
192
|
+
// Validate redirect_uri is a valid URL
|
|
193
|
+
try {
|
|
194
|
+
new URL(redirectUri);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
return c.json({ error: 'invalid_request', error_description: 'redirect_uri must be a valid URL' }, 400);
|
|
198
|
+
}
|
|
170
199
|
if (!client.redirectUris.includes(redirectUri)) {
|
|
171
200
|
return c.json({ error: 'invalid_request', error_description: 'redirect_uri not registered for this client' }, 400);
|
|
172
201
|
}
|
|
@@ -183,8 +212,8 @@ export function createOAuth21Server(config) {
|
|
|
183
212
|
issuer,
|
|
184
213
|
clientId,
|
|
185
214
|
redirectUri,
|
|
186
|
-
scope,
|
|
187
|
-
state,
|
|
215
|
+
...(scope !== undefined && { scope }),
|
|
216
|
+
...(state !== undefined && { state }),
|
|
188
217
|
codeChallenge,
|
|
189
218
|
codeChallengeMethod,
|
|
190
219
|
});
|
|
@@ -195,17 +224,21 @@ export function createOAuth21Server(config) {
|
|
|
195
224
|
return c.json({ error: 'server_error', error_description: 'No upstream provider configured' }, 500);
|
|
196
225
|
}
|
|
197
226
|
// Store the authorization request and redirect to upstream
|
|
227
|
+
// Generate a cryptographically secure state for CSRF protection with upstream provider
|
|
198
228
|
const upstreamState = generateState(64);
|
|
199
229
|
// Store pending auth as a temporary authorization code that will be replaced
|
|
230
|
+
// The upstreamState is stored both in the code key (for lookup) and as a separate field (for explicit validation)
|
|
231
|
+
// This provides defense-in-depth for CSRF protection
|
|
200
232
|
await storage.saveAuthorizationCode({
|
|
201
233
|
code: `pending:${upstreamState}`,
|
|
202
234
|
clientId,
|
|
203
235
|
userId: '', // Will be filled after upstream auth
|
|
204
236
|
redirectUri,
|
|
205
|
-
scope,
|
|
237
|
+
...(scope !== undefined && { scope }),
|
|
206
238
|
codeChallenge,
|
|
207
239
|
codeChallengeMethod: 'S256',
|
|
208
|
-
state,
|
|
240
|
+
...(state !== undefined && { state }), // Client's state (will be passed back to client)
|
|
241
|
+
upstreamState, // Server's state for explicit validation in callback
|
|
209
242
|
issuedAt: Date.now(),
|
|
210
243
|
expiresAt: Date.now() + authCodeTtl * 1000,
|
|
211
244
|
});
|
|
@@ -231,18 +264,21 @@ export function createOAuth21Server(config) {
|
|
|
231
264
|
return c.json({ error: 'invalid_request', error_description: 'Dev mode is not enabled' }, 400);
|
|
232
265
|
}
|
|
233
266
|
const formData = await c.req.parseBody();
|
|
234
|
-
const email = String(formData
|
|
235
|
-
const password = String(formData
|
|
236
|
-
const clientId = String(formData
|
|
237
|
-
const redirectUri = String(formData
|
|
238
|
-
const scope = String(formData
|
|
239
|
-
const state = String(formData
|
|
240
|
-
const codeChallenge = String(formData
|
|
241
|
-
const codeChallengeMethod = String(formData
|
|
267
|
+
const email = String(formData['email'] || '');
|
|
268
|
+
const password = String(formData['password'] || '');
|
|
269
|
+
const clientId = String(formData['client_id'] || '');
|
|
270
|
+
const redirectUri = String(formData['redirect_uri'] || '');
|
|
271
|
+
const scope = String(formData['scope'] || '');
|
|
272
|
+
const state = String(formData['state'] || '');
|
|
273
|
+
const codeChallenge = String(formData['code_challenge'] || '');
|
|
274
|
+
const codeChallengeMethod = String(formData['code_challenge_method'] || 'S256');
|
|
242
275
|
if (debug) {
|
|
243
276
|
console.log('[OAuth] Dev login attempt:', { email, clientId });
|
|
244
277
|
}
|
|
245
278
|
// Validate credentials
|
|
279
|
+
if (!app.testHelpers) {
|
|
280
|
+
return c.json({ error: 'server_error', error_description: 'Test helpers not available' }, 500);
|
|
281
|
+
}
|
|
246
282
|
const devUser = await app.testHelpers.validateCredentials(email, password);
|
|
247
283
|
if (!devUser) {
|
|
248
284
|
const html = generateLoginFormHtml({
|
|
@@ -263,9 +299,9 @@ export function createOAuth21Server(config) {
|
|
|
263
299
|
user = {
|
|
264
300
|
id: devUser.id,
|
|
265
301
|
email: devUser.email,
|
|
266
|
-
name: devUser.name,
|
|
267
|
-
organizationId: devUser.organizationId,
|
|
268
|
-
roles: devUser.roles,
|
|
302
|
+
...(devUser.name !== undefined && { name: devUser.name }),
|
|
303
|
+
...(devUser.organizationId !== undefined && { organizationId: devUser.organizationId }),
|
|
304
|
+
...(devUser.roles !== undefined && { roles: devUser.roles }),
|
|
269
305
|
createdAt: Date.now(),
|
|
270
306
|
updatedAt: Date.now(),
|
|
271
307
|
lastLoginAt: Date.now(),
|
|
@@ -277,7 +313,9 @@ export function createOAuth21Server(config) {
|
|
|
277
313
|
user.updatedAt = Date.now();
|
|
278
314
|
await storage.saveUser(user);
|
|
279
315
|
}
|
|
280
|
-
|
|
316
|
+
if (onUserAuthenticated) {
|
|
317
|
+
await onUserAuthenticated(user);
|
|
318
|
+
}
|
|
281
319
|
// Generate authorization code
|
|
282
320
|
const authCode = generateAuthorizationCode();
|
|
283
321
|
await storage.saveAuthorizationCode({
|
|
@@ -285,10 +323,10 @@ export function createOAuth21Server(config) {
|
|
|
285
323
|
clientId,
|
|
286
324
|
userId: user.id,
|
|
287
325
|
redirectUri,
|
|
288
|
-
scope,
|
|
326
|
+
...(scope && { scope }),
|
|
289
327
|
codeChallenge,
|
|
290
328
|
codeChallengeMethod: 'S256',
|
|
291
|
-
state,
|
|
329
|
+
...(state && { state }),
|
|
292
330
|
issuedAt: Date.now(),
|
|
293
331
|
expiresAt: Date.now() + authCodeTtl * 1000,
|
|
294
332
|
});
|
|
@@ -333,6 +371,15 @@ export function createOAuth21Server(config) {
|
|
|
333
371
|
if (!pendingAuth) {
|
|
334
372
|
return c.json({ error: 'invalid_request', error_description: 'Invalid or expired state' }, 400);
|
|
335
373
|
}
|
|
374
|
+
// CSRF Protection: Explicitly validate the upstream state matches what was stored
|
|
375
|
+
// This is defense-in-depth - the lookup by state already provides implicit validation,
|
|
376
|
+
// but explicit comparison ensures the state wasn't somehow tampered with
|
|
377
|
+
if (pendingAuth.upstreamState && pendingAuth.upstreamState !== upstreamState) {
|
|
378
|
+
if (debug) {
|
|
379
|
+
console.log('[OAuth] State mismatch - potential CSRF attack detected');
|
|
380
|
+
}
|
|
381
|
+
return redirectWithError(pendingAuth.redirectUri, 'access_denied', 'State parameter validation failed - possible CSRF attack', pendingAuth.state);
|
|
382
|
+
}
|
|
336
383
|
// In dev mode, callback shouldn't be used (login handles it directly)
|
|
337
384
|
if (!upstream) {
|
|
338
385
|
return c.json({ error: 'server_error', error_description: 'No upstream provider configured' }, 500);
|
|
@@ -352,10 +399,10 @@ export function createOAuth21Server(config) {
|
|
|
352
399
|
clientId: pendingAuth.clientId,
|
|
353
400
|
userId: user.id,
|
|
354
401
|
redirectUri: pendingAuth.redirectUri,
|
|
355
|
-
scope: pendingAuth.scope,
|
|
356
|
-
codeChallenge: pendingAuth.codeChallenge,
|
|
402
|
+
...(pendingAuth.scope !== undefined && { scope: pendingAuth.scope }),
|
|
403
|
+
...(pendingAuth.codeChallenge !== undefined && { codeChallenge: pendingAuth.codeChallenge }),
|
|
357
404
|
codeChallengeMethod: 'S256',
|
|
358
|
-
state: pendingAuth.state,
|
|
405
|
+
...(pendingAuth.state !== undefined && { state: pendingAuth.state }),
|
|
359
406
|
issuedAt: Date.now(),
|
|
360
407
|
expiresAt: Date.now() + authCodeTtl * 1000,
|
|
361
408
|
});
|
|
@@ -393,9 +440,9 @@ export function createOAuth21Server(config) {
|
|
|
393
440
|
const formData = await c.req.parseBody();
|
|
394
441
|
params = Object.fromEntries(Object.entries(formData).map(([k, v]) => [k, String(v)]));
|
|
395
442
|
}
|
|
396
|
-
const grantType = params
|
|
443
|
+
const grantType = params['grant_type'];
|
|
397
444
|
if (debug) {
|
|
398
|
-
console.log('[OAuth] Token request:', { grantType, clientId: params
|
|
445
|
+
console.log('[OAuth] Token request:', { grantType, clientId: params['client_id'] });
|
|
399
446
|
}
|
|
400
447
|
if (grantType === 'authorization_code') {
|
|
401
448
|
return handleAuthorizationCodeGrant(c, params, storage, accessTokenTtl, refreshTokenTtl, debug);
|
|
@@ -437,7 +484,7 @@ export function createOAuth21Server(config) {
|
|
|
437
484
|
grantTypes: body.grant_types || ['authorization_code', 'refresh_token'],
|
|
438
485
|
responseTypes: body.response_types || ['code'],
|
|
439
486
|
tokenEndpointAuthMethod: body.token_endpoint_auth_method || 'client_secret_basic',
|
|
440
|
-
scope: body.scope,
|
|
487
|
+
...(body.scope !== undefined && { scope: body.scope }),
|
|
441
488
|
createdAt: Date.now(),
|
|
442
489
|
};
|
|
443
490
|
await storage.saveClient(client);
|
|
@@ -464,8 +511,8 @@ export function createOAuth21Server(config) {
|
|
|
464
511
|
*/
|
|
465
512
|
app.post('/revoke', async (c) => {
|
|
466
513
|
const formData = await c.req.parseBody();
|
|
467
|
-
const token = String(formData
|
|
468
|
-
const tokenTypeHint = String(formData
|
|
514
|
+
const token = String(formData['token'] || '');
|
|
515
|
+
const tokenTypeHint = String(formData['token_type_hint'] || '');
|
|
469
516
|
if (!token) {
|
|
470
517
|
return c.json({ error: 'invalid_request', error_description: 'token is required' }, 400);
|
|
471
518
|
}
|
|
@@ -482,19 +529,125 @@ export function createOAuth21Server(config) {
|
|
|
482
529
|
});
|
|
483
530
|
return app;
|
|
484
531
|
}
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
532
|
+
/**
|
|
533
|
+
* Authenticate a client at the token endpoint
|
|
534
|
+
*
|
|
535
|
+
* Supports:
|
|
536
|
+
* - client_secret_basic: Authorization: Basic base64(client_id:client_secret)
|
|
537
|
+
* - client_secret_post: client_id and client_secret in request body
|
|
538
|
+
* - none: public clients (no secret required)
|
|
539
|
+
*/
|
|
540
|
+
async function authenticateClient(c, params, storage, debug) {
|
|
541
|
+
let clientId;
|
|
542
|
+
let clientSecret;
|
|
543
|
+
// Check for client_secret_basic (Authorization header)
|
|
544
|
+
const authHeader = c.req.header('authorization');
|
|
545
|
+
if (authHeader?.startsWith('Basic ')) {
|
|
546
|
+
try {
|
|
547
|
+
const base64Credentials = authHeader.slice(6);
|
|
548
|
+
const credentials = atob(base64Credentials);
|
|
549
|
+
const colonIndex = credentials.indexOf(':');
|
|
550
|
+
if (colonIndex !== -1) {
|
|
551
|
+
clientId = decodeURIComponent(credentials.slice(0, colonIndex));
|
|
552
|
+
clientSecret = decodeURIComponent(credentials.slice(colonIndex + 1));
|
|
553
|
+
}
|
|
554
|
+
}
|
|
555
|
+
catch {
|
|
556
|
+
return {
|
|
557
|
+
success: false,
|
|
558
|
+
error: 'invalid_client',
|
|
559
|
+
errorDescription: 'Invalid Authorization header',
|
|
560
|
+
statusCode: 401,
|
|
561
|
+
};
|
|
562
|
+
}
|
|
563
|
+
}
|
|
564
|
+
// Fall back to client_secret_post (body parameters)
|
|
565
|
+
if (!clientId) {
|
|
566
|
+
clientId = params['client_id'];
|
|
567
|
+
clientSecret = params['client_secret'];
|
|
568
|
+
}
|
|
569
|
+
if (!clientId) {
|
|
570
|
+
return {
|
|
571
|
+
success: false,
|
|
572
|
+
error: 'invalid_request',
|
|
573
|
+
errorDescription: 'client_id is required',
|
|
574
|
+
statusCode: 400,
|
|
575
|
+
};
|
|
576
|
+
}
|
|
577
|
+
// Fetch the client
|
|
578
|
+
const client = await storage.getClient(clientId);
|
|
579
|
+
if (!client) {
|
|
580
|
+
return {
|
|
581
|
+
success: false,
|
|
582
|
+
error: 'invalid_client',
|
|
583
|
+
errorDescription: 'Client not found',
|
|
584
|
+
statusCode: 401,
|
|
585
|
+
};
|
|
586
|
+
}
|
|
587
|
+
// Check if client requires authentication
|
|
588
|
+
if (client.tokenEndpointAuthMethod !== 'none') {
|
|
589
|
+
// Client requires secret verification
|
|
590
|
+
if (!client.clientSecretHash) {
|
|
591
|
+
// Client is configured to require auth but has no secret stored
|
|
592
|
+
return {
|
|
593
|
+
success: false,
|
|
594
|
+
error: 'invalid_client',
|
|
595
|
+
errorDescription: 'Client authentication failed',
|
|
596
|
+
statusCode: 401,
|
|
597
|
+
};
|
|
598
|
+
}
|
|
599
|
+
if (!clientSecret) {
|
|
600
|
+
return {
|
|
601
|
+
success: false,
|
|
602
|
+
error: 'invalid_client',
|
|
603
|
+
errorDescription: 'Client secret is required',
|
|
604
|
+
statusCode: 401,
|
|
605
|
+
};
|
|
606
|
+
}
|
|
607
|
+
// Verify the secret using constant-time comparison
|
|
608
|
+
const secretValid = await verifyClientSecret(clientSecret, client.clientSecretHash);
|
|
609
|
+
if (!secretValid) {
|
|
610
|
+
if (debug) {
|
|
611
|
+
console.log('[OAuth] Client authentication failed for:', clientId);
|
|
612
|
+
}
|
|
613
|
+
return {
|
|
614
|
+
success: false,
|
|
615
|
+
error: 'invalid_client',
|
|
616
|
+
errorDescription: 'Client authentication failed',
|
|
617
|
+
statusCode: 401,
|
|
618
|
+
};
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
if (debug) {
|
|
622
|
+
console.log('[OAuth] Client authenticated:', clientId);
|
|
623
|
+
}
|
|
624
|
+
return {
|
|
625
|
+
success: true,
|
|
626
|
+
client,
|
|
627
|
+
};
|
|
628
|
+
}
|
|
488
629
|
function redirectWithError(redirectUri, error, description, state) {
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
630
|
+
try {
|
|
631
|
+
const url = new URL(redirectUri);
|
|
632
|
+
url.searchParams.set('error', error);
|
|
633
|
+
if (description) {
|
|
634
|
+
url.searchParams.set('error_description', description);
|
|
635
|
+
}
|
|
636
|
+
if (state) {
|
|
637
|
+
url.searchParams.set('state', state);
|
|
638
|
+
}
|
|
639
|
+
return Response.redirect(url.toString(), 302);
|
|
493
640
|
}
|
|
494
|
-
|
|
495
|
-
|
|
641
|
+
catch {
|
|
642
|
+
// If redirect_uri is malformed, return a JSON error response instead of redirecting
|
|
643
|
+
return new Response(JSON.stringify({
|
|
644
|
+
error,
|
|
645
|
+
error_description: description || 'Invalid redirect_uri',
|
|
646
|
+
}), {
|
|
647
|
+
status: 400,
|
|
648
|
+
headers: { 'Content-Type': 'application/json' },
|
|
649
|
+
});
|
|
496
650
|
}
|
|
497
|
-
return Response.redirect(url.toString(), 302);
|
|
498
651
|
}
|
|
499
652
|
function buildUpstreamAuthUrl(upstream, params) {
|
|
500
653
|
if (upstream.provider === 'workos') {
|
|
@@ -567,11 +720,12 @@ async function getOrCreateUser(storage, upstreamUser, onUserAuthenticated) {
|
|
|
567
720
|
let user = await storage.getUserByEmail(upstreamUser.email);
|
|
568
721
|
if (!user) {
|
|
569
722
|
// Create new user
|
|
723
|
+
const fullName = [upstreamUser.first_name, upstreamUser.last_name].filter(Boolean).join(' ');
|
|
570
724
|
user = {
|
|
571
725
|
id: upstreamUser.id,
|
|
572
726
|
email: upstreamUser.email,
|
|
573
|
-
name:
|
|
574
|
-
organizationId: upstreamUser.organization_id,
|
|
727
|
+
...(fullName && { name: fullName }),
|
|
728
|
+
...(upstreamUser.organization_id !== undefined && { organizationId: upstreamUser.organization_id }),
|
|
575
729
|
createdAt: Date.now(),
|
|
576
730
|
updatedAt: Date.now(),
|
|
577
731
|
lastLoginAt: Date.now(),
|
|
@@ -584,39 +738,50 @@ async function getOrCreateUser(storage, upstreamUser, onUserAuthenticated) {
|
|
|
584
738
|
user.updatedAt = Date.now();
|
|
585
739
|
await storage.saveUser(user);
|
|
586
740
|
}
|
|
587
|
-
|
|
741
|
+
if (onUserAuthenticated) {
|
|
742
|
+
await onUserAuthenticated(user);
|
|
743
|
+
}
|
|
588
744
|
return user;
|
|
589
745
|
}
|
|
590
746
|
async function handleAuthorizationCodeGrant(c, params, storage, accessTokenTtl, refreshTokenTtl, debug) {
|
|
591
|
-
const
|
|
747
|
+
const code = params['code'];
|
|
748
|
+
const redirect_uri = params['redirect_uri'];
|
|
749
|
+
const code_verifier = params['code_verifier'];
|
|
592
750
|
if (!code) {
|
|
593
751
|
return c.json({ error: 'invalid_request', error_description: 'code is required' }, 400);
|
|
594
752
|
}
|
|
595
|
-
|
|
596
|
-
|
|
753
|
+
// Authenticate client (supports client_secret_basic and client_secret_post)
|
|
754
|
+
const authResult = await authenticateClient(c, params, storage, debug);
|
|
755
|
+
if (!authResult.success) {
|
|
756
|
+
const statusCode = (authResult.statusCode || 401);
|
|
757
|
+
return c.json({ error: authResult.error, error_description: authResult.errorDescription }, statusCode);
|
|
597
758
|
}
|
|
759
|
+
const client = authResult.client;
|
|
598
760
|
// Consume authorization code (one-time use)
|
|
599
761
|
const authCode = await storage.consumeAuthorizationCode(code);
|
|
600
762
|
if (!authCode) {
|
|
601
763
|
return c.json({ error: 'invalid_grant', error_description: 'Invalid or expired authorization code' }, 400);
|
|
602
764
|
}
|
|
603
|
-
// Verify client
|
|
604
|
-
if (authCode.clientId !==
|
|
765
|
+
// Verify client matches the code
|
|
766
|
+
if (authCode.clientId !== client.clientId) {
|
|
605
767
|
return c.json({ error: 'invalid_grant', error_description: 'Client mismatch' }, 400);
|
|
606
768
|
}
|
|
607
769
|
// Verify redirect_uri
|
|
608
770
|
if (redirect_uri && authCode.redirectUri !== redirect_uri) {
|
|
609
771
|
return c.json({ error: 'invalid_grant', error_description: 'redirect_uri mismatch' }, 400);
|
|
610
772
|
}
|
|
611
|
-
// Verify PKCE
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
}
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
773
|
+
// Verify PKCE (required in OAuth 2.1)
|
|
774
|
+
// Per OAuth 2.1 spec, PKCE is REQUIRED for authorization_code flow
|
|
775
|
+
if (!authCode.codeChallenge) {
|
|
776
|
+
// This should never happen if the authorize endpoint is working correctly
|
|
777
|
+
return c.json({ error: 'server_error', error_description: 'Authorization code missing code_challenge' }, 500);
|
|
778
|
+
}
|
|
779
|
+
if (!code_verifier) {
|
|
780
|
+
return c.json({ error: 'invalid_request', error_description: 'code_verifier is required' }, 400);
|
|
781
|
+
}
|
|
782
|
+
const valid = await verifyCodeChallenge(code_verifier, authCode.codeChallenge, authCode.codeChallengeMethod || 'S256');
|
|
783
|
+
if (!valid) {
|
|
784
|
+
return c.json({ error: 'invalid_grant', error_description: 'Invalid code_verifier' }, 400);
|
|
620
785
|
}
|
|
621
786
|
// Check expiration
|
|
622
787
|
if (Date.now() > authCode.expiresAt) {
|
|
@@ -631,7 +796,7 @@ async function handleAuthorizationCodeGrant(c, params, storage, accessTokenTtl,
|
|
|
631
796
|
tokenType: 'Bearer',
|
|
632
797
|
clientId: authCode.clientId,
|
|
633
798
|
userId: authCode.userId,
|
|
634
|
-
scope: authCode.scope,
|
|
799
|
+
...(authCode.scope !== undefined && { scope: authCode.scope }),
|
|
635
800
|
issuedAt: now,
|
|
636
801
|
expiresAt: now + accessTokenTtl * 1000,
|
|
637
802
|
});
|
|
@@ -639,16 +804,16 @@ async function handleAuthorizationCodeGrant(c, params, storage, accessTokenTtl,
|
|
|
639
804
|
token: refreshToken,
|
|
640
805
|
clientId: authCode.clientId,
|
|
641
806
|
userId: authCode.userId,
|
|
642
|
-
scope: authCode.scope,
|
|
807
|
+
...(authCode.scope !== undefined && { scope: authCode.scope }),
|
|
643
808
|
issuedAt: now,
|
|
644
|
-
|
|
809
|
+
...(refreshTokenTtl > 0 && { expiresAt: now + refreshTokenTtl * 1000 }),
|
|
645
810
|
});
|
|
646
811
|
// Save grant
|
|
647
812
|
await storage.saveGrant({
|
|
648
813
|
id: `${authCode.userId}:${authCode.clientId}`,
|
|
649
814
|
userId: authCode.userId,
|
|
650
815
|
clientId: authCode.clientId,
|
|
651
|
-
scope: authCode.scope,
|
|
816
|
+
...(authCode.scope !== undefined && { scope: authCode.scope }),
|
|
652
817
|
createdAt: now,
|
|
653
818
|
lastUsedAt: now,
|
|
654
819
|
});
|
|
@@ -660,15 +825,22 @@ async function handleAuthorizationCodeGrant(c, params, storage, accessTokenTtl,
|
|
|
660
825
|
token_type: 'Bearer',
|
|
661
826
|
expires_in: accessTokenTtl,
|
|
662
827
|
refresh_token: refreshToken,
|
|
663
|
-
scope: authCode.scope,
|
|
828
|
+
...(authCode.scope !== undefined && { scope: authCode.scope }),
|
|
664
829
|
};
|
|
665
830
|
return c.json(response);
|
|
666
831
|
}
|
|
667
832
|
async function handleRefreshTokenGrant(c, params, storage, accessTokenTtl, refreshTokenTtl, debug) {
|
|
668
|
-
const
|
|
833
|
+
const refresh_token = params['refresh_token'];
|
|
669
834
|
if (!refresh_token) {
|
|
670
835
|
return c.json({ error: 'invalid_request', error_description: 'refresh_token is required' }, 400);
|
|
671
836
|
}
|
|
837
|
+
// Authenticate client (supports client_secret_basic and client_secret_post)
|
|
838
|
+
const authResult = await authenticateClient(c, params, storage, debug);
|
|
839
|
+
if (!authResult.success) {
|
|
840
|
+
const statusCode = (authResult.statusCode || 401);
|
|
841
|
+
return c.json({ error: authResult.error, error_description: authResult.errorDescription }, statusCode);
|
|
842
|
+
}
|
|
843
|
+
const client = authResult.client;
|
|
672
844
|
const storedRefresh = await storage.getRefreshToken(refresh_token);
|
|
673
845
|
if (!storedRefresh) {
|
|
674
846
|
return c.json({ error: 'invalid_grant', error_description: 'Invalid refresh token' }, 400);
|
|
@@ -679,7 +851,8 @@ async function handleRefreshTokenGrant(c, params, storage, accessTokenTtl, refre
|
|
|
679
851
|
if (storedRefresh.expiresAt && Date.now() > storedRefresh.expiresAt) {
|
|
680
852
|
return c.json({ error: 'invalid_grant', error_description: 'Refresh token expired' }, 400);
|
|
681
853
|
}
|
|
682
|
-
|
|
854
|
+
// Verify the refresh token belongs to the authenticated client
|
|
855
|
+
if (storedRefresh.clientId !== client.clientId) {
|
|
683
856
|
return c.json({ error: 'invalid_grant', error_description: 'Client mismatch' }, 400);
|
|
684
857
|
}
|
|
685
858
|
// Generate new tokens
|
|
@@ -691,7 +864,7 @@ async function handleRefreshTokenGrant(c, params, storage, accessTokenTtl, refre
|
|
|
691
864
|
tokenType: 'Bearer',
|
|
692
865
|
clientId: storedRefresh.clientId,
|
|
693
866
|
userId: storedRefresh.userId,
|
|
694
|
-
scope: storedRefresh.scope,
|
|
867
|
+
...(storedRefresh.scope !== undefined && { scope: storedRefresh.scope }),
|
|
695
868
|
issuedAt: now,
|
|
696
869
|
expiresAt: now + accessTokenTtl * 1000,
|
|
697
870
|
});
|
|
@@ -701,9 +874,9 @@ async function handleRefreshTokenGrant(c, params, storage, accessTokenTtl, refre
|
|
|
701
874
|
token: newRefreshToken,
|
|
702
875
|
clientId: storedRefresh.clientId,
|
|
703
876
|
userId: storedRefresh.userId,
|
|
704
|
-
scope: storedRefresh.scope,
|
|
877
|
+
...(storedRefresh.scope !== undefined && { scope: storedRefresh.scope }),
|
|
705
878
|
issuedAt: now,
|
|
706
|
-
|
|
879
|
+
...(refreshTokenTtl > 0 && { expiresAt: now + refreshTokenTtl * 1000 }),
|
|
707
880
|
});
|
|
708
881
|
// Update grant last used
|
|
709
882
|
const grant = await storage.getGrant(storedRefresh.userId, storedRefresh.clientId);
|
|
@@ -719,7 +892,7 @@ async function handleRefreshTokenGrant(c, params, storage, accessTokenTtl, refre
|
|
|
719
892
|
token_type: 'Bearer',
|
|
720
893
|
expires_in: accessTokenTtl,
|
|
721
894
|
refresh_token: newRefreshToken,
|
|
722
|
-
scope: storedRefresh.scope,
|
|
895
|
+
...(storedRefresh.scope !== undefined && { scope: storedRefresh.scope }),
|
|
723
896
|
};
|
|
724
897
|
return c.json(response);
|
|
725
898
|
}
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -101,8 +101,10 @@ export interface OAuthAuthorizationCode {
|
|
|
101
101
|
issuedAt: number;
|
|
102
102
|
/** When the code expires (typically 10 minutes) */
|
|
103
103
|
expiresAt: number;
|
|
104
|
-
/**
|
|
104
|
+
/** Client's state parameter for CSRF protection (passed back to client) */
|
|
105
105
|
state?: string;
|
|
106
|
+
/** Server's upstream state for validating upstream provider callback */
|
|
107
|
+
upstreamState?: string;
|
|
106
108
|
}
|
|
107
109
|
/**
|
|
108
110
|
* OAuth 2.1 Access Token metadata
|
|
@@ -234,20 +236,46 @@ export interface OAuthError {
|
|
|
234
236
|
error_uri?: string;
|
|
235
237
|
}
|
|
236
238
|
/**
|
|
237
|
-
*
|
|
239
|
+
* Base configuration shared by all upstream OAuth providers
|
|
238
240
|
*/
|
|
239
|
-
|
|
240
|
-
/** Provider type */
|
|
241
|
-
provider: 'workos' | 'auth0' | 'okta' | 'custom';
|
|
241
|
+
interface UpstreamOAuthConfigBase {
|
|
242
242
|
/** API key or client secret */
|
|
243
243
|
apiKey: string;
|
|
244
244
|
/** Client ID */
|
|
245
245
|
clientId: string;
|
|
246
|
-
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Configuration for known OAuth providers (WorkOS, Auth0, Okta)
|
|
249
|
+
* These providers have well-known endpoints, so no custom endpoints needed
|
|
250
|
+
*/
|
|
251
|
+
interface KnownProviderConfig extends UpstreamOAuthConfigBase {
|
|
252
|
+
/** Provider type */
|
|
253
|
+
provider: 'workos' | 'auth0' | 'okta';
|
|
254
|
+
/** Authorization endpoint (optional override) */
|
|
247
255
|
authorizationEndpoint?: string;
|
|
248
|
-
/** Token endpoint (
|
|
256
|
+
/** Token endpoint (optional override) */
|
|
249
257
|
tokenEndpoint?: string;
|
|
250
|
-
/** JWKS URI (
|
|
258
|
+
/** JWKS URI (optional override) */
|
|
259
|
+
jwksUri?: string;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Configuration for custom OAuth providers
|
|
263
|
+
* Custom providers require explicit endpoint configuration
|
|
264
|
+
*/
|
|
265
|
+
interface CustomProviderConfig extends UpstreamOAuthConfigBase {
|
|
266
|
+
/** Provider type */
|
|
267
|
+
provider: 'custom';
|
|
268
|
+
/** Authorization endpoint (required for custom providers) */
|
|
269
|
+
authorizationEndpoint: string;
|
|
270
|
+
/** Token endpoint (required for custom providers) */
|
|
271
|
+
tokenEndpoint: string;
|
|
272
|
+
/** JWKS URI (optional for custom providers) */
|
|
251
273
|
jwksUri?: string;
|
|
252
274
|
}
|
|
275
|
+
/**
|
|
276
|
+
* Upstream OAuth provider configuration (e.g., WorkOS)
|
|
277
|
+
* Discriminated union based on provider type
|
|
278
|
+
*/
|
|
279
|
+
export type UpstreamOAuthConfig = KnownProviderConfig | CustomProviderConfig;
|
|
280
|
+
export {};
|
|
253
281
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,6BAA6B;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,0BAA0B;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,2DAA2D;IAC3D,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,8BAA8B;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,4BAA4B;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,0BAA0B;IAC1B,UAAU,EAAE,CAAC,oBAAoB,GAAG,eAAe,GAAG,oBAAoB,CAAC,EAAE,CAAA;IAC7E,6BAA6B;IAC7B,aAAa,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAA;IACnC,iCAAiC;IACjC,uBAAuB,EAAE,MAAM,GAAG,qBAAqB,GAAG,oBAAoB,CAAA;IAC9E,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAA;IACnB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,0BAA0B;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAA;IACjB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED