70 lines
2.9 KiB
TypeScript
70 lines
2.9 KiB
TypeScript
/*
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License.
|
|
*/
|
|
|
|
import { LogLevel } from '@azure/msal-browser';
|
|
|
|
/**
|
|
* Configuration object to be passed to MSAL instance on creation.
|
|
* For a full list of MSAL.js configuration parameters, visit:
|
|
* https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/configuration.md
|
|
*/
|
|
|
|
export const msalConfig = {
|
|
auth: {
|
|
clientId: import.meta.env.VITE_CLIENT_ID, // This is the ONLY mandatory field that you need to supply.
|
|
authority: `https://login.microsoftonline.com/${import.meta.env.VITE_TENANT_ID}`, // Replace the placeholder with your tenant subdomain
|
|
redirectUri: import.meta.env.VITE_REDIRECT_URL, // Points to window.location.origin. You must register this URI on Microsoft Entra admin center/App Registration.
|
|
postLogoutRedirectUri: '/', // Indicates the page to navigate after logout.
|
|
navigateToLoginRequestUrl: false, // If "true", will navigate back to the original request location before processing the auth code response.
|
|
},
|
|
cache: {
|
|
cacheLocation: 'sessionStorage', // Configures cache location. "sessionStorage" is more secure, but "localStorage" gives you SSO between tabs.
|
|
storeAuthStateInCookie: false, // Set this to "true" if you are having issues on IE11 or Edge
|
|
},
|
|
system: {
|
|
loggerOptions: {
|
|
loggerCallback: (level: any, message: any, containsPii: any) => {
|
|
if (containsPii) {
|
|
return;
|
|
}
|
|
switch (level) {
|
|
case LogLevel.Error:
|
|
console.error(message);
|
|
return;
|
|
case LogLevel.Info:
|
|
console.info(message);
|
|
return;
|
|
case LogLevel.Verbose:
|
|
console.debug(message);
|
|
return;
|
|
case LogLevel.Warning:
|
|
console.warn(message);
|
|
return;
|
|
default:
|
|
return;
|
|
}
|
|
},
|
|
},
|
|
},
|
|
};
|
|
|
|
/**
|
|
* Scopes you add here will be prompted for user consent during sign-in.
|
|
* By default, MSAL.js will add OIDC scopes (openid, profile, email) to any login request.
|
|
* For more information about OIDC scopes, visit:
|
|
* https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and-consent#openid-connect-scopes
|
|
*/
|
|
export const loginRequest = {
|
|
scopes: [`api://${import.meta.env.VITE_CLIENT_ID}/user_impersonation`],
|
|
};
|
|
|
|
/**
|
|
* An optional silentRequest object can be used to achieve silent SSO
|
|
* between applications by providing a "login_hint" property.
|
|
*/
|
|
// export const silentRequest = {
|
|
// scopes: ["openid", "profile"],
|
|
// loginHint: "example@domain.net"
|
|
// };
|