ConfidentialClientApplicationBuilder Sınıf

Tanım

public class ConfidentialClientApplicationBuilder : Microsoft.Identity.Client.AbstractApplicationBuilder<Microsoft.Identity.Client.ConfidentialClientApplicationBuilder>
type ConfidentialClientApplicationBuilder = class
    inherit AbstractApplicationBuilder<ConfidentialClientApplicationBuilder>
Public Class ConfidentialClientApplicationBuilder
Inherits AbstractApplicationBuilder(Of ConfidentialClientApplicationBuilder)
Devralma

Yöntemler

Name Description
Build()

içinde ayarlanan parametrelerden bir örneğini IConfidentialClientApplicationConfidentialClientApplicationBuilderoluşturur.

Create(String)

ClientID'den bir ConfidentialClientApplicationBuilder oluşturur. Bkz. https://aka.ms/msal-net-application-configuration

CreateWithApplicationOptions(ConfidentialClientApplicationOptions)

Uygulama yapılandırma seçeneklerinden bir ConfidentialClientApplicationBuilder oluşturucu. Bkz. https://aka.ms/msal-net-application-configuration

WithAdfsAuthority(String, Boolean)

ADFS sunucusuna karşılık gelen bilinen bir Yetkili ekler. Bkz. https://aka.ms/msal-net-adfs

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(AadAuthorityAudience, Boolean)

Oturum açma hedef kitlesini (bulut, Azure genel bulut) belirten oturum açma kullanıcılarına uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

Bulut örneğini ve oturum açma hedef kitlesini belirten oturum açma kullanıcıları için uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, Guid, Boolean)

Bulut örneği ve kiracı kimliği tarafından açıklanan tek bir kuruluştan (tek kiracılı uygulama) kullanıcılara oturum açmak için uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, String, Boolean)

Bulut örneği ve etki alanı adı veya kiracı kimliği tarafından açıklanan tek bir kuruluştaki (tek kiracılı uygulama) kullanıcılara oturum açmak için uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(String, Boolean)

Tam yetkili URI'sini belirten oturum açma kullanıcılarına uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. Uygulama yapılandırma seçenekleri.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(String, Guid, Boolean)

Kiracı kimliğiyle belirtilen tek bir kuruluştan (tek kiracılı uygulama) kullanıcılara oturum açmak için uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. Uygulama yapılandırma seçenekleri.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(String, String, Boolean)

Tek bir kuruluştaki (tek kiracılı uygulama) kullanıcıların etki alanı adıyla açıklandığı şekilde oturum açmak için uygulamaya bilinen bir Azure AD yetkilisi ekler. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAuthority(Uri, Boolean)

Uygulamaya bilinen bir yetkili ekler. Bkz. Uygulama yapılandırma seçenekleri. Bu oluşturucu temel olarak, yetkilinin standart Azure AD yetkilisi, ADFS yetkilisi veya Azure AD B2C yetkilisi olmadığı senaryolar için kullanılır. Azure AD için, bağımsız bulutlarda bile, gibi diğer geçersiz kılmaları kullanmayı tercih edinWithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithAzureRegion(String)

MSAL'ye Azure bölgesel belirteç hizmeti kullanmasını sağlar. Bu özellik şu anda yalnızca birinci taraf uygulamalar tarafından kullanılabilir.

WithB2CAuthority(String)

Azure AD B2C ilkesine karşılık gelen bilinen bir yetkili ekler. Bkz. https://aka.ms/msal-net-b2c-specificities

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithCacheOptions(CacheOptions)

MSAL belirteci önbellekleri seçenekleri.

MSAL, dahili olarak bellekte bir belirteç önbelleği tutar. Varsayılan olarak, bu önbellek nesnesi her veya ConfidentialClientApplicationörneğinin PublicClientApplication bir parçasıdır. Bu yöntem, MSAL'nin bellek içi belirteç önbelleğinin özelleştirilmesini sağlar.

MSAL'nin bellek önbelleği, belirteç önbelleği serileştirmesinden farklıdır. Önbellek serileştirmesi, belirteçleri JSON biçiminde depolandıkları bir önbellekten (örneğin Redis, Cosmos veya diskteki bir dosya) MSAL'nin iç bellek önbelleğine çeker. Bellek önbelleği işlemleri JSON işlemlerini içermez.

Dış önbellek serileştirmesi, kalıcılık sağladığından masaüstü uygulamalarını, web sitesini ve web API'lerini işlemek için önerilen yöntem olmaya devam eder. Bu seçenekler şu anda dış önbellek serileştirmeyi denetlemez.

