PublicClientApplicationBuilder Klasse

Definition

public sealed class PublicClientApplicationBuilder : Microsoft.Identity.Client.AbstractApplicationBuilder<Microsoft.Identity.Client.PublicClientApplicationBuilder>
type PublicClientApplicationBuilder = class
    inherit AbstractApplicationBuilder<PublicClientApplicationBuilder>
Public NotInheritable Class PublicClientApplicationBuilder
Inherits AbstractApplicationBuilder(Of PublicClientApplicationBuilder)
Vererbung

Methoden

Name Beschreibung
Build()

Erstellt eine Instanz von IPublicClientApplication den parametern, die in der PublicClientApplicationBuilder.

Create(String)

Erstellt einen PublicClientApplicationBuilder aus einer ClientID. Siehe https://aka.ms/msal-net-application-configuration.

CreateWithApplicationOptions(PublicClientApplicationOptions)

Erstellt einen PublicClientApplicationBuilder aus konfigurationsoptionen für öffentliche Clientanwendungen. Siehe https://aka.ms/msal-net-application-configuration.

IsBrokerAvailable()

Gibt zurück true , wenn ein Broker verwendet werden kann. Diese Methode muss nur in mobilen Szenarien verwendet werden, die die Verwaltung mobiler Anwendungen unterstützen. Verwenden Sie WithBroker in anderen unterstützten Szenarien selbst, was auf die Verwendung eines Browsers zurückfällt, wenn der Broker nicht verfügbar ist.

WithAdfsAuthority(String, Boolean)

Fügt eine bekannte Autorität hinzu, die einem ADFS-Server entspricht. Siehe https://aka.ms/msal-net-adfs.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(AadAuthorityAudience, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Anmeldebenutzer anzugeben, die die Anmeldegruppe angeben (die Cloud ist die Azure öffentliche Cloud). Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Anmeldebenutzern die Cloudinstanz und die Anmeldegruppe anzugeben. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, Guid, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Benutzer aus einer einzelnen Organisation (Einzelmandantenanwendung) anzumelden, die von ihrer Cloudinstanz und ihrer Mandanten-ID beschrieben wird. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, String, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Benutzer aus einer einzigen Organisation (Einzelmandantenanwendung) anzumelden, die von der Cloudinstanz und dem Domänennamen oder der Mandanten-ID beschrieben wird. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(String, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Sich-Benutzer anzumelden, die den vollständigen Autoritäts-URI angeben. Siehe Anwendungskonfigurationsoptionen.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(String, Guid, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Benutzer aus einer einzigen Organisation (Einzelmandantenanwendung) anzumelden, die durch ihre Mandanten-ID angegeben wird. Siehe Anwendungskonfigurationsoptionen.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(String, String, Boolean)

Fügt der Anwendung eine bekannte Azure AD-Autorität hinzu, um Benutzer aus einer einzigen Organisation (Einzelmandantenanwendung) anzumelden, die durch ihren Domänennamen beschrieben wird. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithAuthority(Uri, Boolean)

Fügt der Anwendung eine bekannte Autorität hinzu. Siehe Anwendungskonfigurationsoptionen. Dieser Konstruktor wird hauptsächlich für Szenarien verwendet, in denen die Autorität keine Standard-Azure AD-Autorität oder eine ADFS-Autorität oder eine Azure AD B2C-Autorität ist. Für Azure AD, auch in souveränen Clouds, bevorzugen Sie die Verwendung anderer Außerkraftsetzungen wie z. B.WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

(Geerbt von AbstractApplicationBuilder<T>)
WithB2CAuthority(String)

Fügt eine bekannte Autorität hinzu, die einer Azure AD B2C-Richtlinie entspricht. Siehe https://aka.ms/msal-net-b2c-specificities.

(Geerbt von AbstractApplicationBuilder<T>)
WithBroker(Boolean)
WithCacheOptions(CacheOptions)

Optionen für MSAL-Tokencaches.

