Add logging for deciding on MSAL (#226112)

so it's clear why
This commit is contained in:
Tyler James Leonhardt
2024-08-20 18:28:02 -07:00
committed by GitHub
parent b5ffa4def5
commit e1db90f81d
2 changed files with 8 additions and 1 deletions

View File

@@ -9,26 +9,32 @@ import * as extensionV2 from './extensionV2';
import { createExperimentationService } from './common/experimentation';
import { MicrosoftAuthenticationTelemetryReporter } from './common/telemetryReporter';
import { IExperimentationService } from 'vscode-tas-client';
import Logger from './logger';
function shouldUseMsal(expService: IExperimentationService): boolean {
// First check if there is a setting value to allow user to override the default
const inspect = workspace.getConfiguration('microsoft').inspect<boolean>('useMsal');
if (inspect?.workspaceFolderValue !== undefined) {
Logger.debug(`Acquired MSAL enablement value from 'workspaceFolderValue'. Value: ${inspect.workspaceFolderValue}`);
return inspect.workspaceFolderValue;
}
if (inspect?.workspaceValue !== undefined) {
Logger.debug(`Acquired MSAL enablement value from 'workspaceValue'. Value: ${inspect.workspaceValue}`);
return inspect.workspaceValue;
}
if (inspect?.globalValue !== undefined) {
Logger.debug(`Acquired MSAL enablement value from 'globalValue'. Value: ${inspect.globalValue}`);
return inspect.globalValue;
}
// Then check if the experiment value
const expValue = expService.getTreatmentVariable<boolean>('vscode', 'microsoft.useMsal');
if (expValue !== undefined) {
Logger.debug(`Acquired MSAL enablement value from 'exp'. Value: ${expValue}`);
return expValue;
}
Logger.debug('Acquired MSAL enablement value from default. Value: false');
// If no setting or experiment value is found, default to false
return false;
}

View File

@@ -9,6 +9,7 @@ import { AzureActiveDirectoryService, IStoredSession } from './AADHelper';
import { BetterTokenStorage } from './betterSecretStorage';
import { UriEventHandler } from './UriEventHandler';
import TelemetryReporter from '@vscode/extension-telemetry';
import Logger from './logger';
async function initMicrosoftSovereignCloudAuthProvider(context: vscode.ExtensionContext, telemetryReporter: TelemetryReporter, uriHandler: UriEventHandler, tokenStorage: BetterTokenStorage<IStoredSession>): Promise<vscode.Disposable | undefined> {
const environment = vscode.workspace.getConfiguration('microsoft-sovereign-cloud').get<string | undefined>('environment');
@@ -109,7 +110,7 @@ export async function activate(context: vscode.ExtensionContext, telemetryReport
const betterSecretStorage = new BetterTokenStorage<IStoredSession>('microsoft.login.keylist', context);
const loginService = new AzureActiveDirectoryService(
vscode.window.createOutputChannel(vscode.l10n.t('Microsoft Authentication'), { log: true }),
Logger,
context,
uriHandler,
betterSecretStorage,