PublicClientApplicationBuilder Classe

Definição

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)
Herança

Métodos

Name Descrição
Build()

Constrói uma instância de IPublicClientApplication a partir dos parâmetros definidos no PublicClientApplicationBuilder.

Create(String)

Cria um PublicClientApplicationBuilder a partir de um clientID. Veja https://aka.ms/msal-net-application-configuration

CreateWithApplicationOptions(PublicClientApplicationOptions)

Cria um PublicClientApplicationBuilder a partir das opções de configuração da aplicação cliente pública. Veja https://aka.ms/msal-net-application-configuration

IsBrokerAvailable()

Retornos true se for possível usar um corretor. Este método é necessário apenas para ser usado em cenários móveis que suportem a Gestão de Aplicações Móveis. Noutros cenários suportados, use WithBroker isoladamente, que recuará para usar um navegador se o intermediário não estiver disponível.

WithAdfsAuthority(String, Boolean)

Adiciona uma Autoridade conhecida correspondente a um servidor ADFS. Veja https://aka.ms/msal-net-adfs

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(AadAuthorityAudience, Boolean)

Adiciona uma autoridade conhecida do Azure AD à aplicação para os utilizadores que iniciam sessão, especificando o público de início de sessão (a cloud sendo a cloud pública do Azure). Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

Adiciona uma autoridade conhecida do Azure AD à aplicação para os utilizadores de iniciar sessão, especificando a instância cloud e o público de iniciação de sessão. Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, Guid, Boolean)

Adiciona uma autoridade conhecida do Azure AD à aplicação para iniciar sessão com utilizadores de uma única organização (aplicação de inquilino único) descrita pela sua instância cloud e pelo seu ID de inquilino. Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(AzureCloudInstance, String, Boolean)

Adiciona uma autoridade Azure AD conhecida à aplicação para iniciar sessão com utilizadores de uma única organização (aplicação de inquilino único) descrita pela sua instância cloud e pelo seu nome de domínio ou ID de inquilino. Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(String, Boolean)

Adiciona uma autoridade conhecida do Azure AD à aplicação para os utilizadores que iniciam sessão, especificando o URI de autoridade completa. Ver opções de configuração da aplicação.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(String, Guid, Boolean)

Adiciona uma autoridade conhecida do Azure AD à aplicação para iniciar sessão com utilizadores a partir de uma única organização (aplicação de inquilin único) especificada pelo seu ID de inquilino. Ver opções de configuração da aplicação.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(String, String, Boolean)

Adiciona uma autoridade Azure AD conhecida à aplicação para iniciar sessão com utilizadores de uma única organização (aplicação de inquilino único) descrita pelo seu nome de domínio. Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de AbstractApplicationBuilder<T>)
WithAuthority(Uri, Boolean)

Adiciona uma autoridade conhecida à aplicação. Ver opções de configuração da aplicação. Este construtor é usado principalmente em cenários onde a autoridade não é uma autoridade padrão do Azure AD, nem uma autoridade ADFS, nem uma autoridade B2C do Azure AD. Para o Azure AD, mesmo em nuvens soberanas, prefira usar outros overrides comoWithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

(Herdado de AbstractApplicationBuilder<T>)
WithB2CAuthority(String)

Adiciona uma autoridade conhecida correspondente a uma política B2C do Azure AD. Veja https://aka.ms/msal-net-b2c-specificities

(Herdado de AbstractApplicationBuilder<T>)
WithBroker(Boolean)
WithCacheOptions(CacheOptions)

Opções para caches de tokens MSAL.

O MSAL mantém uma cache de tokens internamente na memória. Por defeito, este objeto cache faz parte de cada instância de PublicClientApplication ou ConfidentialClientApplication. Este método permite a personalização da cache de tokens em memória do MSAL.

A cache de memória da MSAL é diferente da serialização da cache de tokens. A serialização da cache retira os tokens de uma cache (por exemplo, Redis, Cosmos ou um ficheiro no disco), onde são armazenados em formato JSON, para a cache interna de memória da MSAL. As operações de cache de memória não envolvem operações JSON.

A serialização da cache externa continua a ser a forma recomendada de lidar com aplicações de ambiente de trabalho, sites web e APIs web, pois proporciona persistência. Estas opções não controlam atualmente a serialização da cache externa.

