From ec81340815b3d27f08d1bb623a8c03610311ad4d Mon Sep 17 00:00:00 2001 From: Jordan Melberg Date: Tue, 31 Oct 2017 14:50:01 -0700 Subject: [PATCH] :bug: Fixes overwriting scopes (#32) Resolves: OKTA-146916 --- packages/okta-angular/src/okta/okta.service.ts | 8 +++++--- packages/okta-angular/test/e2e/harness/package.json | 2 +- .../okta-angular/test/e2e/harness/src/app/app.module.ts | 1 + 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/okta-angular/src/okta/okta.service.ts b/packages/okta-angular/src/okta/okta.service.ts index ec37e6885..8d4a02476 100644 --- a/packages/okta-angular/src/okta/okta.service.ts +++ b/packages/okta-angular/src/okta/okta.service.ts @@ -52,7 +52,7 @@ export class OktaAuthService { /** * Scrub scopes to ensure 'openid' is included */ - auth.scopes = this.scrubScopes(auth.scopes); + auth.scope = this.scrubScopes(auth.scope); /** * Cache the auth config. @@ -101,7 +101,8 @@ export class OktaAuthService { loginRedirect(additionalParams?: object) { this.oktaAuth.token.getWithRedirect({ responseType: ['id_token', 'token'], - scope: this.config.scope, + // Convert scopes to list of strings + scopes: this.config.scope.split(' '), ...additionalParams }); } @@ -162,8 +163,9 @@ export class OktaAuthService { // Make sure object is a string scopes = Array.isArray(scopes) ? scopes.join(' ') : scopes } - if (scopes.indexOf('openid') !== -1) { + if (scopes.indexOf('openid') === -1) { return scopes + ' openid'; } + return scopes; } } diff --git a/packages/okta-angular/test/e2e/harness/package.json b/packages/okta-angular/test/e2e/harness/package.json index 27fe6ecda..08c506623 100644 --- a/packages/okta-angular/test/e2e/harness/package.json +++ b/packages/okta-angular/test/e2e/harness/package.json @@ -22,7 +22,7 @@ "@angular/platform-browser": "^4.2.4", "@angular/platform-browser-dynamic": "^4.2.4", "@angular/router": "^4.2.4", - "@okta/okta-angular": "file:../../../okta-okta-angular-0.0.4.tgz", + "@okta/okta-angular": "file:../../../okta-okta-angular-0.0.8.tgz", "core-js": "^2.4.1", "ejs": "^2.5.6", "rxjs": "^5.4.2", diff --git a/packages/okta-angular/test/e2e/harness/src/app/app.module.ts b/packages/okta-angular/test/e2e/harness/src/app/app.module.ts index 00c520e71..ae6c7d2bb 100644 --- a/packages/okta-angular/test/e2e/harness/src/app/app.module.ts +++ b/packages/okta-angular/test/e2e/harness/src/app/app.module.ts @@ -61,6 +61,7 @@ const config = { issuer: environment.ISSUER, redirectUri: environment.REDIRECT_URI, clientId: environment.CLIENT_ID, + scope: 'email', onAuthRequired: onNeedsGlobalAuthenticationGuard };