MSAL verwaltet einen Tokencache intern im Arbeitsspeicher. Standardmäßig ist dieses Cacheobjekt Teil jeder Instanz von PublicClientApplication oder ConfidentialClientApplication. Diese Methode ermöglicht die Anpassung des Speichertokencaches von MSAL.

Der Speichercache von MSAL unterscheidet sich von der Tokencache-Serialisierung. Die Cache-Serialisierung ruft die Token aus einem Cache ab (z. B. Redis, Cosmos oder eine Datei auf einem Datenträger), wo sie im JSON-Format gespeichert sind, in den internen Speichercache von MSAL. Speichercachevorgänge umfassen keine JSON-Vorgänge.

Die Serialisierung des externen Caches bleibt die empfohlene Methode zum Behandeln von Desktop-Apps, Websites und Web-APIs, da sie Persistenz bietet. Diese Optionen steuern derzeit keine serialisierung des externen Caches.

Detaillierte Anleitungen für jeden Anwendungstyp und jede Plattform: https://aka.ms/msal-net-token-cache-serialization

(Geerbt von AbstractApplicationBuilder<T>)
WithClientCapabilities(IEnumerable<String>)

Microsoft Identitätsspezifische OIDC-Erweiterung, mit der Ressourcenprobleme ohne Interaktion gelöst werden können. Ermöglicht die Konfiguration einer oder mehrerer Clientfunktionen, z. B. "llt"

(Geerbt von AbstractApplicationBuilder<T>)
WithClientId(String)

Legt die Client-ID der Anwendung fest.

(Geerbt von AbstractApplicationBuilder<T>)
WithClientName(String)

Legt den Namen der aufrufenden SDK-API für Telemetriezwecke fest.

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithClientVersion(String)

Legt die Version des aufrufenden SDK für Telemetriezwecke fest.

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithDebugLoggingCallback(LogLevel, Boolean, Boolean)

Legt den Debugprotokollierungsrückruf auf eine Standarddebugmethode fest, die die Ebene der Nachricht und die Nachricht selbst anzeigt. Weitere Informationen finden Sie unter https://aka.ms/msal-net-logging

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithDefaultRedirectUri()

Konfiguriert die öffentliche Clientanwendung für die Verwendung des empfohlenen Antwort-URI für die Plattform. Siehe https://aka.ms/msal-net-default-reply-uri.

Platform
.NET Desktop
Für Systembrowser auf .NET Core
HINWEIS:Es wird in Zukunft ein Update für den Standardumleitungs-URI geben, um systembrowsern auf den .NET Desktop- und .NET Core-Plattformen Rechnung zu tragen.
WithExperimentalFeatures(Boolean)

Ermöglicht die Verwendung experimenteller Features und APIs. Wenn dieses Kennzeichen nicht festgelegt ist, löst experimentelle Features eine Ausnahme aus. Weitere Informationen finden Sie unter https://aka.ms/msal-net-experimental-features

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithExtraQueryParameters(IDictionary<String,String>)
Veraltet.

Legt zusätzliche Abfrageparameter für die Abfragezeichenfolge in der HTTP-Authentifizierungsanforderung fest

(Geerbt von AbstractApplicationBuilder<T>)
WithExtraQueryParameters(IDictionary<String,ValueTuple<String,Boolean>>)

Legt zusätzliche Abfrageparameter für die Abfragezeichenfolge in der HTTP-Authentifizierungsanforderung fest, mit der Kontrolle, welche Parameter im Cacheschlüssel enthalten sind

(Geerbt von AbstractApplicationBuilder<T>)
WithExtraQueryParameters(String)
Veraltet.

Legt zusätzliche Abfrageparameter für die Abfragezeichenfolge in der HTTP-Authentifizierungsanforderung fest

(Geerbt von AbstractApplicationBuilder<T>)
WithHttpClientFactory(IMsalHttpClientFactory, Boolean)

