From f54ad06bcff545ff4ff7ba66276644b451c80758 Mon Sep 17 00:00:00 2001 From: Karolis Narkevicius Date: Thu, 2 May 2019 11:45:45 +0100 Subject: [PATCH 1/3] fix: Pass authenticated entity when resolving entity for client --- packages/authentication-local/src/strategy.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/authentication-local/src/strategy.ts b/packages/authentication-local/src/strategy.ts index 73b453f9a9..52f35cb522 100644 --- a/packages/authentication-local/src/strategy.ts +++ b/packages/authentication-local/src/strategy.ts @@ -106,7 +106,7 @@ export class LocalStrategy extends AuthenticationBaseStrategy { await this.comparePassword(result, password); - const authEntity = await (params.provider ? this.findEntity(username, params) : result); + const authEntity = await (params.provider ? this.findEntity(username, { ...params, [entity]: result }) : result); return { authentication: { strategy: this.name }, From c50b365b54a482f88d126090d04bf62e2943e427 Mon Sep 17 00:00:00 2001 From: Karolis Narkevicius Date: Thu, 2 May 2019 12:10:12 +0100 Subject: [PATCH 2/3] fix: Log correct query being used when finding authenticating entity --- packages/authentication-local/src/strategy.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/authentication-local/src/strategy.ts b/packages/authentication-local/src/strategy.ts index 52f35cb522..aae0795b85 100644 --- a/packages/authentication-local/src/strategy.ts +++ b/packages/authentication-local/src/strategy.ts @@ -51,7 +51,7 @@ export class LocalStrategy extends AuthenticationBaseStrategy { const findParams = Object.assign({}, params, { query }); const entityService = this.app.service(service); - debug('Finding entity with query', params.query); + debug('Finding entity with query', findParams.query); const result = await entityService.find(findParams); const list = Array.isArray(result) ? result : result.data; From a2db2d019002e2bb69ba057d328fb92a1ed687dc Mon Sep 17 00:00:00 2001 From: Karolis Narkevicius Date: Fri, 3 May 2019 11:33:53 +0100 Subject: [PATCH 3/3] fix: Differentiate between authenticate calls and hook auth, omit query --- packages/authentication/src/jwt.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/authentication/src/jwt.ts b/packages/authentication/src/jwt.ts index c6575367d7..6c5d1dd691 100644 --- a/packages/authentication/src/jwt.ts +++ b/packages/authentication/src/jwt.ts @@ -43,7 +43,13 @@ export class JWTStrategy extends AuthenticationBaseStrategy { } // @ts-ignore - return entityService.get(id, params); + const result = await entityService.get(id, omit(params, ['provider', 'query'])); + + if (params.provider) { + return entityService.get(id, { ...omit(params, 'query'), [entity]: result }); + } else { + return result; + } } async authenticate (authentication: AuthenticationRequest, params: Params) {