Her uygulama türü ve platform için ayrıntılı yönergeler: https://aka.ms/msal-net-token-cache-serialization

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithCacheSynchronization(Boolean)

olarak ayarlandığında true, MSAL önbellek erişimini ConfidentialClientApplication düzeyde kilitler; örneğin, BeforeAccessAsync ile AfterAccessAsync geri çağırmaları arasındaki kod bloğu eşitlenir. Uygulamalar, önbellek tutarlılığı maliyetinde daha iyi performansa neden olabilecek iyimser bir önbellek kilitleme stratejisini etkinleştirmek için bu bayrağı false olarak ayarlayabilir. Bu bayrağın olarak false ayarlanması yalnızca istek başına yeni ConfidentialClientApplication bir uygulama oluşturan uygulamalar için önerilir.

WithCertificate(X509Certificate2, Boolean)

Uygulamayla ilişkili sertifikayı ayarlar. Yalnızca birinci taraf uygulamalar için geçerli olan bu yöntem, x5c talebin Azure AD'ye gönderilip gönderilmeyeceğini belirtmeye de olanak tanır. x5c'nin gönderilmesi, uygulama geliştiricilerin Azure AD'de kolay sertifika dağıtımı gerçekleştirmesine olanak tanır: Bu yöntem sertifika zincirini belirteç isteğiyle birlikte Azure AD'ye gönderir, böylece Azure AD bunu kullanarak güvenilen bir veren ilkesine göre konu adını doğrulayabilir. Bu, uygulama yöneticisini sertifika geçişini açıkça yönetme gereksiniminden kurtarır (portal veya PowerShell/CLI işlemi aracılığıyla). Ayrıntılar için bkz. https://aka.ms/msal-net-sni

WithCertificate(X509Certificate2, CertificateOptions)

Uygulamayla ilişkili sertifikayı ayarlar. Yalnızca birinci taraf uygulamalar için geçerli olan bu yöntem, x5c talebin Azure AD'ye gönderilip gönderilmeyeceğini belirtmeye de olanak tanır. x5c'nin gönderilmesi, uygulama geliştiricilerin Azure AD'de kolay sertifika dağıtımı gerçekleştirmesine olanak tanır: Bu yöntem sertifika zincirini belirteç isteğiyle birlikte Azure AD'ye gönderir, böylece Azure AD bunu kullanarak güvenilen bir veren ilkesine göre konu adını doğrulayabilir. Bu, uygulama yöneticisini sertifika geçişini açıkça yönetme gereksiniminden kurtarır (portal veya PowerShell/CLI işlemi aracılığıyla). Ayrıntılar için bkz. https://aka.ms/msal-net-sni

WithCertificate(X509Certificate2)

Uygulamayla ilişkili sertifikayı ayarlar.

WithClientAssertion(Func<AssertionRequestOptions,CancellationToken,Task<ClientSignedAssertion>>)

İstemci uygulamasını kimlik doğrulaması için bir istemci onayını kullanacak şekilde yapılandırılır.

WithClientAssertion(Func<AssertionRequestOptions,Task<String>>)

İstemci onaylaması oluşturan zaman uyumsuz bir temsilci yapılandırılır. Temsilci yalnızca önbellekten belirteç alınamadığında çağrılır. Bkz. https://aka.ms/msal-net-client-assertion

WithClientAssertion(Func<CancellationToken,Task<String>>)

İstemci onaylaması oluşturan zaman uyumsuz bir temsilci yapılandırılır. Bkz. https://aka.ms/msal-net-client-assertion

WithClientAssertion(Func<String>)

İstemci onaylaması oluşturan bir temsilci yapılandırılır. Bkz. https://aka.ms/msal-net-client-assertion

WithClientAssertion(String)
Geçersiz.

Uygulama istemcisi onayını ayarlar. Bkz. https://aka.ms/msal-net-client-assertion. Bu, istemcinin süresi boyunca istemci uygulamasının belleğinde tutulacak bir onay oluşturur. Her kimlik doğrulama isteği için yürütülecek bir temsilci ayarlamak için kullanabilirsiniz WithClientAssertion(Func<String>) . Bu, onay süresi dolduğunda istemci uygulaması tarafından kullanılan istemci onayını güncelleştirmenize olanak sağlar.

WithClientCapabilities(IEnumerable<String>)

