From 45bfbb65530681ba38e9a1b746b7eddaefb98185 Mon Sep 17 00:00:00 2001 From: Franco Olivera Date: Mon, 20 Jun 2022 11:39:40 -0300 Subject: [PATCH 1/2] Add custom scopes via PKCEConfig --- dist/onelogin/use_cases/pkce.d.ts | 1 + dist/onelogin/use_cases/pkce.js | 5 ++--- dist/onelogin/use_cases/pkce.js.map | 2 +- lib/onelogin/use_cases/pkce.ts | 8 ++++---- package-lock.json | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/dist/onelogin/use_cases/pkce.d.ts b/dist/onelogin/use_cases/pkce.d.ts index 67ac6c9..9124309 100644 --- a/dist/onelogin/use_cases/pkce.d.ts +++ b/dist/onelogin/use_cases/pkce.d.ts @@ -2,6 +2,7 @@ import { HTTPClient } from '../../http_clients/interface'; interface PKCEConfig { redirectURL: string; clientID: string; + scopes?: Array; } interface AccessToken { access_token: string; diff --git a/dist/onelogin/use_cases/pkce.js b/dist/onelogin/use_cases/pkce.js index 86a7de1..ff51034 100644 --- a/dist/onelogin/use_cases/pkce.js +++ b/dist/onelogin/use_cases/pkce.js @@ -35,7 +35,6 @@ const base64 = __importStar(require("base64-js")); const qs_1 = __importDefault(require("qs")); const LOCALSTORE_AUTH_URL_KEY = "auth-url"; const LOCALSTORE_CODE_VERIFIER_KEY = "code-verifier"; -const QUERYPARAM_SCOPE = "scope=openid"; const QUERYPARAM_RESPONSE_TYPE = "response_type=code"; const QUERYPARAM_CODE_CHALLENGE_METHOD = "code_challenge_method=S256"; const REFRESH_GRANT_TYPE = "refresh_token"; @@ -62,12 +61,12 @@ class PKCE { !localStorage.getItem(LOCALSTORE_AUTH_URL_KEY)) { let codeVerifier = this._createCodeVerifier(50); let codeChallenge = yield this._createCodeChallenge(codeVerifier); - let { clientID, redirectURL } = this.configuration; + let { clientID, redirectURL, scopes } = this.configuration; if (overrideRedirectURL) redirectURL = overrideRedirectURL; let queryParams = [ `code_challenge=${codeChallenge}`, `client_id=${clientID}`, `redirect_uri=${redirectURL}`, - QUERYPARAM_CODE_CHALLENGE_METHOD, QUERYPARAM_RESPONSE_TYPE, QUERYPARAM_SCOPE + QUERYPARAM_CODE_CHALLENGE_METHOD, QUERYPARAM_RESPONSE_TYPE, `scope=openid${scopes ? ` ${scopes.join(" ")}` : ''}` ]; localStorage.setItem(LOCALSTORE_CODE_VERIFIER_KEY, codeVerifier); localStorage.setItem(LOCALSTORE_AUTH_URL_KEY, `${this.client.baseURL}/oidc/2/auth?${queryParams.join("&")}`); diff --git a/dist/onelogin/use_cases/pkce.js.map b/dist/onelogin/use_cases/pkce.js.map index 757c835..1d3d230 100644 --- a/dist/onelogin/use_cases/pkce.js.map +++ b/dist/onelogin/use_cases/pkce.js.map @@ -1 +1 @@ -{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../../../lib/onelogin/use_cases/pkce.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"pkce.js","sourceRoot":"","sources":["../../../lib/onelogin/use_cases/pkce.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/onelogin/use_cases/pkce.ts b/lib/onelogin/use_cases/pkce.ts index 793e486..6c8f506 100644 --- a/lib/onelogin/use_cases/pkce.ts +++ b/lib/onelogin/use_cases/pkce.ts @@ -5,7 +5,6 @@ import qs from "qs"; const LOCALSTORE_AUTH_URL_KEY = "auth-url"; const LOCALSTORE_CODE_VERIFIER_KEY = "code-verifier"; -const QUERYPARAM_SCOPE = "scope=openid"; const QUERYPARAM_RESPONSE_TYPE = "response_type=code"; const QUERYPARAM_CODE_CHALLENGE_METHOD = "code_challenge_method=S256"; @@ -18,7 +17,8 @@ const MISSING_CONFIG_MESSAGE = "The PKCE Client is Missing Configuration Paramet interface PKCEConfig { redirectURL: string, - clientID: string + clientID: string, + scopes?: Array, } interface AccessToken { @@ -64,13 +64,13 @@ export default class PKCE { let codeVerifier = this._createCodeVerifier( 50 ); let codeChallenge = await this._createCodeChallenge( codeVerifier ); - let { clientID, redirectURL } = this.configuration + let { clientID, redirectURL, scopes } = this.configuration if(overrideRedirectURL) redirectURL = overrideRedirectURL; let queryParams = [ `code_challenge=${codeChallenge}`, `client_id=${clientID}`, `redirect_uri=${redirectURL}`, - QUERYPARAM_CODE_CHALLENGE_METHOD, QUERYPARAM_RESPONSE_TYPE, QUERYPARAM_SCOPE + QUERYPARAM_CODE_CHALLENGE_METHOD, QUERYPARAM_RESPONSE_TYPE, `scope=openid${scopes ? ` ${scopes.join(" ")}` : ''}` ]; localStorage.setItem(LOCALSTORE_CODE_VERIFIER_KEY, codeVerifier); diff --git a/package-lock.json b/package-lock.json index aae7d2e..685da69 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@onelogin/sdk", - "version": "2.0.7", + "version": "2.0.13", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@onelogin/sdk", - "version": "2.0.7", + "version": "2.0.13", "license": "MIT", "dependencies": { "axios": "^0.21.1", From 9149f63ae55462d3cba1c0e1f545b157d1d951eb Mon Sep 17 00:00:00 2001 From: notable-franco <102975863+notable-franco@users.noreply.github.com> Date: Mon, 20 Jun 2022 14:19:58 -0300 Subject: [PATCH 2/2] Revert package-lock.json changes --- package-lock.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 685da69..aae7d2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@onelogin/sdk", - "version": "2.0.13", + "version": "2.0.7", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@onelogin/sdk", - "version": "2.0.13", + "version": "2.0.7", "license": "MIT", "dependencies": { "axios": "^0.21.1",