Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Biblioteka biblioteki MSAL zawiera zestaw opcji konfiguracji, które mogą służyć do dostosowywania zachowania przepływów uwierzytelniania. Te opcje można ustawić w konstruktorze obiektu PublicClientApplication lub w ramach interfejsów API żądań. W tym miejscu opisano obiekt konfiguracji, który można przekazać do konstruktora PublicClientApplication .
Wymagania wstępne
- Dobrze zrozumieć, jak zainicjować obiekt aplikacji.
Użycie
Obiekt konfiguracji można przekazać do konstruktora PublicClientApplication . Jedynym wymaganym parametrem konfiguracji jest client_id aplikacja. Wszystko inne jest opcjonalne, ale może być wymagane w zależności od przepływu uwierzytelniania, dzierżawy i modelu aplikacji.
Obiekt Configuration ze wszystkimi obsługiwanymi parametrami jest pokazany poniżej:
// Call back APIs which automatically write and read into a .json file - example implementation
const beforeCacheAccess = async (cacheContext) => {
cacheContext.tokenCache.deserialize(await fs.readFile(cachePath, "utf-8"));
};
const afterCacheAccess = async (cacheContext) => {
if(cacheContext.cacheHasChanged){
await fs.writeFile(cachePath, cacheContext.tokenCache.serialize());
}
};
// Cache Plugin
const cachePlugin = {
beforeCacheAccess,
afterCacheAccess
};;
const msalConfig = {
auth: {
clientId: "enter_client_id_here",
authority: "https://login.microsoftonline.com/common",
knownAuthorities: [],
cloudDiscoveryMetadata: "",
azureCloudOptions: {
azureCloudInstance: "enter_AzureCloudInstance_here" // AzureCloudInstance enum is exported as a "type",
tenant: "enter_tenant_info" // defaults to "common"
}
},
cache: {
cachePlugin // your implementation of cache plugin
},
system: {
loggerOptions: {
loggerCallback(loglevel, message, containsPii) {
console.log(message);
},
piiLoggingEnabled: false,
logLevel: msal.LogLevel.Verbose,
},
}
}
const msalInstance = new PublicClientApplication(msalConfig);
Opcje
Opcje konfiguracji uwierzytelniania
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
clientId |
Identyfikator aplikacji. Rejestrację aplikacji można znaleźć w centrum administracyjne Microsoft Entra rejestracji aplikacji. | Identyfikator UUID/IDENTYFIKATOR GUID | Żaden. Ten parametr jest wymagany w celu wykonania jakichkolwiek akcji przez bibliotekę MSAL. |
authority |
Identyfikator URI dzierżawy do uwierzytelniania i autoryzacji. Zazwyczaj przyjmuje formę https://{uri}/{tenantid} |
Ciąg w formacie identyfikatora URI z dzierżawą — https://{uri}/{tenantid} |
https://login.microsoftonline.com/common |
knownAuthorities |
Tablica identyfikatorów URI, które są znane jako prawidłowe. Używane w scenariuszach B2C. | Tablica ciągów w formacie identyfikatora URI | Pusta tablica [] |
cloudDiscoveryMetadata |
Ciąg zawierający odpowiedź odnajdywania w chmurze. Używane w scenariuszach Microsoft Entra. Zobacz Wydajność , aby uzyskać więcej informacji | ciąg | Pusty ciąg "" |
authorityMetadata |
Ciąg zawierający odpowiedź punktu końcowego .well-known/openid-configuration. Zobacz Wydajność , aby uzyskać więcej informacji | ciąg | Pusty ciąg "" |
clientCapabilities |
Tablica możliwości, które mają być dodawane do wszystkich żądań sieciowych xms_cc w ramach żądania oświadczeń |
Tablica ciągów znaków | [] |
azureCloudOptions |
Zdefiniowany zestaw opcji chmury platformy Azure dla deweloperów domyślnie ustawiony na określone władze w chmurze w przypadku określonych obsługiwanych chmur można znaleźć w temacie AzureCloudInstance | AzureCloudOptions | AzureCloudInstance.None |
Opcje konfiguracji pamięci podręcznej
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
cachePlugin |
Wtyczka pamięci podręcznej z wywołaniami do odczytu i zapisywania w trwałości pamięci podręcznej (zobacz również: buforowanie) | ICachePlugin | null |
Opcje konfiguracji brokera
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
nativeBrokerPlugin |
Wtyczka brokera do uzyskiwania tokenów za pośrednictwem natywnego brokera tokenów (zobacz również: brokering) | INativeBrokerPlugin | null |
Opcje konfiguracji systemu
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
loggerOptions |
Obiekt konfiguracji dla rejestratora. | Zobacz poniżej. | Zobacz poniżej. |
NetworkClient |
Niestandardowa implementacja PROTOKOŁU HTTP | INetworkModule | HttpClient.ts |
protocolMode |
Wyliczenie reprezentujące tryb protokołu do użycia. Jeśli "AAD"element będzie działać w punktach końcowych Microsoft Entra w wersji 2; jeśli "OIDC", będzie działać w punktach końcowych zgodnych ze standardem OIDC. |
ciąg | "AAD" |
disableInternalRetries |
Jeśli wartość true, biblioteka MSAL nie ponowi próbę niepowodzenia żądań sieciowych | Boolean | false |
Note
W środowisku MSAL Node v5 proxyUrl parametry i customAgentOptions zostały usunięte. Jeśli aplikacja wymaga obsługi serwera proxy, zaimplementuj niestandardowego klienta HTTP przy użyciu modułu INetworkModule. Zobacz przykładowy przykład niestandardowego modułu INetworkModule . Parametr protocolMode został również przeniesiony z konfiguracji uwierzytelniania do konfiguracji systemu.
Opcje konfiguracji rejestratora
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
loggerCallback |
Funkcja wywołania zwrotnego, która obsługuje rejestrowanie instrukcji BIBLIOTEKI MSAL. | Funkcja — loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void |
Zobacz powyżej. |
piiLoggingEnabled |
Jeśli to prawda, dane osobowe (PII) są uwzględniane w dziennikach. | Boolean | false |
Opcje konfiguracji telemetrii
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
application |
Opcje telemetrii dla aplikacji korzystających z MSAL.js | Zobacz poniżej | Zobacz poniżej |
Telemetria aplikacji
| Option | Description | Forma | Wartość domyślna |
|---|---|---|---|
appName |
Unikatowa nazwa ciągu aplikacji | ciąg | Pusty ciąg "" |
appVersion |
Wersja aplikacji przy użyciu biblioteki MSAL | ciąg | Pusty ciąg "" |
Dalsze kroki
Przejdź do zapoznania się z publicznymi interfejsami API udostępnianymi przez msal-node proces uzyskiwania tokenów tutaj