Microsoft Kimlikle ilgili OIDC uzantısı, kaynak sorunlarının etkileşim olmadan çözülmesini sağlar. "llt" gibi bir veya daha fazla istemci özelliği yapılandırmaya izin verir

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithClientClaims(X509Certificate2, IDictionary<String,String>, Boolean, Boolean)
Geçersiz.

Uygulamayla ilişkili sertifikayı, imzalayacak belirli taleplerle birlikte ayarlar. Varsayılan olarak, kimlik doğrulaması için gereken varsayılan talep kümesiyle birleştirilir claimsToSign . false olarak ayarlanırsa mergeWithDefaultClaims , gerekli varsayılan talepleri sağlamanız gerekir. Bkz. https://aka.ms/msal-net-client-assertion

WithClientClaims(X509Certificate2, IDictionary<String,String>, Boolean)
Geçersiz.

Uygulamayla ilişkili sertifikayı, imzalayacak belirli taleplerle birlikte ayarlar. Varsayılan olarak, kimlik doğrulaması için gereken varsayılan talep kümesiyle birleştirilir claimsToSign . false olarak ayarlanırsa mergeWithDefaultClaims , gerekli varsayılan talepleri sağlamanız gerekir. Bkz. https://aka.ms/msal-net-client-assertion

WithClientId(String)

Uygulamanın İstemci Kimliğini ayarlar

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithClientName(String)

Telemetri amacıyla çağıran SDK API'sinin adını ayarlar.

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithClientSecret(String)

Uygulama gizli dizisini ayarlar

WithClientVersion(String)

Telemetri amacıyla çağrı SDK'sının sürümünü ayarlar.

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithDebugLoggingCallback(LogLevel, Boolean, Boolean)

Hata ayıklama günlüğü geri çağırmasını, iletinin düzeyini ve iletinin kendisini görüntüleyen varsayılan bir hata ayıklama yöntemine ayarlar. Ayrıntılar için bkz. https://aka.ms/msal-net-logging

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithExperimentalFeatures(Boolean)

Deneysel özelliklerin ve API'lerin kullanımına izin verir. Bu bayrak ayarlanmazsa, deneysel özellikler bir özel durum oluşturur. Ayrıntılar için bkz. https://aka.ms/msal-net-experimental-features

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithExtraQueryParameters(IDictionary<String,String>)
Geçersiz.

HTTP kimlik doğrulama isteğindeki sorgu dizesi için Ek Sorgu Parametreleri ayarlar

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithExtraQueryParameters(IDictionary<String,ValueTuple<String,Boolean>>)

HTTP kimlik doğrulama isteğindeki sorgu dizesi için Ek Sorgu Parametreleri'ni ayarlar ve önbellek anahtarına hangi parametrelerin dahil olduğunu denetler

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithExtraQueryParameters(String)
Geçersiz.

HTTP kimlik doğrulama isteğindeki sorgu dizesi için Ek Sorgu Parametreleri ayarlar

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithGenericAuthority(String)
Geçersiz.

Bunun yerine ara WithOidcAuthority(String) .

WithHttpClientFactory(IMsalHttpClientFactory, Boolean)

IdP ile iletişim kurmak için belirli IMsalHttpClientFactory bir kullanır. Bu, ara sunucu ayarlama veya Aracıyı ayarlama gibi gelişmiş senaryoları etkinleştirir.

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithHttpClientFactory(IMsalHttpClientFactory)

IdP ile iletişim kurmak için belirli IMsalHttpClientFactory bir kullanır. Bu, ara sunucu ayarlama veya Aracıyı ayarlama gibi gelişmiş senaryoları etkinleştirir.

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(String)
Geçersiz.

Geliştiricilerin kendi geçerli yetkililerini yapılandırmasına izin verir. benzeri https://aka.ms/aad-instance-discovery bir json dizesi sağlanmalıdır. MSAL bu bilgileri aşağıdakiler için kullanır:

  • preferred_network belirtilen ortamda REST API'lerini çağırma
  • Önbellekte belirteçlerin ve hesapların kaydedildiği ortamı belirleme
  • Diğer yetkililere verilen belirteçleri eşleştirmek için ortam diğer adlarını kullanın
Daha fazla ayrıntı için bkz. https://aka.ms/msal-net-custom-instance-metadata (Devralındığı yer: AbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(Uri)
Geçersiz.