Orientação detalhada para cada tipo de aplicação e plataforma: https://aka.ms/msal-net-token-cache-serialization

(Herdado de AbstractApplicationBuilder<T>)
WithClientCapabilities(IEnumerable<String>)

Extensão OIDC específica do Microsoft Identity que permite resolver desafios de recursos sem interação. Permite a configuração de uma ou mais capacidades do cliente, por exemplo, "llt"

(Herdado de AbstractApplicationBuilder<T>)
WithClientId(String)

Define o ID do Cliente da aplicação

(Herdado de AbstractApplicationBuilder<T>)
WithClientName(String)

Define o nome da API do SDK chamador para fins de telemetria.

(Herdado de BaseAbstractApplicationBuilder<T>)
WithClientVersion(String)

Define a versão do SDK de chamada para fins de telemetria.

(Herdado de BaseAbstractApplicationBuilder<T>)
WithDebugLoggingCallback(LogLevel, Boolean, Boolean)

Define o callback de registo de depuração para um método de depuração predefinido que mostra o nível da mensagem e da própria mensagem. Para mais informações, consultar: https://aka.ms/msal-net-logging

(Herdado de BaseAbstractApplicationBuilder<T>)
WithDefaultRedirectUri()

Configura a aplicação cliente pública para usar o URI de resposta recomendado para a plataforma. Consulte https://aka.ms/msal-net-default-reply-uri.

Platform
.NET desktop
Para navegador de sistema no .NET Core
NOTA: Haverá uma atualização do URI de redirecionamento predefinido no futuro para acomodar navegadores de sistema nas plataformas desktop .NET e .NET Core.
WithExperimentalFeatures(Boolean)

Permite a utilização de funcionalidades experimentais e APIs. Se esta bandeira não estiver definida, as funcionalidades experimentais lançam uma exceção. Para mais informações, consultar: https://aka.ms/msal-net-experimental-features

(Herdado de BaseAbstractApplicationBuilder<T>)
WithExtraQueryParameters(IDictionary<String,String>)
Obsoleto.

Define parâmetros extra de consulta para a cadeia de consulta no pedido de autenticação HTTP

(Herdado de AbstractApplicationBuilder<T>)
WithExtraQueryParameters(IDictionary<String,ValueTuple<String,Boolean>>)

Define Parâmetros Extra de Consulta para a cadeia de consulta no pedido de autenticação HTTP com controlo sobre quais os parâmetros incluídos na chave de cache

(Herdado de AbstractApplicationBuilder<T>)
WithExtraQueryParameters(String)
Obsoleto.

Define parâmetros extra de consulta para a cadeia de consulta no pedido de autenticação HTTP

(Herdado de AbstractApplicationBuilder<T>)
WithHttpClientFactory(IMsalHttpClientFactory, Boolean)

Usa um específico IMsalHttpClientFactory para comunicar com o IDP. Isto permite cenários avançados, como definir um proxy ou definir o Agente.

(Herdado de BaseAbstractApplicationBuilder<T>)
WithHttpClientFactory(IMsalHttpClientFactory)

Usa um específico IMsalHttpClientFactory para comunicar com o IDP. Isto permite cenários avançados, como definir um proxy ou definir o Agente.

