Class: BaseAccountRouteMongo
Defined in: auth/src/routes/mongo/BaseAccountRouteMongo.ts:8
Provides a single set of routes for working with a user's account data in aggregate.
Extends
Constructors
Constructor
new BaseAccountRouteMongo():
BaseAccountRouteMongo
Returns
BaseAccountRouteMongo
Inherited from
Properties
aliasClass
protectedaliasClass:any=AliasMongo
Defined in: auth/src/routes/mongo/BaseAccountRouteMongo.ts:9
Overrides
aliasRepo?
protectedoptionalaliasRepo?:RepoUtils<AliasMongo>
Defined in: auth/src/routes/BaseAccountRoute.ts:65
Inherited from
auditLogUtils?
protectedoptionalauditLogUtils?:AuditLogUtils
Defined in: auth/src/routes/BaseAccountRoute.ts:60
Inherited from
BaseAccountRoute.auditLogUtils
defaultScopes
protecteddefaultScopes:string[] =[]
Defined in: auth/src/routes/BaseAccountRoute.ts:42
Inherited from
BaseAccountRoute.defaultScopes
jwtConfig?
protectedoptionaljwtConfig?:any
Defined in: auth/src/routes/BaseAccountRoute.ts:45
Inherited from
logger
protectedlogger:any
Defined in: auth/src/routes/BaseAccountRoute.ts:51
Inherited from
messagingUtils?
protectedoptionalmessagingUtils?:MessagingUtils
Defined in: auth/src/routes/BaseAccountRoute.ts:54
Inherited from
BaseAccountRoute.messagingUtils
profileClass
protectedprofileClass:any=ProfileMongo
Defined in: auth/src/routes/mongo/BaseAccountRouteMongo.ts:10
Overrides
profileRepo?
protectedoptionalprofileRepo?:RepoUtils<ProfileMongo>
Defined in: auth/src/routes/BaseAccountRoute.ts:66
Inherited from
rateLimiter?
protectedoptionalrateLimiter?:RateLimiter
Defined in: auth/src/routes/BaseAccountRoute.ts:63
Inherited from
secretClass
protectedsecretClass:any=SecretMongo
Defined in: auth/src/routes/mongo/BaseAccountRouteMongo.ts:11
Overrides
secretRepo?
protectedoptionalsecretRepo?:RepoUtils<SecretMongo>
Defined in: auth/src/routes/BaseAccountRoute.ts:67
Inherited from
tokenUtils?
protectedoptionaltokenUtils?:TokenUtils
Defined in: auth/src/routes/BaseAccountRoute.ts:57
Inherited from
trustedProxies
protectedtrustedProxies:string[] =[]
Defined in: auth/src/routes/BaseAccountRoute.ts:71
Inherited from
BaseAccountRoute.trustedProxies
trustedRoles
protectedtrustedRoles:string[]
Defined in: auth/src/routes/BaseAccountRoute.ts:48
Inherited from
userClass
protecteduserClass:any=UserMongo
Defined in: auth/src/routes/mongo/BaseAccountRouteMongo.ts:12
Overrides
userRepo?
protectedoptionaluserRepo?:RepoUtils<UserMongo>
Defined in: auth/src/routes/BaseAccountRoute.ts:68
Inherited from
Methods
cleanSecretData()
protectedcleanSecretData(obj):void
Defined in: auth/src/routes/BaseAccountRoute.ts:111
Removes the data property from the secret(s) to protect sensitive information.
Parameters
obj
Returns
void
Inherited from
BaseAccountRoute.cleanSecretData
delete()
delete(
id,req,user):Promise<any>
Defined in: auth/src/routes/BaseAccountRoute.ts:123
Parameters
id
string
req
HttpRequest
user
JWTUser
Returns
Promise<any>
Inherited from
get()
get(
id,user):Promise<any>
Defined in: auth/src/routes/BaseAccountRoute.ts:167
Parameters
id
string
user
JWTUser
Returns
Promise<any>
Inherited from
initialize()
protectedinitialize():Promise<void>
Defined in: auth/src/routes/BaseAccountRoute.ts:74
Returns
Promise<void>
Inherited from
resolveOwnedUid()
protectedresolveOwnedUid(id,user):string
Defined in: auth/src/routes/BaseAccountRoute.ts:263
Resolves id (handling the "me" keyword) and verifies the caller either owns the targeted account
(targetUid === user.uid) or holds a trusted role. Throws 403 otherwise.
Parameters
id
string
user
JWTUser
Returns
string
Inherited from
BaseAccountRoute.resolveOwnedUid
revokeSessions()
revokeSessions(
id,req,user):Promise<void>
Defined in: auth/src/routes/BaseAccountRoute.ts:221
Immediately revokes every outstanding refresh token for the account (self-service, or any account's if the caller holds a trusted role) — the standard "log out everywhere" action, e.g. after a suspected account compromise.
This does NOT invalidate an already-issued access token, which remains valid until its own natural
(short) expiry regardless of this call — true immediate access-token revocation would require a
persistent revocation check on every single request, which the underlying JWT verification
(@rapidrest/service-core's JWTStrategy, an external package this library doesn't control) doesn't
support; it does a stateless signature/expiry check only, with no per-request datastore lookup. What
this does reliably stop going forward is BaseAuthRefreshRoute minting any new access token from a
refresh token issued before this call — see the iat check there. This includes the caller's own
current session: there is no "everywhere but here" variant, matching the equivalent behavior in most
other systems that offer this action.
Parameters
id
string
req
HttpRequest
user
JWTUser
Returns
Promise<void>