Bir kuruluşun, mikro hizmet/hizmet ortamları için daha iyi önbelleğe almayı sağlayan örnek bulmayı işlemek için kendi hizmetini ayarlamasına olanak tanır. Şuna benzer https://aka.ms/aad-instance-discovery bir yanıt döndüren bir Uri sağlanmalıdır. MSAL bu bilgileri aşağıdakiler için kullanır:

  • preferred_network belirtilen ortamda REST API'lerini çağırma
  • Önbellekte belirteçlerin ve hesapların kaydedildiği ortamı belirleme
  • Diğer yetkililere verilen belirteçleri eşleştirmek için ortam diğer adlarını kullanın
Daha fazla ayrıntı için bkz. https://aka.ms/msal-net-custom-instance-metadata (Devralındığı yer: AbstractApplicationBuilder<T>)
WithInstanceDiscovery(Boolean)

Kimlik doğrulaması yapılırken örnek bulma işleminin gerçekleştirilip gerçekleştirilmeyeceğini belirler. Bunu false olarak ayarlamak, örnek bulma ve yetkili doğrulamasını tamamen devre dışı bırakır. Ancak bu, bölgesel uç noktalarla yapılandırılan uygulamanın davranışını etkilemez.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(String)

Geliştiricilerin kendi geçerli yetkililerini yapılandırmasına izin verir. benzeri https://aka.ms/aad-instance-discovery bir json dizesi sağlanmalıdır. MSAL bu bilgileri aşağıdakiler için kullanır:

  • preferred_network belirtilen ortamda REST API'lerini çağırma
  • Önbellekte belirteçlerin ve hesapların kaydedildiği ortamı belirleme
  • Diğer yetkililere verilen belirteçleri eşleştirmek için ortam diğer adlarını kullanın
Daha fazla ayrıntı için bkz. https://aka.ms/msal-net-custom-instance-metadata (Devralındığı yer: AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(Uri)

Bir kuruluşun, mikro hizmet/hizmet ortamları için daha iyi önbelleğe almayı sağlayan örnek bulmayı işlemek için kendi hizmetini ayarlamasına olanak tanır. Şuna benzer https://aka.ms/aad-instance-discovery bir yanıt döndüren bir Uri sağlanmalıdır. MSAL bu bilgileri aşağıdakiler için kullanır:

  • preferred_network belirtilen ortamda REST API'lerini çağırma
  • Önbellekte belirteçlerin ve hesapların kaydedildiği ortamı belirleme
  • Diğer yetkililere verilen belirteçleri eşleştirmek için ortam diğer adlarını kullanın
Daha fazla ayrıntı için bkz. https://aka.ms/msal-net-custom-instance-metadata (Devralındığı yer: AbstractApplicationBuilder<T>)
WithLegacyCacheCompatibility(Boolean)

Eski ADAL önbelleği serileştirmesini ve seri durumdan çıkarmayı etkinleştirir.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithLogging(IIdentityLogger, Boolean)

Kimlik Günlükçüsüsü'ne ayarlar. Ayrıntılar için bkz. https://aka.ms/msal-net-logging

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithLogging(LogCallback, Nullable<LogLevel>, Nullable<Boolean>, Nullable<Boolean>)

Günlük geri çağırmasını ayarlar. Ayrıntılar için bkz. https://aka.ms/msal-net-logging

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithOidcAuthority(String)

Genel bir OpenIdConnect Kimlik Sağlayıcısına karşılık gelen bilinen bir yetkili ekler. MSAL, yetkiliye ".well-known/openid-configuration" ekler ve uç noktaları bulmak için OIDC meta verilerini oradan alır. Bkz. https://openid.net/specs/openid-connect-core-1_0.html#Terminology

WithOptions(ApplicationOptions)

Örneğin yapılandırma dosyalarından okunmuş olabilecek uygulama seçeneklerini ayarlar. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithOptions(BaseApplicationOptions)

Örneğin yapılandırma dosyalarından okunmuş olabilecek uygulama seçeneklerini ayarlar. Bkz. https://aka.ms/msal-net-application-configuration.

(Devralındığı yer: BaseAbstractApplicationBuilder<T>)
WithRedirectUri(String)

Uygulamanın yeniden yönlendirme URI'sini ayarlar. URI'nin uygulama portalına da kaydedilmesi gerekir. Bkz. https://aka.ms/msal-net-application-configuration

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithTelemetry(ITelemetryConfig)
Geçersiz.

Telemetri toplama olayları oluşturun.

(Devralındığı yer: AbstractApplicationBuilder<T>)
WithTelemetryClient(ITelemetryClient[])
Geçersiz.