Verwendet eine spezifische IMsalHttpClientFactory Für die Kommunikation mit dem IdP. Dies ermöglicht erweiterte Szenarien wie das Festlegen eines Proxys oder das Festlegen des Agents.

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithHttpClientFactory(IMsalHttpClientFactory)

Verwendet eine spezifische IMsalHttpClientFactory Für die Kommunikation mit dem IdP. Dies ermöglicht erweiterte Szenarien wie das Festlegen eines Proxys oder das Festlegen des Agents.

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(String)
Veraltet.

Ermöglicht Entwicklern, ihre eigenen gültigen Behörden zu konfigurieren. Eine json-Zeichenfolge, die ähnlich ist, https://aka.ms/aad-instance-discovery sollte bereitgestellt werden. MSAL verwendet diese Informationen für:

  • Aufrufen von REST-APIs für die in der preferred_network angegebene Umgebung
  • Identifizieren einer Umgebung, unter der Token und Konten im Cache gespeichert werden sollen
  • Verwenden der Umgebungsaliasen zum Abgleichen von Token, die an andere Behörden ausgestellt wurden
Weitere Informationen finden Sie unter https://aka.ms/msal-net-custom-instance-metadata (Geerbt von AbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(Uri)
Veraltet.

Ermöglicht einer Organisation das Einrichten eines eigenen Diensts zur Behandlung der Instanzermittlung, was eine bessere Zwischenspeicherung für Microservice-/Dienstumgebungen ermöglicht. Ein URI, der eine Antwort zurückgibt, die ähnlich ist, https://aka.ms/aad-instance-discovery sollte bereitgestellt werden. MSAL verwendet diese Informationen für:

  • Aufrufen von REST-APIs für die in der preferred_network angegebene Umgebung
  • Identifizieren einer Umgebung, unter der Token und Konten im Cache gespeichert werden sollen
  • Verwenden der Umgebungsaliasen zum Abgleichen von Token, die an andere Behörden ausgestellt wurden
Weitere Informationen finden Sie unter https://aka.ms/msal-net-custom-instance-metadata (Geerbt von AbstractApplicationBuilder<T>)
WithInstanceDiscovery(Boolean)

Bestimmt, ob die Instanzermittlung beim Versuch, sich zu authentifizieren, ausgeführt wird. Wenn Sie diesen Wert auf "false" festlegen, wird die Instanzermittlung und die Autoritätsüberprüfung vollständig deaktiviert. Dies wirkt sich jedoch nicht auf das Verhalten der Anwendung aus, die mit regionalen Endpunkten konfiguriert ist.

