Skip to content

Commit b3a7636

Browse files
authored
Merge pull request #1752 from AzureAD/ath-instrumentation
Extend acquireTokenHelper instrumentation
2 parents 2c40f1e + 983087b commit b3a7636

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

lib/msal-core/src/UserAgentApplication.ts

+15
Original file line numberDiff line numberDiff line change
@@ -499,9 +499,13 @@ export class UserAgentApplication {
499499
*
500500
*/
501501
private async acquireTokenHelper(account: Account, interactionType: InteractionType, isLoginCall: boolean, request: AuthenticationParameters, resolve?: any, reject?: any): Promise<void> {
502+
this.logger.verbose("AcquireTokenHelper has been called");
503+
this.logger.verbose(`Interaction type: ${interactionType}. isLoginCall: ${isLoginCall}`);
504+
502505
// Track the acquireToken progress
503506
this.cacheStorage.setItem(TemporaryCacheKeys.INTERACTION_STATUS, Constants.inProgress);
504507
const scope = request.scopes ? request.scopes.join(" ").toLowerCase() : this.clientId.toLowerCase();
508+
this.logger.verbosePii(`Serialized scopes: ${scope}`);
505509

506510
let serverAuthenticationRequest: ServerRequestParameters;
507511
const acquireTokenAuthority = (request && request.authority) ? AuthorityFactory.CreateInstance(request.authority, this.config.auth.validateAuthority, request.authorityMetadata) : this.authorityInstance;
@@ -530,11 +534,14 @@ export class UserAgentApplication {
530534
request.state,
531535
request.correlationId
532536
);
537+
this.logger.verbose("Finished building server authentication request");
533538

534539
this.updateCacheEntries(serverAuthenticationRequest, account, isLoginCall, loginStartPage);
540+
this.logger.verbose("Updating cache entries");
535541

536542
// populate QueryParameters (sid/login_hint) and any other extraQueryParameters set by the developer
537543
serverAuthenticationRequest.populateQueryParams(account, request);
544+
this.logger.verbose("Query parameters populated from account");
538545

539546
// Construct urlNavigate
540547
const urlNavigate = UrlUtils.createNavigateUrl(serverAuthenticationRequest) + Constants.response_mode_fragment;
@@ -543,18 +550,26 @@ export class UserAgentApplication {
543550
if (interactionType === Constants.interactionTypeRedirect) {
544551
if (!isLoginCall) {
545552
this.cacheStorage.setItem(`${TemporaryCacheKeys.STATE_ACQ_TOKEN}${Constants.resourceDelimiter}${request.state}`, serverAuthenticationRequest.state, this.inCookie);
553+
this.logger.verbose("State cached for redirect");
554+
this.logger.verbosePii(`State cached: ${serverAuthenticationRequest.state}`);
555+
} else {
556+
this.logger.verbose("Interaction type redirect but login call is true. State not cached");
546557
}
547558
} else if (interactionType === Constants.interactionTypePopup) {
548559
window.renewStates.push(serverAuthenticationRequest.state);
549560
window.requestType = isLoginCall ? Constants.login : Constants.renewToken;
561+
this.logger.verbose("State saved to window");
562+
this.logger.verbosePii(`State saved: ${serverAuthenticationRequest.state}`);
550563

551564
// Register callback to capture results from server
552565
this.registerCallback(serverAuthenticationRequest.state, scope, resolve, reject);
553566
} else {
567+
this.logger.verbose("Invalid interaction error. State not cached");
554568
throw ClientAuthError.createInvalidInteractionTypeError();
555569
}
556570

557571
if (interactionType === Constants.interactionTypePopup) {
572+
this.logger.verbose("Interaction type is popup. Generating popup window");
558573
// Generate a popup window
559574
try {
560575
popUpWindow = this.openPopup(urlNavigate, "msal", Constants.popUpWidth, Constants.popUpHeight);

0 commit comments

Comments
 (0)