Bu yöntem kullanımdan kaldırıldı. Bkz. https://aka.ms/msal-net-telemetry

WithTenantId(String)

Uygulamanın kullanıcıların oturum açmasına izin verecek kuruluşun kiracı kimliğini ayarlar. Bu klasik olarak bir GUID veya etki alanı adıdır. Bkz. https://aka.ms/msal-net-application-configuration. , ve olarak ayarlamak tenantIdcommonda mümkün olsa da, geçersiz kılmalarından organizationsbirinin kullanılması önerilir.consumersWithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

(Devralındığı yer: AbstractApplicationBuilder<T>)

Uzantı Metotları

Name Description
OnCompletion(ConfidentialClientApplicationBuilder, Func<AssertionRequestOptions,ExecutionResult,Task>)

Belirteç alma isteği tamamlandığında çağrılan zaman uyumsuz bir geri çağırma yapılandırılır. Bu geri çağırma, tüm yeniden deneme girişimleri tükendikten sonra çağrı başına AcquireTokenForClient bir kez çağrılır. Ortak durum için adlandırılmış OnCompletion olsa da, bu geri çağırma hem başarılı hem de başarısız alımlar için tetikler. Bu, telemetri, günlük kaydı ve özel sonuç işleme gibi senaryoları etkinleştirir.

OnMsalServiceFailure(ConfidentialClientApplicationBuilder, Func<AssertionRequestOptions,ExecutionResult,Task<Boolean>>)

MSAL, kimlik sağlayıcısından (Güvenlik Belirteci Hizmeti) bir hata yanıtı aldığında çağrılan zaman uyumsuz bir geri çağırma yapılandırılır. Geri çağırma, MSAL'nin belirteç isteğini yeniden denemesi mi yoksa özel durumu yayması mı gerektiğini belirler. Bu geri çağırma her hizmet hatasından sonra çağrılır ve döndürülene false veya istek başarılı olana kadar birden çok kez çağrılabilir.

WithAppTokenProvider(ConfidentialClientApplicationBuilder, Func<AppTokenProviderParameters,Task<AppTokenProviderResult>>)

Geçirilen parametrelere göre erişim belirteci döndüren bir geri çağırma ayarlamaya izin verir. MSAL, kimlik doğrulama parametrelerini geri çağırmaya geçirir ve geri çağırmanın bir AppTokenProviderResult oluşturup MSAL'ye döndürmesi beklenir. MSAL, belirteç yanıtını diğer kimlik doğrulama sonuçlarında olduğu gibi önbelleğe alır.

WithCertificate(ConfidentialClientApplicationBuilder, Func<AssertionRequestOptions,Task<X509Certificate2>>, CertificateOptions)

İstemci kimlik bilgisi sertifikasını dinamik olarak sağlamak için zaman uyumsuz bir geri çağırma yapılandırılır. Kimlik sağlayıcısına yapılan her belirteç alma isteğinden (yeniden denemeler dahil) önce geri çağırma çağrılır. Bu, uygulama bağlamı temelinde sertifika döndürme ve dinamik sertifika seçimi gibi senaryoları etkinleştirir.

WithCertificate(ConfidentialClientApplicationBuilder, X509Certificate2, Boolean, Boolean)

Uygulamayla ilişkili sertifikayı ayarlar. Yalnızca birinci taraf uygulamalar için geçerli olan bu yöntem, x5c talebin Azure AD'ye gönderilip gönderilmeyeceğini belirtmeye de olanak tanır. x5c'nin gönderilmesi, uygulama geliştiricilerin Azure AD'de kolay sertifika dağıtımı gerçekleştirmesine olanak tanır: Bu yöntem sertifika zincirini belirteç isteğiyle birlikte Azure AD'ye gönderir, böylece Azure AD bunu kullanarak güvenilen bir veren ilkesine göre konu adını doğrulayabilir. Bu, uygulama yöneticisini sertifika geçişini açıkça yönetme gereksiniminden kurtarır (portal veya PowerShell/CLI işlemi aracılığıyla). Ayrıntılar için bkzhttps://aka.ms/msal-net-sni. Bu API, Azure AD'den alınan belirteçleri sertifika seri numarasıyla ilişkilendirmenize olanak sağlar. Bu, önbelleği sertifikaya göre bölümlendirmek için kullanılabilir. Bir sertifikayla alınan belirteçlere farklı bir seri numarasına sahip başka bir sertifika erişilemez.

Şunlara uygulanır