(Herdado de BaseAbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(String)
Obsoleto.

Permite aos programadores configurar as suas próprias autoridades válidas. Deve ser fornecida uma cadeia json semelhante a https://aka.ms/aad-instance-discovery . A MSAL utiliza esta informação para:

  • Chamadas APIs REST no ambiente especificado na preferred_network
  • Identifique um ambiente onde guardar tokens e contas na cache
  • Usar os pseudónimos ambientais para corresponder a tokens emitidos a outras autoridades
Para mais detalhes, veja https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(Uri)
Obsoleto.

Permite a uma organização configurar o seu próprio serviço para gerir a descoberta de instâncias, o que permite um melhor cache para ambientes de microserviços/serviços. Deve ser fornecido um Uri que devolva uma resposta semelhante à https://aka.ms/aad-instance-discovery . A MSAL utiliza esta informação para:

  • Chamadas APIs REST no ambiente especificado na preferred_network
  • Identifique um ambiente onde guardar tokens e contas na cache
  • Usar os pseudónimos ambientais para corresponder a tokens emitidos a outras autoridades
Para mais detalhes, veja https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithInstanceDiscovery(Boolean)

Determina se a descoberta de instâncias é realizada ao tentar autenticar. Definir isto como falso desativa completamente a descoberta de instâncias e a validação de autoridade. No entanto, isto não afetará o comportamento da aplicação configurada com endpoints regionais.

(Herdado de AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(String)

Permite aos programadores configurar as suas próprias autoridades válidas. Deve ser fornecida uma cadeia json semelhante a https://aka.ms/aad-instance-discovery . A MSAL utiliza esta informação para:

  • Chamadas APIs REST no ambiente especificado na preferred_network
  • Identifique um ambiente onde guardar tokens e contas na cache
  • Usar os pseudónimos ambientais para corresponder a tokens emitidos a outras autoridades
Para mais detalhes, veja https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(Uri)

Permite a uma organização configurar o seu próprio serviço para gerir a descoberta de instâncias, o que permite um melhor cache para ambientes de microserviços/serviços. Deve ser fornecido um Uri que devolva uma resposta semelhante à https://aka.ms/aad-instance-discovery . A MSAL utiliza esta informação para:

  • Chamadas APIs REST no ambiente especificado na preferred_network
  • Identifique um ambiente onde guardar tokens e contas na cache
  • Usar os pseudónimos ambientais para corresponder a tokens emitidos a outras autoridades
Para mais detalhes, veja https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithIosKeychainSecurityGroup(String)

Pode especificar um Grupo de Acesso ao Porta-Chaves para usar e persistir a cache do token em várias aplicações. Isto permite-lhe partilhar a cache de tokens entre várias aplicações que têm o mesmo grupo de acesso ao Keychain. Partilhar a cache de tokens permite o login único entre todas as aplicações que utilizam o mesmo Grupo de Acesso ao Chaveiro. Consulte https://aka.ms/msal-net-ios-keychain-security-group para obter mais informações.

WithKerberosTicketClaim(String, KerberosTicketContainer)
Obsoleto.

Define os parâmetros necessários para obter um Ticket Kerberos do serviço Azure AD.

WithLegacyCacheCompatibility(Boolean)

Permite a serialização e desserialização da cache ADAL legado.

(Herdado de AbstractApplicationBuilder<T>)
WithLogging(IIdentityLogger, Boolean)

Define o registo de identidade. Para mais informações, consultar: https://aka.ms/msal-net-logging

(Herdado de BaseAbstractApplicationBuilder<T>)
WithLogging(LogCallback, Nullable<LogLevel>, Nullable<Boolean>, Nullable<Boolean>)

Define o callback de registo. Para mais informações, consultar: https://aka.ms/msal-net-logging

(Herdado de BaseAbstractApplicationBuilder<T>)
WithMultiCloudSupport(Boolean)

Permite suporte multi-cloud para esta instância de aplicação cliente pública. Permite que aplicações sejam usadas numa autoridade global de nuvem pública para a biblioteca e ainda assim podem obter tokens para recursos provenientes de nuvens soberanas.

WithOidcAuthority(String)

Adiciona uma autoridade conhecida correspondente a um Provedor de Identidade OpenIdConnect genérico. O MSAL acrescenta ".well-known/openid-configuration" à autoridade e recupera os metadados do OIDC a partir daí, para determinar os endpoints. Veja https://openid.net/specs/openid-connect-core-1_0.html#Terminology

WithOptions(ApplicationOptions)

Define opções de aplicação, que podem, por exemplo, ter sido lidas a partir de ficheiros de configuração. Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de AbstractApplicationBuilder<T>)
WithOptions(BaseApplicationOptions)

Define opções de aplicação, que podem, por exemplo, ter sido lidas a partir de ficheiros de configuração. Consulte https://aka.ms/msal-net-application-configuration.

(Herdado de BaseAbstractApplicationBuilder<T>)
WithParentActivityOrWindow(Func<IntPtr>)

Define uma referência ao IntPtr para uma janela que aciona o navegador para ser mostrado. Costumava centrar o navegador que apareceu nesta janela.

WithParentActivityOrWindow(Func<Object>)

Define uma referência para o ViewController (se usar iOS), Activity (se estiver a usar Android), IWin32Window ou IntPtr (se usar .Net Framework). Usado para invocar o navegador.

WithRedirectUri(String)

Define o URI de redirecionamento da aplicação. O URI deve também estar registado no portal de candidaturas. Veja https://aka.ms/msal-net-application-configuration

(Herdado de AbstractApplicationBuilder<T>)
WithTelemetry(ITelemetryConfig)
Obsoleto.

Gerar eventos de agregação de telemetria.

(Herdado de AbstractApplicationBuilder<T>)
WithTenantId(String)

Define o ID do inquilino da organização a partir do qual a aplicação permitirá aos utilizadores iniciar sessão. Isto é classicamente um GUID ou um nome de domínio. Consulte https://aka.ms/msal-net-application-configuration. Embora também seja possível definir tenantId para common, organizations, e consumers, recomenda-se usar um dos overrides de WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean).

(Herdado de AbstractApplicationBuilder<T>)
WithWindowsBrokerOptions(WindowsBrokerOptions)
Obsoleto.

Permite a personalização da experiência do Windows 10 Broker.

Métodos da Extensão

Name Descrição
WithBroker(PublicClientApplicationBuilder, BrokerOptions)

Os Brokers permitem o Single-Sign-On, a identificação de dispositivos e a verificação de identificação de aplicações, ao mesmo tempo que aumentam a segurança das aplicações. Utilize esta API para ativar corretores em plataformas de ambiente de trabalho.

Consulte https://aka.ms/msal-net-wam para mais informações sobre as definições específicas da plataforma necessárias para ativar o corretor, como redirecionar URIs.

WithBroker(PublicClientApplicationBuilder, BrokerOptions)

Os Brokers permitem o Single-Sign-On, a identificação de dispositivos e segurança reforçada. Utilize esta API para ativar corretores em plataformas de ambiente de trabalho.

Consulte https://aka.ms/msal-net-wam para mais informações sobre as definições específicas da plataforma necessárias para ativar o corretor, como redirecionar URIs.

WithBrokerPreview(PublicClientApplicationBuilder, Boolean)
Obsoleto.

Permite que a MSAL utilize fluxos Broker, que são mais seguros do que os navegadores. Para mais detalhes sobre o Windows broker, consultehttps://aka.ms/msal-net-wam

WithDesktopFeatures(PublicClientApplicationBuilder)
Obsoleto.

Adiciona suporte melhorado para aplicações de ambiente de trabalho, por exemplo, aplicações CLI, WinForms e WPF.

O suporte adicionado está por aí:

WithSsoPolicy(PublicClientApplicationBuilder)

Use esta API para permitir a aplicação do SsoPolicy. Deve ser utilizado apenas por aplicações próprias da Microsoft. Isto aplica-se apenas quando o corretor não está ativado e a webview embutida é a escolha preferida. Por defeito, o corretor suporta o SsoPolicy, e o SsoPolicy do sistema webview também é suportado ao nível do sistema operativo.

WithWindowsBroker(PublicClientApplicationBuilder, Boolean)
Obsoleto.

Permite fluxos de broker do Windows em plataformas mais antigas, como o framework .NET, onde estas não estão disponíveis na caixa com a Microsoft. Identity.Client Para detalhes sobre o corretor Windows, consultehttps://aka.ms/msal-net-wam

WithWindowsDesktopFeatures(PublicClientApplicationBuilder, BrokerOptions)

Adiciona suporte melhorado para aplicações de ambiente de trabalho, por exemplo, aplicações CLI, WinForms e WPF.

  • Windows Authentication Manager (WAM), o mecanismo de autenticação recomendado no Windows 10+ -https://aka.ms/msal-net-wam
  • Vista web embutida. As aplicações AAD utilizam o controlo mais antigo do Navegador Web. Outras aplicações (B2C, ADFS, etc.) utilizam o WebView2, um navegador embutido baseado no Microsoft Edge -https://aka.ms/msal-net-webview2
WithWindowsEmbeddedBrowserSupport(PublicClientApplicationBuilder)

Adiciona melhor suporte a navegadores embutidos ao MSAL. As aplicações AAD utilizam o controlo mais antigo do Navegador Web. Outras aplicações (B2C, ADFS, etc.) utilizam um navegador embutido baseado no Microsoft Edge -https://aka.ms/msal-net-webview2

Aplica-se a