From 26f1db71bae22820b7027c0f3c3411f6adc96921 Mon Sep 17 00:00:00 2001 From: Mrinmoy Date: Wed, 21 Sep 2022 11:21:46 -0400 Subject: [PATCH] fixes #758 Basic Auth should accept utf8 charset --- src/templates/security-scheme-template.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/templates/security-scheme-template.js b/src/templates/security-scheme-template.js index a6982c3c..e9979ebb 100644 --- a/src/templates/security-scheme-template.js +++ b/src/templates/security-scheme-template.js @@ -16,7 +16,8 @@ export function applyApiKey(securitySchemeId, username = '', password = '', prov let finalApiKeyValue = ''; if (securityObj.scheme?.toLowerCase() === 'basic') { if (username) { - finalApiKeyValue = `Basic ${btoa(`${username}:${password}`)}`; + finalApiKeyValue = Buffer.from(`${username}:${password}`, 'utf8').toString('base64'); + // finalApiKeyValue = `Basic ${btoa(`${username}:${password}`)}`; } } else if (providedApikeyVal) { securityObj.value = providedApikeyVal; @@ -104,7 +105,8 @@ async function fetchAccessToken(tokenUrl, clientId, clientSecret, redirectUrl, g urlFormParams.append('code_verifier', codeVerifier); // for PKCE } if (sendClientSecretIn === 'header') { - headers.set('Authorization', `Basic ${btoa(`${clientId}:${clientSecret}`)}`); + // headers.set('Authorization', `Basic ${btoa(`${clientId}:${clientSecret}`)}`); + headers.set('Authorization', `Basic ${Buffer.from(`${username}:${password}`, 'utf8').toString('base64')}`); } else { urlFormParams.append('client_id', clientId); urlFormParams.append('client_secret', clientSecret);