@metaplay/metaplay-auth 1.4.1 → 1.5.0

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/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/src/auth.js DELETED
@@ -1,373 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-misused-promises */
2
- import { createServer } from 'node:http';
3
- import { toNodeListener, createApp, defineEventHandler, getQuery, sendError } from 'h3';
4
- import open from 'open';
5
- import { randomBytes, createHash } from 'node:crypto';
6
- import jwt from 'jsonwebtoken';
7
- import jwkToPem from 'jwk-to-pem';
8
- import { Configuration, WellknownApi, OidcApi } from '@ory/client';
9
- import { setSecret, getSecret, removeSecret } from './secret_store.js';
10
- import { logger } from './logging.js';
11
- // oauth2 client details (maybe move these to be discovered from some online location to make changes easier to manage?)
12
- const clientId = 'c16ea663-ced3-46c6-8f85-38c9681fe1f0';
13
- const baseURL = 'https://auth.metaplay.dev';
14
- const authorizationEndpoint = `${baseURL}/oauth2/auth`;
15
- const tokenEndpoint = `${baseURL}/oauth2/token`;
16
- const wellknownApi = new WellknownApi(new Configuration({
17
- basePath: baseURL,
18
- }));
19
- const oidcApi = new OidcApi(new Configuration({
20
- basePath: baseURL,
21
- }));
22
- /**
23
- * A helper function which generates a code verifier and challenge for exchaning code from Ory server.
24
- * @returns
25
- */
26
- function generateCodeVerifierAndChallenge() {
27
- const verifier = randomBytes(32).toString('hex');
28
- const challenge = createHash('sha256').update(verifier).digest('base64url');
29
- return { verifier, challenge };
30
- }
31
- /**
32
- * A helper function which fetches the user's info from an OIDC userinfo endpoint for the given token.
33
- * @param token The token to fetch the userinfo for.
34
- * @returns An object containing the user's info.
35
- */
36
- export async function getUserinfo(token) {
37
- logger.debug('Trying to find OIDC well-known endpoints...');
38
- const oidcRes = await oidcApi.discoverOidcConfiguration();
39
- const userinfoEndpoint = oidcRes.data?.userinfo_endpoint;
40
- if (!userinfoEndpoint) {
41
- throw new Error('No userinfo endpoint found in OIDC configuration');
42
- }
43
- logger.debug(`Found userinfo endpoint: ${userinfoEndpoint}`);
44
- const userinfoRes = await fetch(userinfoEndpoint, {
45
- headers: {
46
- Authorization: `Bearer ${token}`
47
- }
48
- });
49
- if (userinfoRes.status < 200 || userinfoRes.status >= 300) {
50
- throw new Error(`Failed to fetch userinfo: ${userinfoRes.status} ${userinfoRes.statusText}`);
51
- }
52
- return await userinfoRes.json();
53
- }
54
- /**
55
- * A helper function which finds an local available port to listen on.
56
- * @returns A promise that resolves to an available port.
57
- */
58
- async function findAvailablePort() {
59
- return await new Promise((resolve, reject) => {
60
- // Ports need to be in sync with oauth2 client callbacks.
61
- const portsToCheck = [5000, 5001, 5002, 5003, 5004];
62
- let index = 0;
63
- // Test ports by opening a server on them.
64
- function tryNextPort() {
65
- if (index >= portsToCheck.length) {
66
- reject(new Error('Could not find an available port.'));
67
- }
68
- const port = portsToCheck[index];
69
- const server = createServer();
70
- logger.debug(`Trying port ${port}...`);
71
- server.listen(port, () => {
72
- server.once('close', () => {
73
- resolve(port);
74
- });
75
- server.close();
76
- logger.debug(`Port ${port} is available.`);
77
- });
78
- server.on('error', () => {
79
- logger.debug(`Port ${port} is not available.`);
80
- index++;
81
- tryNextPort();
82
- });
83
- }
84
- tryNextPort();
85
- });
86
- }
87
- /**
88
- * Log in and save tokens to the local secret store.
89
- */
90
- export async function loginAndSaveTokens() {
91
- // Find an available port to listen on.
92
- const availablePort = await findAvailablePort();
93
- const app = createApp();
94
- const redirectUri = `http://localhost:${availablePort}/callback`;
95
- const { verifier, challenge } = generateCodeVerifierAndChallenge();
96
- const state = randomBytes(16).toString('hex');
97
- // Create a /callback endpoint that exchanges the code for tokens.
98
- app.use('/callback', defineEventHandler(async (event) => {
99
- // Read the query parameters.
100
- const { error, error_description: errorDescription, code } = getQuery(event);
101
- // Raise an error if the query parameters contain an error message.
102
- if (error) {
103
- console.error(`Error logging in. Received the following error:\n\n${String(error)}: ${String(errorDescription)}`);
104
- sendError(event, new Error(`Authentication failed: ${String(error)}: ${String(errorDescription)}`));
105
- server.close();
106
- process.exit(1);
107
- }
108
- // Raise an error if the query parameters do not contain a code.
109
- if (typeof code !== 'string') {
110
- console.error('Error logging in. No code received.');
111
- sendError(event, new Error('Authentication failed: No code received.'));
112
- server.close();
113
- process.exit(1);
114
- }
115
- // Exchange the code for tokens.
116
- try {
117
- logger.debug(`Received callback request with code ${code}. Preparing to exchange for tokens...`);
118
- const tokens = await getTokensWithAuthorizationCode(state, redirectUri, verifier, code);
119
- // Only save access_token, id_token, and refresh_token
120
- await saveTokens({ access_token: tokens.access_token, id_token: tokens.id_token, refresh_token: tokens.refresh_token });
121
- console.log('You are now logged in and can call the other commands.');
122
- // TODO: Could return a pre-generated HTML page instead of text?
123
- return 'Authentication successful! You can close this window.';
124
- }
125
- catch (error) {
126
- if (error instanceof Error) {
127
- console.error(`Error: ${error.message}`);
128
- }
129
- }
130
- finally {
131
- server.close();
132
- }
133
- process.exit(0);
134
- }));
135
- // Start the server.
136
- // We use use H3 and adapt it to Node.js's http server.
137
- const server = createServer(toNodeListener(app)).listen(availablePort);
138
- logger.debug(`Listening on port ${availablePort} and waiting for callback...`);
139
- // Open the browser to log in.
140
- const authorizationUrl = `${authorizationEndpoint}?response_type=code&client_id=${clientId}&redirect_uri=${encodeURIComponent(redirectUri)}&code_challenge=${challenge}&code_challenge_method=S256&scope=${encodeURIComponent('openid offline_access')}&state=${encodeURIComponent(state)}`;
141
- console.log(`Attempting to open a browser to log in. If a browser did not open up, you can copy-paste the following URL to authenticate:\n\n${authorizationUrl}\n`);
142
- void open(authorizationUrl);
143
- }
144
- export async function machineLoginAndSaveTokens(clientId, clientSecret) {
145
- // Get a fresh access token from Metaplay Auth.
146
- const params = new URLSearchParams();
147
- params.set('grant_type', 'client_credentials');
148
- params.set('client_id', clientId);
149
- params.set('client_secret', clientSecret);
150
- params.set('scope', 'openid email profile offline_access');
151
- const res = await fetch(tokenEndpoint, {
152
- method: 'POST',
153
- headers: {
154
- 'Content-Type': 'application/x-www-form-urlencoded',
155
- },
156
- body: params.toString(),
157
- });
158
- // Return type checked manually by Teemu on 2024-3-7.
159
- const tokens = await res.json();
160
- logger.debug('Received machine authentication tokens, saving them for future use...');
161
- await saveTokens({ access_token: tokens.access_token });
162
- const userInfoResponse = await fetch('https://portal.metaplay.dev/api/external/userinfo', {
163
- headers: {
164
- Authorization: `Bearer ${tokens.access_token}`
165
- },
166
- });
167
- const userInfo = await userInfoResponse.json();
168
- console.log(`You are now logged in with machine user ${userInfo.given_name} ${userInfo.family_name} (clientId=${clientId}) and can execute the other commands.`);
169
- }
170
- /**
171
- * Refresh access and ID token with a refresh token.
172
- */
173
- export async function extendCurrentSession() {
174
- try {
175
- const tokens = await loadTokens();
176
- logger.debug('Check if access token still valid...');
177
- if (await validateToken(tokens.access_token)) {
178
- // Access token is not expired, return to the caller
179
- logger.debug('Access token is valid, no need to refresh.');
180
- return;
181
- }
182
- // Check that the refresh_token exists (machine users don't have it)
183
- if (!tokens.refresh_token) {
184
- throw new Error('Cannot refresh an access_token without a refresh_token. With machine users, should just login again instead.');
185
- }
186
- logger.debug('Access token is no longer valid, trying to extend the current session with a refresh token.');
187
- const refreshedTokens = await extendCurrentSessionWithRefreshToken(tokens.refresh_token);
188
- await saveTokens({ access_token: refreshedTokens.access_token, id_token: refreshedTokens.id_token, refresh_token: refreshedTokens.refresh_token });
189
- }
190
- catch (error) {
191
- if (error instanceof Error) {
192
- console.error(error.message);
193
- }
194
- process.exit(1);
195
- }
196
- }
197
- /**
198
- * Make HTTP request to the token endpoint for a new set of tokens using the refresh token.
199
- * @param refreshToken: The refresh token to use to get a new set of tokens.
200
- * @returns A promise that resolves to a new set of tokens.
201
- */
202
- async function extendCurrentSessionWithRefreshToken(refreshToken) {
203
- // TODO: similar to the todo task in getTokensWithAuthorizationCode, http request can be handled by ory/client.
204
- const params = new URLSearchParams({
205
- grant_type: 'refresh_token',
206
- refresh_token: refreshToken,
207
- scope: 'openid offline_access',
208
- client_id: clientId
209
- });
210
- logger.debug('Refreshing tokens...');
211
- // Send a POST request to refresh tokens
212
- let response;
213
- try {
214
- response = await fetch(tokenEndpoint, {
215
- method: 'POST',
216
- headers: {
217
- 'Content-Type': 'application/x-www-form-urlencoded',
218
- },
219
- body: params.toString(),
220
- });
221
- }
222
- catch (error) {
223
- // \todo duplicate code in stackapi.ts -- refactor
224
- logger.error(`Failed to refresh tokens via endpoint ${tokenEndpoint}`);
225
- logger.error('Fetch error details:', error);
226
- if (error.cause?.code === 'UNABLE_TO_VERIFY_LEAF_SIGNATURE') {
227
- throw new Error(`Failed to refresh tokens: SSL certificate validation failed for ${tokenEndpoint}. Is someone trying to tamper with your internet connection?`);
228
- }
229
- throw new Error(`Failed to refresh tokens via ${tokenEndpoint}: ${error}`);
230
- }
231
- // Check if the response is OK
232
- if (!response.ok) {
233
- const responseJSON = await response.json();
234
- logger.error('Failed to refresh tokens.');
235
- logger.error(`Error Type: ${responseJSON.error}`);
236
- logger.error(`Error Description: ${responseJSON.error_description}`);
237
- logger.debug('Attempt to clear local state and remove any dangling tokens...');
238
- await removeTokens();
239
- logger.debug('Local state cleared and tokens removed.');
240
- throw new Error('Failed extending current session, exiting. Please log in again.');
241
- }
242
- return await response.json();
243
- }
244
- /**
245
- * Make HTTP request to the token endpoint for a new set of tokens (Authorization Code Flow).
246
- * @param state
247
- * @param redirectUri
248
- * @param verifier
249
- * @param code
250
- * @returns
251
- */
252
- async function getTokensWithAuthorizationCode(state, redirectUri, verifier, code) {
253
- // TODO: the authorication code exchange flow might be better to be handled by ory/client, could check if there's any useful toosl there.
254
- try {
255
- const response = await fetch(tokenEndpoint, {
256
- method: 'POST',
257
- headers: {
258
- 'Content-Type': 'application/x-www-form-urlencoded'
259
- },
260
- body: `grant_type=authorization_code&code=${code}&redirect_uri=${encodeURIComponent(redirectUri)}&client_id=${clientId}&code_verifier=${verifier}&state=${encodeURIComponent(state)}`
261
- });
262
- return await response.json();
263
- }
264
- catch (error) {
265
- if (error instanceof Error) {
266
- logger.error(`Error exchanging code for tokens: ${error.message}`);
267
- }
268
- throw error;
269
- }
270
- }
271
- /**
272
- * Load tokens from the local secret store.
273
- */
274
- export async function loadTokens() {
275
- try {
276
- const tokens = await getSecret('tokens');
277
- if (!tokens) {
278
- throw new Error('Unable to load tokens. You need to login first.');
279
- }
280
- return tokens;
281
- }
282
- catch (error) {
283
- if (error instanceof Error) {
284
- throw new Error(`Error loading tokens: ${error.message}`);
285
- }
286
- throw error;
287
- }
288
- }
289
- /**
290
- * Save tokens to the local secret store.
291
- * @param tokens The tokens to save.
292
- */
293
- export async function saveTokens(tokens) {
294
- try {
295
- logger.debug('Received new tokens, verifying...');
296
- // All tokens must have an access_token (machine users only have it)
297
- if (!tokens.access_token) {
298
- throw new Error('Metaplay token has no access_token. Please log in again and make sure all checkboxes of permissions are selected before proceeding.');
299
- }
300
- logger.debug('Token verification completed, storing tokens...');
301
- await setSecret('tokens', tokens);
302
- logger.debug('Tokens successfully stored.');
303
- await showTokenInfo(tokens.access_token);
304
- }
305
- catch (error) {
306
- if (error instanceof Error) {
307
- throw new Error(`Failed to save tokens: ${error.message}`);
308
- }
309
- throw error;
310
- }
311
- }
312
- /**
313
- * Remove tokens from the local secret store.
314
- */
315
- export async function removeTokens() {
316
- try {
317
- await removeSecret('tokens');
318
- logger.debug('Removed tokens.');
319
- }
320
- catch (error) {
321
- if (error instanceof Error) {
322
- throw new Error(`Error removing tokens: ${error.message}`);
323
- }
324
- throw error;
325
- }
326
- }
327
- /**
328
- * This function validates a token by checking its signature, expiration and issuer.
329
- * @param token The token being validated
330
- * @returns return if token is valid, throw errors otherwise
331
- */
332
- async function validateToken(token) {
333
- try {
334
- // Decode the token
335
- const completeTokenData = jwt.decode(token, { complete: true });
336
- // Handle junk data.
337
- if (!completeTokenData) {
338
- throw new Error('Invalid token');
339
- }
340
- // Get the JSON web keys from the wellknown API.
341
- const res = await wellknownApi.discoverJsonWebKeys();
342
- const jwk = res.data.keys?.find((key) => key.kid === completeTokenData.header.kid);
343
- if (!jwk) {
344
- throw new Error('No public key found for token signature');
345
- }
346
- // Convert to PEM format.
347
- const pem = jwkToPem(jwk);
348
- // Verify the token signature, expiration and decode it.
349
- jwt.verify(token, pem, { issuer: baseURL, ignoreExpiration: false });
350
- return true;
351
- }
352
- catch (error) {
353
- if (error instanceof Error) {
354
- logger.info(`Token not valid: ${error.message}`);
355
- }
356
- return false;
357
- }
358
- }
359
- /**
360
- * A helper function which shows token info after being fully decoded.
361
- * @param token The token to show info for.
362
- */
363
- async function showTokenInfo(token) {
364
- logger.debug('Showing access token info...');
365
- // Decode the token
366
- const completeTokenData = jwt.decode(token, { complete: true });
367
- // Handle junk data.
368
- if (!completeTokenData) {
369
- throw new Error('Token is corrupted');
370
- }
371
- logger.debug(JSON.stringify(completeTokenData));
372
- }
373
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":"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"}