in packages/azure-kusto-data/src/tokenProvider.ts [109:129]
async acquireToken(): Promise<TokenResponse> {
if (!this.initialized) {
if (this.cloudInfo == null) {
this.cloudInfo = await CloudSettings.getCloudInfoForCluster(this.kustoUri);
let resourceUri = this.cloudInfo.KustoServiceResourceId;
if (this.cloudInfo.LoginMfaRequired) {
resourceUri = resourceUri.replace(".kusto.", ".kustomfa.");
}
this.scopes = [resourceUri + "/.default"];
this.additionalCloudSettingsInit();
this.initClient();
}
this.initialized = true;
}
const token = await this.acquireTokenWithCloudSettings();
if (token) {
return { tokenType: token.tokenType, accessToken: token.accessToken };
}
throw new Error("Failed to get token from msal");
}