MSAL Düğümünü Yapılandırma

MSAL kitaplığında, kimlik doğrulama akışlarınızın davranışını özelleştirmek için kullanılabilecek bir dizi yapılandırma seçeneği vardır. Bu seçenekler PublicClientApplication nesnesinin oluşturucusunda veya istek API'lerinin bir parçası olarak ayarlanabilir. Burada PublicClientApplication oluşturucusuna geçirilebilen yapılandırma nesnesini açıklayacağız.

Prerequisites

Kullanım

Yapılandırma nesnesi oluşturucuya PublicClientApplication geçirilebilir. Gereken tek yapılandırma parametresi uygulamanın parametresidir client_id . Diğer her şey isteğe bağlıdır, ancak kimlik doğrulama akışınıza, kiracınıza ve uygulama modelinize bağlı olarak gerekli olabilir.

Desteklenen tüm parametrelere sahip Configuration nesnesi aşağıda gösterilmiştir:


// 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);

Options

Kimlik Doğrulama Yapılandırması Seçenekleri

Seçenek Description Format Varsayılan Değer
clientId Uygulamanızın uygulama kimliği. Uygulama kaydınızda Microsoft Entra yönetim merkezi uygulama kaydında bulunabilir. UUID/GUID Yok. MSAL'nin herhangi bir eylem gerçekleştirmesi için bu parametre gereklidir.
authority Kimlik doğrulaması ve yetkilendirme için kiracının URI'si. Genellikle şu şekildedir: https://{uri}/{tenantid} Kiracı ile URI biçiminde dize - https://{uri}/{tenantid} https://login.microsoftonline.com/common
knownAuthorities Geçerli olduğu bilinen bir URI dizisi. B2C senaryolarında kullanılır. URI biçiminde dize dizisi Boş dizi []
cloudDiscoveryMetadata Bulut bulma yanıtını içeren bir dize. Microsoft Entra senaryolarında kullanılır. Daha fazla bilgi için bkz. Performans Dize Boş dize ""
authorityMetadata .well-known/openid-configuration uç noktası yanıtını içeren bir dize. Daha fazla bilgi için bkz. Performans Dize Boş dize ""
clientCapabilities Talep isteğinin bir parçası xms_cc olarak tüm ağ isteklerine eklenecek özellikler dizisi Dizeler dizisi []
azureCloudOptions Geliştiriciler için varsayılan olarak belirli bulut yetkililerine yönelik tanımlanmış azure bulut seçenekleri kümesi, desteklenen belirli bulutlar için lütfen AzureCloudInstance'a bakın AzureCloudOptions AzureCloudInstance.None

Önbellek Yapılandırma Seçenekleri

Seçenek Description Format Varsayılan Değer
cachePlugin Önbellek kalıcılığını okumaya ve yazmaya geri çağrıları olan önbellek eklentisi (ayrıca bkz: önbelleğe alma) ICachePlugin sıfır

Aracı Yapılandırma Seçenekleri

Seçenek Description Format Varsayılan Değer
nativeBrokerPlugin Yerel belirteç aracısı aracılığıyla belirteç almak için aracı eklentisi (ayrıca bkz: aracılık) INativeBrokerPlugin sıfır

Sistem Yapılandırma Seçenekleri

Seçenek Description Format Varsayılan Değer
loggerOptions Günlükçü için yapılandırma nesnesi. Aşağıya bakın. Aşağıya bakın.
NetworkClient Özel HTTP uygulaması INetworkModule HttpClient.ts
protocolMode Kullanılacak protokol modunu temsil eden sabit listesi. ise"AAD", Microsoft Entra v2 uç noktaları üzerinde çalışır; ise "OIDC"OIDC uyumlu uç noktalarda çalışır. Dize "AAD"
disableInternalRetries Doğruysa, MSAL başarısız ağ isteklerini yeniden denemez Boolean false

Note

MSAL Node v5'te proxyUrl ve customAgentOptions parametreleri kaldırıldı. Uygulamanız ara sunucu desteği gerektiriyorsa , INetworkModule kullanarak özel bir HTTP istemcisi uygulayın. Örnek için özel INetworkModule örneğine bakın. protocolMode Parametresi, kimlik doğrulama yapılandırmasından sistem yapılandırmasına da taşındı.

Günlükçü Yapılandırma Seçenekleri

Seçenek Description Format Varsayılan Değer
loggerCallback MSAL deyimlerinin günlüğe kaydedilmesini işleyen geri çağırma işlevi. Işlev- loggerCallback: (level: LogLevel, message: string, containsPii: boolean): void Yukarıya bakın.
piiLoggingEnabled Doğruysa, kişisel bilgiler (PII) günlüklere eklenir. Boolean false

Telemetri Yapılandırma Seçenekleri

Seçenek Description Format Varsayılan Değer
application MSAL.js kullanan uygulamalar için telemetri seçenekleri Aşağıya bakın Aşağıya bakın

Uygulama Telemetrisi

Seçenek Description Format Varsayılan Değer
appName Uygulamanın benzersiz dize adı Dize Boş dize ""
appVersion MSAL kullanan uygulamanın sürümü Dize Boş dize ""

Sonraki Adımlar

Burada belirteç almak için tarafından msal-node sağlanan genel API'leri anlamaya devam edin