@nwire/auth-logto 0.9.2 → 0.10.1

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.
@@ -82,4 +82,3 @@ export interface LogtoAdapterOptions {
82
82
  * HTTP call at boot — the first `verifyToken` lazy-loads keys).
83
83
  */
84
84
  export declare function logtoAdapter(options: LogtoAdapterOptions): IdpAdapter;
85
- //# sourceMappingURL=auth-logto.d.ts.map
@@ -156,4 +156,3 @@ export function logtoAdapter(options) {
156
156
  },
157
157
  };
158
158
  }
159
- //# sourceMappingURL=auth-logto.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nwire/auth-logto",
3
- "version": "0.9.2",
3
+ "version": "0.10.1",
4
4
  "description": "Nwire — Logto auth adapter. Verifies Logto-issued JWTs via JWKS; maps Logto claims (sub, email, roles, scope) to the canonical User; runs sign-out + refresh via Logto's OIDC endpoints. Sign-in is the hosted UI redirect flow; this adapter does not implement password grant.",
5
5
  "keywords": [
6
6
  "adapter",
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "jose": "^6.2.3",
34
- "@nwire/auth": "0.9.2"
34
+ "@nwire/auth": "0.10.1"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@types/node": "^22.19.9",
@@ -1,16 +0,0 @@
1
- /**
2
- * Logto adapter — unit tests against locally-minted JWTs.
3
- *
4
- * We don't need a real Logto running for these. We do need:
5
- * - a private/public keypair we generate at test setup
6
- * - a fake `fetch` that:
7
- * a) serves the JWKS at GET <endpoint>/oidc/jwks
8
- * b) serves the userinfo at GET <endpoint>/oidc/me
9
- * c) handles the refresh + signOut POSTs
10
- *
11
- * That covers every path in the adapter without booting a container. The
12
- * real-Logto e2e (gated behind LOGTO_E2E=1) runs against the docker-compose
13
- * Logto in Phase 62.3.3.
14
- */
15
- export {};
16
- //# sourceMappingURL=auth-logto.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-logto.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/auth-logto.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
@@ -1,233 +0,0 @@
1
- /**
2
- * Logto adapter — unit tests against locally-minted JWTs.
3
- *
4
- * We don't need a real Logto running for these. We do need:
5
- * - a private/public keypair we generate at test setup
6
- * - a fake `fetch` that:
7
- * a) serves the JWKS at GET <endpoint>/oidc/jwks
8
- * b) serves the userinfo at GET <endpoint>/oidc/me
9
- * c) handles the refresh + signOut POSTs
10
- *
11
- * That covers every path in the adapter without booting a container. The
12
- * real-Logto e2e (gated behind LOGTO_E2E=1) runs against the docker-compose
13
- * Logto in Phase 62.3.3.
14
- */
15
- import { describe, it, expect, beforeAll } from "vitest";
16
- import { exportJWK, generateKeyPair, SignJWT } from "jose";
17
- import { logtoAdapter } from "../auth-logto.js";
18
- const ENDPOINT = "https://test-logto.example.com";
19
- const AUDIENCE = "https://api.test.example.com";
20
- const ISSUER = `${ENDPOINT}/oidc`;
21
- const KID = "test-kid-1";
22
- // jose returns CryptoKey-like objects; we don't need the DOM lib for the
23
- // test, so type them as `unknown` and let jose handle them internally.
24
- let privateKey;
25
- let publicJwk;
26
- beforeAll(async () => {
27
- const kp = await generateKeyPair("ES256");
28
- privateKey = kp.privateKey;
29
- publicJwk = { ...(await exportJWK(kp.publicKey)), kid: KID, alg: "ES256", use: "sig" };
30
- });
31
- async function mintToken(input) {
32
- return (new SignJWT({
33
- scope: input.scope,
34
- roles: input.roles,
35
- })
36
- .setProtectedHeader({ alg: "ES256", kid: KID })
37
- .setSubject(input.sub)
38
- .setIssuer(input.issuer ?? ISSUER)
39
- .setAudience(input.aud ?? AUDIENCE)
40
- .setIssuedAt()
41
- .setExpirationTime(input.expiresIn ?? "5m")
42
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
43
- .sign(privateKey));
44
- }
45
- function fakeFetch(overrides = {}) {
46
- return (async (input, init) => {
47
- const url = typeof input === "string"
48
- ? input
49
- : input instanceof URL
50
- ? input.toString()
51
- : // eslint-disable-next-line @typescript-eslint/no-explicit-any
52
- input?.url;
53
- if (overrides[url])
54
- return overrides[url]();
55
- // Default: serve JWKS.
56
- if (url.endsWith("/oidc/jwks")) {
57
- return new Response(JSON.stringify({ keys: [publicJwk] }), {
58
- status: 200,
59
- headers: { "content-type": "application/json" },
60
- });
61
- }
62
- // Default: userinfo.
63
- if (url.endsWith("/oidc/me")) {
64
- const auth = init?.headers && init.headers["Authorization"];
65
- if (!auth?.startsWith("Bearer ")) {
66
- return new Response("Unauthorized", { status: 401 });
67
- }
68
- return new Response(JSON.stringify({
69
- sub: "user_42",
70
- email: "alex@example.com",
71
- name: "Alex",
72
- }), { status: 200, headers: { "content-type": "application/json" } });
73
- }
74
- // Default: refresh
75
- if (url.endsWith("/oidc/token")) {
76
- return new Response(JSON.stringify({
77
- access_token: "new-access-token",
78
- refresh_token: "new-refresh-token",
79
- expires_in: 3600,
80
- token_type: "Bearer",
81
- }), { status: 200, headers: { "content-type": "application/json" } });
82
- }
83
- // Default: session/end
84
- if (url.endsWith("/oidc/session/end")) {
85
- return new Response(null, { status: 204 });
86
- }
87
- return new Response("Not Found", { status: 404 });
88
- });
89
- }
90
- describe("logtoAdapter — verifyToken", () => {
91
- it("returns User for a valid token (no userinfo fetch)", async () => {
92
- const adapter = logtoAdapter({
93
- endpoint: ENDPOINT,
94
- audience: AUDIENCE,
95
- jwks: { keys: [publicJwk] },
96
- fetch: fakeFetch(),
97
- });
98
- const token = await mintToken({
99
- sub: "user_42",
100
- scope: "read:posts write:posts",
101
- roles: ["editor"],
102
- });
103
- const user = await adapter.verifyToken(token);
104
- expect(user?.id).toBe("user_42");
105
- expect(user?.scopes).toEqual(["read:posts", "write:posts"]);
106
- expect(user?.roles).toEqual(["editor"]);
107
- expect(user?.email).toBeUndefined();
108
- });
109
- it("enriches with /oidc/me when fetchUserInfo is true", async () => {
110
- const adapter = logtoAdapter({
111
- endpoint: ENDPOINT,
112
- audience: AUDIENCE,
113
- fetchUserInfo: true,
114
- jwks: { keys: [publicJwk] },
115
- fetch: fakeFetch(),
116
- });
117
- const token = await mintToken({ sub: "user_42", scope: "openid" });
118
- const user = await adapter.verifyToken(token);
119
- expect(user?.email).toBe("alex@example.com");
120
- expect(user?.name).toBe("Alex");
121
- });
122
- it("returns null for a wrong-audience token", async () => {
123
- const adapter = logtoAdapter({
124
- endpoint: ENDPOINT,
125
- audience: AUDIENCE,
126
- jwks: { keys: [publicJwk] },
127
- fetch: fakeFetch(),
128
- });
129
- const token = await mintToken({ sub: "user_42", aud: "https://different.audience" });
130
- expect(await adapter.verifyToken(token)).toBeNull();
131
- });
132
- it("returns null for an expired token", async () => {
133
- const adapter = logtoAdapter({
134
- endpoint: ENDPOINT,
135
- audience: AUDIENCE,
136
- clockTolerance: 0,
137
- jwks: { keys: [publicJwk] },
138
- fetch: fakeFetch(),
139
- });
140
- const token = await mintToken({ sub: "user_42", expiresIn: "-1s" });
141
- expect(await adapter.verifyToken(token)).toBeNull();
142
- });
143
- it("returns null for a wrong-issuer token", async () => {
144
- const adapter = logtoAdapter({
145
- endpoint: ENDPOINT,
146
- audience: AUDIENCE,
147
- jwks: { keys: [publicJwk] },
148
- fetch: fakeFetch(),
149
- });
150
- const token = await mintToken({
151
- sub: "user_42",
152
- issuer: "https://attacker.example.com/oidc",
153
- });
154
- expect(await adapter.verifyToken(token)).toBeNull();
155
- });
156
- it("returns null for a garbage token", async () => {
157
- const adapter = logtoAdapter({
158
- endpoint: ENDPOINT,
159
- audience: AUDIENCE,
160
- jwks: { keys: [publicJwk] },
161
- fetch: fakeFetch(),
162
- });
163
- expect(await adapter.verifyToken("not.a.jwt")).toBeNull();
164
- });
165
- it("falls back to base user when /oidc/me errors (non-fatal)", async () => {
166
- const adapter = logtoAdapter({
167
- endpoint: ENDPOINT,
168
- audience: AUDIENCE,
169
- fetchUserInfo: true,
170
- jwks: { keys: [publicJwk] },
171
- fetch: fakeFetch({
172
- [`${ENDPOINT}/oidc/me`]: () => new Response("boom", { status: 500 }),
173
- }),
174
- });
175
- const token = await mintToken({ sub: "user_42", scope: "read:posts" });
176
- const user = await adapter.verifyToken(token);
177
- expect(user?.id).toBe("user_42");
178
- expect(user?.scopes).toEqual(["read:posts"]);
179
- expect(user?.email).toBeUndefined();
180
- });
181
- });
182
- describe("logtoAdapter — refresh", () => {
183
- it("posts to /oidc/token + returns new tokens", async () => {
184
- const adapter = logtoAdapter({
185
- endpoint: ENDPOINT,
186
- audience: AUDIENCE,
187
- clientId: "test-client",
188
- fetch: fakeFetch(),
189
- });
190
- const tokens = await adapter.refresh("old-refresh");
191
- expect(tokens.accessToken).toBe("new-access-token");
192
- expect(tokens.refreshToken).toBe("new-refresh-token");
193
- expect(tokens.tokenType).toBe("Bearer");
194
- });
195
- it("throws when clientId is missing", async () => {
196
- const adapter = logtoAdapter({
197
- endpoint: ENDPOINT,
198
- audience: AUDIENCE,
199
- jwks: { keys: [publicJwk] },
200
- fetch: fakeFetch(),
201
- });
202
- await expect(adapter.refresh("x")).rejects.toThrow(/clientId/);
203
- });
204
- });
205
- describe("logtoAdapter — signOut", () => {
206
- it("posts to /oidc/session/end", async () => {
207
- let called = false;
208
- const adapter = logtoAdapter({
209
- endpoint: ENDPOINT,
210
- audience: AUDIENCE,
211
- fetch: fakeFetch({
212
- [`${ENDPOINT}/oidc/session/end`]: () => {
213
- called = true;
214
- return new Response(null, { status: 204 });
215
- },
216
- }),
217
- });
218
- await adapter.signOut("some-id-token");
219
- expect(called).toBe(true);
220
- });
221
- });
222
- describe("logtoAdapter — signIn intentionally rejects", () => {
223
- it("throws because Logto uses OIDC redirect flow", async () => {
224
- const adapter = logtoAdapter({
225
- endpoint: ENDPOINT,
226
- audience: AUDIENCE,
227
- jwks: { keys: [publicJwk] },
228
- fetch: fakeFetch(),
229
- });
230
- await expect(adapter.signIn({ email: "a@x", password: "x" })).rejects.toThrow(/redirect flow/i);
231
- });
232
- });
233
- //# sourceMappingURL=auth-logto.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-logto.test.js","sourceRoot":"","sources":["../../src/__tests__/auth-logto.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-logto.d.ts","sourceRoot":"","sources":["../src/auth-logto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,OAAO,EAIL,KAAK,aAAa,EAGnB,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EAAc,UAAU,EAAqB,MAAM,aAAa,CAAC;AAE7E,MAAM,WAAW,mBAAmB;IAClC,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;CAC/B;AAaD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,UAAU,CAkIrE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-logto.js","sourceRoot":"","sources":["../src/auth-logto.ts"],"names":[],"mappings":"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"}