(Geerbt von AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(String)

Ermöglicht Entwicklern, ihre eigenen gültigen Behörden zu konfigurieren. Eine json-Zeichenfolge, die ähnlich ist, https://aka.ms/aad-instance-discovery sollte bereitgestellt werden. MSAL verwendet diese Informationen für:

  • Aufrufen von REST-APIs für die in der preferred_network angegebene Umgebung
  • Identifizieren einer Umgebung, unter der Token und Konten im Cache gespeichert werden sollen
  • Verwenden der Umgebungsaliasen zum Abgleichen von Token, die an andere Behörden ausgestellt wurden
Weitere Informationen finden Sie unter https://aka.ms/msal-net-custom-instance-metadata (Geerbt von AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(Uri)

Ermöglicht einer Organisation das Einrichten eines eigenen Diensts zur Behandlung der Instanzermittlung, was eine bessere Zwischenspeicherung für Microservice-/Dienstumgebungen ermöglicht. Ein URI, der eine Antwort zurückgibt, die ähnlich ist, https://aka.ms/aad-instance-discovery sollte bereitgestellt werden. MSAL verwendet diese Informationen für:

  • Aufrufen von REST-APIs für die in der preferred_network angegebene Umgebung
  • Identifizieren einer Umgebung, unter der Token und Konten im Cache gespeichert werden sollen
  • Verwenden der Umgebungsaliasen zum Abgleichen von Token, die an andere Behörden ausgestellt wurden
Weitere Informationen finden Sie unter https://aka.ms/msal-net-custom-instance-metadata (Geerbt von AbstractApplicationBuilder<T>)
WithIosKeychainSecurityGroup(String)

Sie können eine Zugriffsgruppe für den Schlüsselbund angeben, die zum Speichern des Tokencaches in mehreren Anwendungen verwendet werden soll. Auf diese Weise können Sie den Tokencache zwischen mehreren Anwendungen freigeben, die dieselbe Schlüsselbundzugriffsgruppe haben. Das Freigeben des Tokencaches ermöglicht einmaliges Anmelden zwischen allen Anwendungen, die dieselbe Schlüsselbundzugriffsgruppe verwenden. Weitere Informationen finden Sie unter https://aka.ms/msal-net-ios-keychain-security-group.

WithKerberosTicketClaim(String, KerberosTicketContainer)
Veraltet.

Legt die parameter fest, die erforderlich sind, um ein Kerberos-Ticket von Azure AD-Dienst abzurufen.

WithLegacyCacheCompatibility(Boolean)

Aktiviert die ADAL-Cache-Serialisierung und Deserialisierung.

(Geerbt von AbstractApplicationBuilder<T>)
WithLogging(IIdentityLogger, Boolean)

Legt den Identitätsprotokollierer fest. Weitere Informationen finden Sie unter https://aka.ms/msal-net-logging

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithLogging(LogCallback, Nullable<LogLevel>, Nullable<Boolean>, Nullable<Boolean>)

Legt den Protokollierungsrückruf fest. Weitere Informationen finden Sie unter https://aka.ms/msal-net-logging

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithMultiCloudSupport(Boolean)

Ermöglicht die Unterstützung mehrerer Clouds für diese Instanz der öffentlichen Clientanwendung. Es ermöglicht Anwendungen die Verwendung in einer globalen öffentlichen Cloud-Autorität für die Bibliothek und kann weiterhin Token für Ressourcen aus souveränen Clouds abrufen.

WithOidcAuthority(String)

Fügt eine bekannte Autorität hinzu, die einem generischen OpenIdConnect Identity Provider entspricht. MSAL fügt ".well-known/openid-configuration" an die Autorität an und ruft die OIDC-Metadaten von dort ab, um die Endpunkte zu ermitteln. Siehe https://openid.net/specs/openid-connect-core-1_0.html#Terminology.

WithOptions(ApplicationOptions)

Legt Anwendungsoptionen fest, die z. B. aus Konfigurationsdateien gelesen wurden. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithOptions(BaseApplicationOptions)

Legt Anwendungsoptionen fest, die z. B. aus Konfigurationsdateien gelesen wurden. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von BaseAbstractApplicationBuilder<T>)
WithParentActivityOrWindow(Func<IntPtr>)

Legt einen Verweis auf den IntPtr auf ein Fenster fest, in dem der Browser angezeigt wird. Wird verwendet, um den Browser zu zentrieren, der auf diesem Fenster angezeigt wird.

WithParentActivityOrWindow(Func<Object>)

Legt einen Verweis auf den ViewController (bei Verwendung von iOS), Activity (bei Verwendung von Android) IWin32Window oder IntPtr (bei Verwendung von .Net Framework) fest. Wird zum Aufrufen des Browsers verwendet.

WithRedirectUri(String)

Legt den Umleitungs-URI der Anwendung fest. Der URI muss auch im Anwendungsportal registriert werden. Siehe https://aka.ms/msal-net-application-configuration.

(Geerbt von AbstractApplicationBuilder<T>)
WithTelemetry(ITelemetryConfig)
Veraltet.

Generieren sie Telemetrieaggregationsereignisse.

(Geerbt von AbstractApplicationBuilder<T>)
WithTenantId(String)

Legt die Mandanten-ID der Organisation fest, aus der die Anwendung benutzern die Anmeldung ermöglicht. Dies ist klassisch eine GUID oder ein Domänenname. Siehe https://aka.ms/msal-net-application-configuration. Obwohl es auch möglich tenantId ist, auf common, organizations, und consumers, es wird empfohlen, eine der Außerkraftsetzungen von WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean).

