firebase-admin-edge 1.1.0 → 1.1.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.
- package/README.md +27 -171
- package/dist/auth/auth-error-codes.d.ts +12 -0
- package/dist/auth/auth-error-codes.d.ts.map +1 -1
- package/dist/auth/auth-error-codes.js +12 -0
- package/dist/auth/auth-error-codes.js.map +1 -1
- package/dist/auth/email-action-request.d.ts +40 -0
- package/dist/auth/email-action-request.d.ts.map +1 -0
- package/dist/auth/email-action-request.js +80 -0
- package/dist/auth/email-action-request.js.map +1 -0
- package/dist/auth/email-action-request.test.d.ts +2 -0
- package/dist/auth/email-action-request.test.d.ts.map +1 -0
- package/dist/auth/email-action-request.test.js +128 -0
- package/dist/auth/email-action-request.test.js.map +1 -0
- package/dist/auth/firebase-admin-auth.d.ts +31 -8
- package/dist/auth/firebase-admin-auth.d.ts.map +1 -1
- package/dist/auth/firebase-admin-auth.js +272 -14
- package/dist/auth/firebase-admin-auth.js.map +1 -1
- package/dist/auth/firebase-admin-auth.test.js +625 -6
- package/dist/auth/firebase-admin-auth.test.js.map +1 -1
- package/dist/auth/firebase-auth-endpoints.d.ts +31 -0
- package/dist/auth/firebase-auth-endpoints.d.ts.map +1 -1
- package/dist/auth/firebase-auth-endpoints.js +55 -0
- package/dist/auth/firebase-auth-endpoints.js.map +1 -1
- package/dist/auth/firebase-auth-endpoints.test.js +126 -1
- package/dist/auth/firebase-auth-endpoints.test.js.map +1 -1
- package/dist/auth/user-batch.d.ts +21 -0
- package/dist/auth/user-batch.d.ts.map +1 -0
- package/dist/auth/user-batch.js +49 -0
- package/dist/auth/user-batch.js.map +1 -0
- package/dist/auth/user-batch.test.d.ts +2 -0
- package/dist/auth/user-batch.test.d.ts.map +1 -0
- package/dist/auth/user-batch.test.js +73 -0
- package/dist/auth/user-batch.test.js.map +1 -0
- package/dist/auth/user-import.d.ts +55 -0
- package/dist/auth/user-import.d.ts.map +1 -0
- package/dist/auth/user-import.js +208 -0
- package/dist/auth/user-import.js.map +1 -0
- package/dist/auth/user-import.test.d.ts +2 -0
- package/dist/auth/user-import.test.d.ts.map +1 -0
- package/dist/auth/user-import.test.js +217 -0
- package/dist/auth/user-import.test.js.map +1 -0
- package/dist/auth/user-request.d.ts +10 -0
- package/dist/auth/user-request.d.ts.map +1 -1
- package/dist/auth/user-request.js +56 -0
- package/dist/auth/user-request.js.map +1 -1
- package/dist/auth/user-request.test.js +59 -1
- package/dist/auth/user-request.test.js.map +1 -1
- package/dist/firebase-edge-server.d.ts.map +1 -1
- package/dist/firebase-edge-server.js +6 -2
- package/dist/firebase-edge-server.js.map +1 -1
- package/dist/firebase-edge-server.test.js +29 -0
- package/dist/firebase-edge-server.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import type { ServiceAccount } from './firebase-types.js';
|
|
2
2
|
import { FirebaseEdgeError } from './errors.js';
|
|
3
3
|
import type { CacheConfig } from './cache-types.js';
|
|
4
|
+
import { type DeleteUsersResult, type UserImportResult } from './user-batch.js';
|
|
5
|
+
import { type UserImportRecord, type UserImportOptions } from './user-import.js';
|
|
6
|
+
export type { DeleteUsersResult, UserImportResult, FirebaseArrayIndexError } from './user-batch.js';
|
|
7
|
+
export type { UserImportRecord, UserImportOptions, HashAlgorithmType, UserMetadataRequest, UserProviderRequest } from './user-import.js';
|
|
4
8
|
import { type GetUsersResult, type ListUsersResult } from './user-record.js';
|
|
5
9
|
import type { UserRecord } from './user-record.js';
|
|
6
10
|
import { type UserIdentifier, type CreateRequest, type UpdateRequest } from './user-request.js';
|
|
@@ -13,6 +17,12 @@ type AdminResult<T> = {
|
|
|
13
17
|
data: null;
|
|
14
18
|
error: FirebaseEdgeError;
|
|
15
19
|
};
|
|
20
|
+
import { type ActionCodeSettings } from './email-action-request.js';
|
|
21
|
+
export type { ActionCodeSettings } from './email-action-request.js';
|
|
22
|
+
export interface SessionCookieOptions {
|
|
23
|
+
/** Session lifetime in milliseconds, between five minutes and fourteen days. */
|
|
24
|
+
expiresIn: number;
|
|
25
|
+
}
|
|
16
26
|
/**
|
|
17
27
|
* Firebase Admin Authentication handler for edge environments.
|
|
18
28
|
* Provides server-side authentication operations using service account credentials.
|
|
@@ -45,8 +55,14 @@ export declare class FirebaseAdminAuth {
|
|
|
45
55
|
createUser(properties: CreateRequest): Promise<AdminResult<UserRecord>>;
|
|
46
56
|
/** Update a user; null clears displayName, photoURL, or phoneNumber. */
|
|
47
57
|
updateUser(uid: string, properties: UpdateRequest): Promise<AdminResult<UserRecord>>;
|
|
58
|
+
/** Replace stored custom claims; pass null to clear all claims. */
|
|
59
|
+
setCustomUserClaims(uid: string, claims: object | null): Promise<AdminResult<void>>;
|
|
48
60
|
/** Delete one user. A successful deletion returns undefined data. */
|
|
49
61
|
deleteUser(uid: string): Promise<AdminResult<void>>;
|
|
62
|
+
/** Delete up to 1000 users, reporting failures by original input index. */
|
|
63
|
+
deleteUsers(uids: string[]): Promise<AdminResult<DeleteUsersResult>>;
|
|
64
|
+
/** Import up to 1000 users, with local and API failures indexed to the original input. */
|
|
65
|
+
importUsers(users: UserImportRecord[], options?: UserImportOptions): Promise<AdminResult<UserImportResult>>;
|
|
50
66
|
/** Read back a complete record after a successful create or update. */
|
|
51
67
|
private getManagedUser;
|
|
52
68
|
/** Look up at most 100 identifiers, returning users and unmatched identifiers. */
|
|
@@ -90,6 +106,10 @@ export declare class FirebaseAdminAuth {
|
|
|
90
106
|
data: import("./firebase-types.js").UserInfo | null | undefined;
|
|
91
107
|
error: null;
|
|
92
108
|
}>;
|
|
109
|
+
/** Look up a linked provider UID, or a primary email/phone identifier. */
|
|
110
|
+
getUserByProviderUid(providerId: string, uid: string): Promise<AdminResult<UserRecord>>;
|
|
111
|
+
/** Look up a user by their primary international phone number. */
|
|
112
|
+
getUserByPhoneNumber(phoneNumber: string): Promise<AdminResult<UserRecord>>;
|
|
93
113
|
/**
|
|
94
114
|
* Verifies a Firebase ID token and returns the decoded payload.
|
|
95
115
|
* Optionally checks if the token has been revoked.
|
|
@@ -109,16 +129,19 @@ export declare class FirebaseAdminAuth {
|
|
|
109
129
|
* Creates a session cookie from a Firebase ID token.
|
|
110
130
|
*
|
|
111
131
|
* @param idToken Firebase ID token to convert to session cookie
|
|
112
|
-
* @param
|
|
132
|
+
* @param options Session cookie lifetime in milliseconds
|
|
113
133
|
* @returns Promise with object containing session cookie string or null, and error if any
|
|
114
134
|
*/
|
|
115
|
-
createSessionCookie(idToken: string,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
135
|
+
createSessionCookie(idToken: string, options: SessionCookieOptions): Promise<AdminResult<string>>;
|
|
136
|
+
/** Generate a password reset link to send through your own email service. */
|
|
137
|
+
generatePasswordResetLink(email: string, settings?: ActionCodeSettings): Promise<AdminResult<string>>;
|
|
138
|
+
/** Generate an email verification link without sending an email. */
|
|
139
|
+
generateEmailVerificationLink(email: string, settings?: ActionCodeSettings): Promise<AdminResult<string>>;
|
|
140
|
+
/** Generate a link that verifies a new email before changing the account email. */
|
|
141
|
+
generateVerifyAndChangeEmailLink(email: string, newEmail: string, settings?: ActionCodeSettings): Promise<AdminResult<string>>;
|
|
142
|
+
/** Generate an email sign-in link; action code settings are required. */
|
|
143
|
+
generateSignInWithEmailLink(email: string, settings: ActionCodeSettings): Promise<AdminResult<string>>;
|
|
144
|
+
private generateActionLink;
|
|
122
145
|
/**
|
|
123
146
|
* Verifies a Firebase session cookie and returns the decoded payload.
|
|
124
147
|
* Optionally checks if the token has been revoked.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-admin-auth.d.ts","sourceRoot":"","sources":["../../src/auth/firebase-admin-auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"firebase-admin-auth.d.ts","sourceRoot":"","sources":["../../src/auth/firebase-admin-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import { createAccountAdmin, updateAccountAdmin, deleteAccountAdmin, createSessionCookie, downloadAccount, getAccountInfo, getAccountsInfo, revokeRefreshTokens } from './firebase-auth-endpoints.js';
|
|
1
|
+
import { generateEmailActionLink, deleteAccountsAdmin, importAccountsAdmin, createAccountAdmin, updateAccountAdmin, deleteAccountAdmin, createSessionCookie, downloadAccount, getAccountInfo, getAccountsInfo, revokeRefreshTokens } from './firebase-auth-endpoints.js';
|
|
2
2
|
import { signJWTCustomToken, verifyJWT, verifySessionJWT } from './firebase-jwt.js';
|
|
3
3
|
import { getToken } from './google-oauth.js';
|
|
4
4
|
import { FirebaseEdgeError, FirebaseAdminAuthErrorInfo, ensureError } from './errors.js';
|
|
5
|
+
import { validateDeleteUsers, createBatchUserResult } from './user-batch.js';
|
|
6
|
+
import { prepareUserImport } from './user-import.js';
|
|
5
7
|
import { createUserRecord, createGetUsersResult } from './user-record.js';
|
|
6
|
-
import { buildUserRequest, buildUsersLookupRequest, validateUserUid } from './user-request.js';
|
|
8
|
+
import { buildUserRequest, buildCustomClaimsRequest, buildUsersLookupRequest, validateUserUid } from './user-request.js';
|
|
9
|
+
import { buildEmailActionRequest } from './email-action-request.js';
|
|
7
10
|
/**
|
|
8
11
|
* Firebase Admin Authentication handler for edge environments.
|
|
9
12
|
* Provides server-side authentication operations using service account credentials.
|
|
@@ -133,6 +136,43 @@ export class FirebaseAdminAuth {
|
|
|
133
136
|
};
|
|
134
137
|
}
|
|
135
138
|
}
|
|
139
|
+
/** Replace stored custom claims; pass null to clear all claims. */
|
|
140
|
+
async setCustomUserClaims(uid, claims) {
|
|
141
|
+
const uidError = validateUserUid(uid);
|
|
142
|
+
if (uidError)
|
|
143
|
+
return { data: null, error: uidError };
|
|
144
|
+
const request = buildCustomClaimsRequest(claims);
|
|
145
|
+
if (request.error)
|
|
146
|
+
return { data: null, error: request.error };
|
|
147
|
+
try {
|
|
148
|
+
const { data: token, error } = await this.getCachedToken();
|
|
149
|
+
if (error)
|
|
150
|
+
return { data: null, error };
|
|
151
|
+
if (!token?.access_token)
|
|
152
|
+
return {
|
|
153
|
+
data: null,
|
|
154
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_NO_TOKEN_RETURNED)
|
|
155
|
+
};
|
|
156
|
+
const result = await updateAccountAdmin(this.serviceAccountKey.project_id, uid, request.data, token.access_token, this.fetch, this.tenantId);
|
|
157
|
+
if (result.error)
|
|
158
|
+
return {
|
|
159
|
+
data: null,
|
|
160
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SET_CUSTOM_CLAIMS_FAILED, { cause: result.error })
|
|
161
|
+
};
|
|
162
|
+
if (!result.data?.localId)
|
|
163
|
+
return {
|
|
164
|
+
data: null,
|
|
165
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SET_CUSTOM_CLAIMS_FAILED)
|
|
166
|
+
};
|
|
167
|
+
return { data: undefined, error: null };
|
|
168
|
+
}
|
|
169
|
+
catch (cause) {
|
|
170
|
+
return {
|
|
171
|
+
data: null,
|
|
172
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SET_CUSTOM_CLAIMS_FAILED, { cause: ensureError(cause) })
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
}
|
|
136
176
|
/** Delete one user. A successful deletion returns undefined data. */
|
|
137
177
|
async deleteUser(uid) {
|
|
138
178
|
const uidError = validateUserUid(uid);
|
|
@@ -162,6 +202,88 @@ export class FirebaseAdminAuth {
|
|
|
162
202
|
};
|
|
163
203
|
}
|
|
164
204
|
}
|
|
205
|
+
/** Delete up to 1000 users, reporting failures by original input index. */
|
|
206
|
+
async deleteUsers(uids) {
|
|
207
|
+
const validationError = validateDeleteUsers(uids);
|
|
208
|
+
if (validationError)
|
|
209
|
+
return { data: null, error: validationError };
|
|
210
|
+
if (uids.length === 0)
|
|
211
|
+
return { data: createBatchUserResult([]), error: null };
|
|
212
|
+
try {
|
|
213
|
+
const { data: token, error } = await this.getCachedToken();
|
|
214
|
+
if (error)
|
|
215
|
+
return { data: null, error };
|
|
216
|
+
if (!token?.access_token)
|
|
217
|
+
return {
|
|
218
|
+
data: null,
|
|
219
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_NO_TOKEN_RETURNED)
|
|
220
|
+
};
|
|
221
|
+
const result = await deleteAccountsAdmin(this.serviceAccountKey.project_id, uids, token.access_token, this.fetch, this.tenantId);
|
|
222
|
+
if (result.error)
|
|
223
|
+
return {
|
|
224
|
+
data: null,
|
|
225
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_DELETE_USER_FAILED, { cause: result.error })
|
|
226
|
+
};
|
|
227
|
+
if (!result.data || typeof result.data !== 'object')
|
|
228
|
+
return {
|
|
229
|
+
data: null,
|
|
230
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_DELETE_USER_FAILED)
|
|
231
|
+
};
|
|
232
|
+
return {
|
|
233
|
+
data: createBatchUserResult(uids.map((_, index) => index), result.data.errors),
|
|
234
|
+
error: null
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
catch (cause) {
|
|
238
|
+
return {
|
|
239
|
+
data: null,
|
|
240
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_DELETE_USER_FAILED, { cause: ensureError(cause) })
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
/** Import up to 1000 users, with local and API failures indexed to the original input. */
|
|
245
|
+
async importUsers(users, options) {
|
|
246
|
+
const prepared = prepareUserImport(users, options, this.tenantId);
|
|
247
|
+
if (prepared.error)
|
|
248
|
+
return { data: null, error: prepared.error };
|
|
249
|
+
const { body, indices, errors } = prepared.data;
|
|
250
|
+
if (indices.length === 0)
|
|
251
|
+
return {
|
|
252
|
+
data: createBatchUserResult([], [], errors, 'import'),
|
|
253
|
+
error: null
|
|
254
|
+
};
|
|
255
|
+
try {
|
|
256
|
+
const { data: token, error } = await this.getCachedToken();
|
|
257
|
+
if (error)
|
|
258
|
+
return { data: null, error };
|
|
259
|
+
if (!token?.access_token)
|
|
260
|
+
return {
|
|
261
|
+
data: null,
|
|
262
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_NO_TOKEN_RETURNED)
|
|
263
|
+
};
|
|
264
|
+
const result = await importAccountsAdmin(this.serviceAccountKey.project_id, body, token.access_token, this.fetch, this.tenantId);
|
|
265
|
+
if (result.error)
|
|
266
|
+
return {
|
|
267
|
+
data: null,
|
|
268
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_IMPORT_USERS_FAILED, { cause: result.error })
|
|
269
|
+
};
|
|
270
|
+
if (!result.data || typeof result.data !== 'object')
|
|
271
|
+
return {
|
|
272
|
+
data: null,
|
|
273
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_IMPORT_USERS_FAILED)
|
|
274
|
+
};
|
|
275
|
+
return {
|
|
276
|
+
data: createBatchUserResult(indices, result.data.error, errors, 'import'),
|
|
277
|
+
error: null
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
catch (cause) {
|
|
281
|
+
return {
|
|
282
|
+
data: null,
|
|
283
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_IMPORT_USERS_FAILED, { cause: ensureError(cause) })
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
}
|
|
165
287
|
/** Read back a complete record after a successful create or update. */
|
|
166
288
|
async getManagedUser(uid, token) {
|
|
167
289
|
const { data, error } = await getAccountInfo({ uid }, token, this.serviceAccountKey.project_id, this.tenantId, this.fetch);
|
|
@@ -332,6 +454,55 @@ export class FirebaseAdminAuth {
|
|
|
332
454
|
error: null
|
|
333
455
|
};
|
|
334
456
|
}
|
|
457
|
+
/** Look up a linked provider UID, or a primary email/phone identifier. */
|
|
458
|
+
async getUserByProviderUid(providerId, uid) {
|
|
459
|
+
const identifier = providerId === 'email'
|
|
460
|
+
? { email: uid }
|
|
461
|
+
: providerId === 'phone'
|
|
462
|
+
? { phoneNumber: uid }
|
|
463
|
+
: { providerId, providerUid: uid };
|
|
464
|
+
const result = await this.getUsers([identifier]);
|
|
465
|
+
if (result.error)
|
|
466
|
+
return { data: null, error: result.error };
|
|
467
|
+
const user = result.data.users[0];
|
|
468
|
+
if (!user)
|
|
469
|
+
return {
|
|
470
|
+
data: null,
|
|
471
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_USER_NOT_FOUND)
|
|
472
|
+
};
|
|
473
|
+
return { data: user, error: null };
|
|
474
|
+
}
|
|
475
|
+
/** Look up a user by their primary international phone number. */
|
|
476
|
+
async getUserByPhoneNumber(phoneNumber) {
|
|
477
|
+
const validation = buildUsersLookupRequest([{ phoneNumber }]);
|
|
478
|
+
if (validation.error)
|
|
479
|
+
return { data: null, error: validation.error };
|
|
480
|
+
try {
|
|
481
|
+
const { data: token, error } = await this.getCachedToken();
|
|
482
|
+
if (error)
|
|
483
|
+
return { data: null, error };
|
|
484
|
+
if (!token?.access_token)
|
|
485
|
+
return {
|
|
486
|
+
data: null,
|
|
487
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_NO_TOKEN_RETURNED)
|
|
488
|
+
};
|
|
489
|
+
const result = await getAccountInfo({ phoneNumber }, token.access_token, this.serviceAccountKey.project_id, this.tenantId, this.fetch);
|
|
490
|
+
if (result.error)
|
|
491
|
+
return { data: null, error: result.error };
|
|
492
|
+
if (!result.data)
|
|
493
|
+
return {
|
|
494
|
+
data: null,
|
|
495
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_USER_NOT_FOUND)
|
|
496
|
+
};
|
|
497
|
+
return { data: createUserRecord(result.data), error: null };
|
|
498
|
+
}
|
|
499
|
+
catch (cause) {
|
|
500
|
+
return {
|
|
501
|
+
data: null,
|
|
502
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_USER_LOOKUP_FAILED, { cause: ensureError(cause) })
|
|
503
|
+
};
|
|
504
|
+
}
|
|
505
|
+
}
|
|
335
506
|
/**
|
|
336
507
|
* Verifies a Firebase ID token and returns the decoded payload.
|
|
337
508
|
* Optionally checks if the token has been revoked.
|
|
@@ -413,28 +584,105 @@ export class FirebaseAdminAuth {
|
|
|
413
584
|
* Creates a session cookie from a Firebase ID token.
|
|
414
585
|
*
|
|
415
586
|
* @param idToken Firebase ID token to convert to session cookie
|
|
416
|
-
* @param
|
|
587
|
+
* @param options Session cookie lifetime in milliseconds
|
|
417
588
|
* @returns Promise with object containing session cookie string or null, and error if any
|
|
418
589
|
*/
|
|
419
|
-
async createSessionCookie(idToken,
|
|
420
|
-
|
|
421
|
-
if (getTokenError) {
|
|
590
|
+
async createSessionCookie(idToken, options) {
|
|
591
|
+
if (typeof idToken !== 'string' || !idToken.length)
|
|
422
592
|
return {
|
|
423
593
|
data: null,
|
|
424
|
-
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.
|
|
594
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_ID_TOKEN_INVALID)
|
|
595
|
+
};
|
|
596
|
+
if (!options ||
|
|
597
|
+
typeof options !== 'object' ||
|
|
598
|
+
!Number.isFinite(options.expiresIn) ||
|
|
599
|
+
options.expiresIn < 300000 ||
|
|
600
|
+
options.expiresIn > 1209600000)
|
|
601
|
+
return {
|
|
602
|
+
data: null,
|
|
603
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SESSION_COOKIE_DURATION_INVALID)
|
|
604
|
+
};
|
|
605
|
+
try {
|
|
606
|
+
const { data: token, error: getTokenError } = await this.getCachedToken();
|
|
607
|
+
if (getTokenError) {
|
|
608
|
+
return {
|
|
609
|
+
data: null,
|
|
610
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SERVICE_ACCOUNT_TOKEN_FAILED, { cause: getTokenError })
|
|
611
|
+
};
|
|
612
|
+
}
|
|
613
|
+
if (!token?.access_token)
|
|
614
|
+
return {
|
|
615
|
+
data: null,
|
|
616
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_NO_TOKEN_RETURNED)
|
|
617
|
+
};
|
|
618
|
+
const { data, error } = await createSessionCookie(idToken, token.access_token, this.serviceAccountKey.project_id, options.expiresIn, this.tenantId, this.fetch);
|
|
619
|
+
if (error || !data) {
|
|
620
|
+
return {
|
|
621
|
+
data: null,
|
|
622
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SESSION_COOKIE_CREATE_FAILED, {
|
|
623
|
+
cause: ensureError(error ??
|
|
624
|
+
new Error('Firebase returned no session cookie.'))
|
|
625
|
+
})
|
|
626
|
+
};
|
|
627
|
+
}
|
|
628
|
+
return {
|
|
629
|
+
data,
|
|
630
|
+
error: null
|
|
425
631
|
};
|
|
426
632
|
}
|
|
427
|
-
|
|
428
|
-
if (error) {
|
|
633
|
+
catch (cause) {
|
|
429
634
|
return {
|
|
430
635
|
data: null,
|
|
431
|
-
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SESSION_COOKIE_CREATE_FAILED, { cause: ensureError(
|
|
636
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SESSION_COOKIE_CREATE_FAILED, { cause: ensureError(cause) })
|
|
637
|
+
};
|
|
638
|
+
}
|
|
639
|
+
}
|
|
640
|
+
/** Generate a password reset link to send through your own email service. */
|
|
641
|
+
async generatePasswordResetLink(email, settings) {
|
|
642
|
+
return this.generateActionLink('PASSWORD_RESET', email, settings);
|
|
643
|
+
}
|
|
644
|
+
/** Generate an email verification link without sending an email. */
|
|
645
|
+
async generateEmailVerificationLink(email, settings) {
|
|
646
|
+
return this.generateActionLink('VERIFY_EMAIL', email, settings);
|
|
647
|
+
}
|
|
648
|
+
/** Generate a link that verifies a new email before changing the account email. */
|
|
649
|
+
async generateVerifyAndChangeEmailLink(email, newEmail, settings) {
|
|
650
|
+
return this.generateActionLink('VERIFY_AND_CHANGE_EMAIL', email, settings, newEmail);
|
|
651
|
+
}
|
|
652
|
+
/** Generate an email sign-in link; action code settings are required. */
|
|
653
|
+
async generateSignInWithEmailLink(email, settings) {
|
|
654
|
+
return this.generateActionLink('EMAIL_SIGNIN', email, settings);
|
|
655
|
+
}
|
|
656
|
+
async generateActionLink(requestType, email, settings, newEmail) {
|
|
657
|
+
const request = buildEmailActionRequest(requestType, email, settings, newEmail);
|
|
658
|
+
if (request.error)
|
|
659
|
+
return request;
|
|
660
|
+
try {
|
|
661
|
+
const { data: token, error: tokenError } = await this.getCachedToken();
|
|
662
|
+
if (tokenError)
|
|
663
|
+
return {
|
|
664
|
+
data: null,
|
|
665
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SERVICE_ACCOUNT_TOKEN_FAILED, { cause: ensureError(tokenError) })
|
|
666
|
+
};
|
|
667
|
+
if (!token?.access_token)
|
|
668
|
+
return {
|
|
669
|
+
data: null,
|
|
670
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_NO_TOKEN_RETURNED)
|
|
671
|
+
};
|
|
672
|
+
const { data, error } = await generateEmailActionLink(this.serviceAccountKey.project_id, request.data, token.access_token, this.fetch, this.tenantId);
|
|
673
|
+
if (error)
|
|
674
|
+
return {
|
|
675
|
+
data: null,
|
|
676
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_EMAIL_ACTION_LINK_FAILED, { cause: ensureError(error) })
|
|
677
|
+
};
|
|
678
|
+
return { data, error: null };
|
|
679
|
+
}
|
|
680
|
+
catch (cause) {
|
|
681
|
+
return {
|
|
682
|
+
data: null,
|
|
683
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_EMAIL_ACTION_LINK_FAILED, { cause: ensureError(cause) })
|
|
432
684
|
};
|
|
433
685
|
}
|
|
434
|
-
return {
|
|
435
|
-
data,
|
|
436
|
-
error: null
|
|
437
|
-
};
|
|
438
686
|
}
|
|
439
687
|
/**
|
|
440
688
|
* Verifies a Firebase session cookie and returns the decoded payload.
|
|
@@ -492,6 +740,16 @@ export class FirebaseAdminAuth {
|
|
|
492
740
|
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_USER_RECORD_NOT_FOUND)
|
|
493
741
|
};
|
|
494
742
|
}
|
|
743
|
+
if (user.disabled)
|
|
744
|
+
return {
|
|
745
|
+
data: null,
|
|
746
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_USER_DISABLED)
|
|
747
|
+
};
|
|
748
|
+
if (user.validSince && data.auth_time < Number(user.validSince))
|
|
749
|
+
return {
|
|
750
|
+
data: null,
|
|
751
|
+
error: new FirebaseEdgeError(FirebaseAdminAuthErrorInfo.ADMIN_SESSION_COOKIE_REVOKED)
|
|
752
|
+
};
|
|
495
753
|
return {
|
|
496
754
|
data,
|
|
497
755
|
error: null
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase-admin-auth.js","sourceRoot":"","sources":["../../src/auth/firebase-admin-auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"firebase-admin-auth.js","sourceRoot":"","sources":["../../src/auth/firebase-admin-auth.ts"],"names":[],"mappings":"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"}
|