(Geerbt von AbstractApplicationBuilder<T>)
WithWindowsBrokerOptions(WindowsBrokerOptions)
Veraltet.

Ermöglicht die Anpassung der Windows 10 Broker-Erfahrung.

Erweiterungsmethoden

Name Beschreibung
WithBroker(PublicClientApplicationBuilder, BrokerOptions)

Broker aktivieren einmaliges Anmelden, Geräteidentifikation und Anwendungsidentifikationsüberprüfung und erhöhen gleichzeitig die Sicherheit von Anwendungen. Verwenden Sie diese API, um Broker auf Desktopplattformen zu aktivieren.

Weitere https://aka.ms/msal-net-wam Informationen zu plattformspezifischen Einstellungen, die erforderlich sind, um den Broker wie Umleitungs-URIs zu aktivieren.

WithBroker(PublicClientApplicationBuilder, BrokerOptions)

Broker aktivieren einmaliges Anmelden, Geräteidentifikation und erhöhte Sicherheit. Verwenden Sie diese API, um Broker auf Desktopplattformen zu aktivieren.

Weitere https://aka.ms/msal-net-wam Informationen zu plattformspezifischen Einstellungen, die erforderlich sind, um den Broker wie Umleitungs-URIs zu aktivieren.

WithBrokerPreview(PublicClientApplicationBuilder, Boolean)
Veraltet.

Ermöglicht MSAL die Verwendung von Broker-Flüssen, die sicherer als Browser sind. Ausführliche Informationen zu Windows Broker finden Sie unterhttps://aka.ms/msal-net-wam

WithDesktopFeatures(PublicClientApplicationBuilder)
Veraltet.

Bietet erweiterte Unterstützung für Desktopanwendungen, z. B. CLI, WinForms, WPF-Apps.

Der hinzugefügte Support ist rund um:

WithSsoPolicy(PublicClientApplicationBuilder)

Verwenden Sie diese API, um die SsoPolicy-Erzwingung zu aktivieren. Sollte nur von Microsoft 1. Party-Anwendungen genutzt werden. Dies gilt nur, wenn der Broker nicht aktiviert ist und eingebettetes Webview die bevorzugte Wahl ist. Standardmäßig unterstützt der Broker SsoPolicy, und systemwebview SsoPolicy wird auch auf Betriebssystemebene unterstützt.

WithWindowsBroker(PublicClientApplicationBuilder, Boolean)
Veraltet.

Ermöglicht Windows Brokerflüsse auf älteren Plattformen, z. B. .NET Framework, wo diese in der Box mit Microsoft nicht verfügbar sind. Identity.Client Ausführliche Informationen zu Windows Broker finden Sie unterhttps://aka.ms/msal-net-wam

WithWindowsDesktopFeatures(PublicClientApplicationBuilder, BrokerOptions)

Bietet erweiterte Unterstützung für Desktopanwendungen, z. B. CLI, WinForms, WPF-Apps.

  • Windows Authentication Manager (WAM)-Broker, der empfohlene Authentifizierungsmechanismus auf Windows 10+ -https://aka.ms/msal-net-wam
  • Eingebettete Webansicht. AAD-Anwendungen verwenden das ältere WebBrowser-Steuerelement. Andere Anwendungen (B2C, ADFS usw.) verwenden WebView2, einen eingebetteten Browser basierend auf Microsoft Edge -https://aka.ms/msal-net-webview2
WithWindowsEmbeddedBrowserSupport(PublicClientApplicationBuilder)

Fügt msAL eine bessere eingebettete Browserunterstützung hinzu. AAD-Anwendungen verwenden das ältere WebBrowser-Steuerelement. Andere Anwendungen (B2C, ADFS usw.) verwenden einen eingebetteten Browser basierend auf Microsoft Edge -https://aka.ms/msal-net-webview2

Gilt für: