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

Nome Description
Build()

Cria uma instância dos IPublicClientApplication parâmetros definidos no PublicClientApplicationBuilder.

Create(String)

Cria um PublicClientApplicationBuilder de uma clientID. Consulte https://aka.ms/msal-net-application-configuration

CreateWithApplicationOptions(PublicClientApplicationOptions)

Cria um PublicClientApplicationBuilder a partir de opções de configuração de aplicativo cliente público. Consulte https://aka.ms/msal-net-application-configuration

IsBrokerAvailable()

Retorna true se um agente pode ser usado. Esse método só é necessário para ser usado em cenários móveis que dão suporte ao Gerenciamento de Aplicativos Móveis. Em outros cenários com suporte, use WithBroker por si só, que retornará para usar um navegador se o agente não estiver disponível.

WithAdfsAuthority(String, Boolean)

Adiciona uma autoridade conhecida correspondente a um servidor do ADFS. Consulte https://aka.ms/msal-net-adfs

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

Adiciona uma autoridade Azure AD conhecida ao aplicativo para conectar usuários que especificam o público-alvo de entrada (a nuvem é o Azure nuvem pública). Consulte https://aka.ms/msal-net-application-configuration.

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

Adiciona uma autoridade Azure AD conhecida ao aplicativo para conectar usuários que especificam a instância de nuvem e o público-alvo de entrada. Consulte https://aka.ms/msal-net-application-configuration.

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

Adiciona uma autoridade de Azure AD conhecida ao aplicativo para conectar usuários de uma única organização (aplicativo de locatário único) descrito por sua instância de nuvem e sua ID de locatário. Consulte https://aka.ms/msal-net-application-configuration.

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

Adiciona uma autoridade de Azure AD conhecida ao aplicativo para conectar usuários de uma única organização (aplicativo de locatário único) descrito por sua instância de nuvem e seu nome de domínio ou ID de locatário. Consulte https://aka.ms/msal-net-application-configuration.

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

Adiciona uma autoridade de Azure AD conhecida ao aplicativo para conectar usuários que especificam o URI de autoridade completa. Consulte as opções de configuração do aplicativo.

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

Adiciona uma autoridade Azure AD conhecida ao aplicativo para conectar usuários de uma única organização (aplicativo de locatário único) especificada por sua ID de locatário. Consulte as opções de configuração do aplicativo.

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

Adiciona uma autoridade Azure AD conhecida ao aplicativo para conectar usuários de uma única organização (aplicativo de locatário único) descrito pelo nome de domínio. Consulte https://aka.ms/msal-net-application-configuration.

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

Adiciona uma autoridade conhecida ao aplicativo. Consulte as opções de configuração do aplicativo. Esse construtor é usado principalmente para cenários em que a autoridade não é uma autoridade padrão Azure do AD, nem uma autoridade do ADFS, nem uma autoridade Azure AD B2C. Para Azure AD, mesmo em nuvens soberanas, prefira usar outras substituições, comoWithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)

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

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

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

Opções para caches de token MSAL.

A MSAL mantém um cache de token internamente na memória. Por padrão, esse objeto de cache faz parte de cada instância de PublicClientApplication ou ConfidentialClientApplication. Esse método permite a personalização do cache de token na memória da MSAL.

O cache de memória da MSAL é diferente da serialização do cache de token. A serialização de cache extrai os tokens de um cache (por exemplo, Redis, Cosmos ou um arquivo em disco), em que eles são armazenados no formato JSON, no cache de memória interna da MSAL. As operações de cache de memória não envolvem operações JSON.

A serialização de cache externo continua sendo a maneira recomendada de lidar com aplicativos da área de trabalho, site e APIs da Web, pois fornece persistência. No momento, essas opções não controlam a serialização de cache externo.

Diretrizes detalhadas para cada tipo de aplicativo e plataforma: https://aka.ms/msal-net-token-cache-serialization

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

Microsoft extensão OIDC específica da identidade que permite que os desafios de recursos sejam resolvidos sem interação. Permite a configuração de um ou mais recursos do cliente, por exemplo, "llt"

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

Define a ID do cliente do aplicativo

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

Define o nome da API do SDK de chamada 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 retorno de chamada de registro em log de depuração como um método de depuração padrão que exibe o nível da mensagem e a própria mensagem. Para obter detalhes, consulte https://aka.ms/msal-net-logging

(Herdado de BaseAbstractApplicationBuilder<T>)
WithDefaultRedirectUri()

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

Platform
.NET área de trabalho
Para o navegador do sistema no .NET Core
OBSERVAÇÃO:haverá uma atualização para o URI de redirecionamento padrão no futuro para acomodar os navegadores do sistema nas plataformas .NET desktop e .NET Core.
WithExperimentalFeatures(Boolean)

Permite o uso de recursos experimentais e APIs. Se esse sinalizador não estiver definido, os recursos experimentais gerarão uma exceção. Para obter detalhes, consulte https://aka.ms/msal-net-experimental-features

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

Define parâmetros de consulta extra para a cadeia de caracteres de consulta na solicitação de autenticação HTTP

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

Define parâmetros de consulta extra para a cadeia de caracteres de consulta na solicitação de autenticação HTTP com controle sobre quais parâmetros estão incluídos na chave de cache

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

Define parâmetros de consulta extra para a cadeia de caracteres de consulta na solicitação de autenticação HTTP

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

Usa um específico IMsalHttpClientFactory para se comunicar com o IdP. Isso 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 se comunicar com o IdP. Isso permite cenários avançados, como definir um proxy ou definir o Agente.

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

Permite que os desenvolvedores configurem suas próprias autoridades válidas. Uma cadeia de caracteres json semelhante a https://aka.ms/aad-instance-discovery deve ser fornecida. A MSAL usa essas informações para:

  • Chamar APIs REST no ambiente especificado no preferred_network
  • Identificar um ambiente no qual salvar tokens e contas no cache
  • Usar os aliases de ambiente para corresponder tokens emitidos a outras autoridades
Para obter mais detalhes, consulte https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithInstanceDicoveryMetadata(Uri)
Obsoleto.

Permite que uma organização configure seu próprio serviço para lidar com a descoberta de instância, o que permite um melhor cache para ambientes de microsserviço/serviço. Um Uri que retorna uma resposta semelhante a https://aka.ms/aad-instance-discovery deve ser fornecida. A MSAL usa essas informações para:

  • Chamar APIs REST no ambiente especificado no preferred_network
  • Identificar um ambiente no qual salvar tokens e contas no cache
  • Usar os aliases de ambiente para corresponder tokens emitidos a outras autoridades
Para obter mais detalhes, consulte https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithInstanceDiscovery(Boolean)

Determina se a descoberta de instância é executada ou não ao tentar se autenticar. Definir isso como false desabilitará completamente a descoberta de instância e a validação de autoridade. No entanto, isso não afetará o comportamento do aplicativo configurado com pontos de extremidade regionais.

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

Permite que os desenvolvedores configurem suas próprias autoridades válidas. Uma cadeia de caracteres json semelhante a https://aka.ms/aad-instance-discovery deve ser fornecida. A MSAL usa essas informações para:

  • Chamar APIs REST no ambiente especificado no preferred_network
  • Identificar um ambiente no qual salvar tokens e contas no cache
  • Usar os aliases de ambiente para corresponder tokens emitidos a outras autoridades
Para obter mais detalhes, consulte https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithInstanceDiscoveryMetadata(Uri)

Permite que uma organização configure seu próprio serviço para lidar com a descoberta de instância, o que permite um melhor cache para ambientes de microsserviço/serviço. Um Uri que retorna uma resposta semelhante a https://aka.ms/aad-instance-discovery deve ser fornecida. A MSAL usa essas informações para:

  • Chamar APIs REST no ambiente especificado no preferred_network
  • Identificar um ambiente no qual salvar tokens e contas no cache
  • Usar os aliases de ambiente para corresponder tokens emitidos a outras autoridades
Para obter mais detalhes, consulte https://aka.ms/msal-net-custom-instance-metadata (Herdado de AbstractApplicationBuilder<T>)
WithIosKeychainSecurityGroup(String)

Você pode especificar um Grupo de Acesso de Conjunto de Chaves a ser usado para persistir o cache de token em vários aplicativos. Isso permite que você compartilhe o cache de tokens entre vários aplicativos que têm o mesmo grupo de acesso de conjunto de chaves. O compartilhamento do cache de token permite o logon único entre todos os aplicativos que usam o mesmo grupo de acesso de conjunto de chaves. 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 Tíquete Kerberos de Azure serviço do AD.

WithLegacyCacheCompatibility(Boolean)

Habilita a serialização e a desserialização do cache ADAL herdadas.

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

Define o Agente de Identidade. Para obter detalhes, consulte https://aka.ms/msal-net-logging

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

Define o retorno de chamada de registro em log. Para obter detalhes, consulte https://aka.ms/msal-net-logging

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

Habilita o suporte a várias nuvens para esta instância do aplicativo cliente público. Ele permite que os aplicativos usem em uma autoridade de nuvem pública global para a biblioteca e ainda podem obter tokens para recursos de nuvens soberanas.

WithOidcAuthority(String)

Adiciona uma autoridade conhecida correspondente a um Provedor de Identidade OpenIdConnect genérico. A MSAL anexará ".well-known/openid-configuration" à autoridade e recuperará os metadados do OIDC a partir daí, para descobrir os pontos de extremidade. Consulte https://openid.net/specs/openid-connect-core-1_0.html#Terminology

WithOptions(ApplicationOptions)

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

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

Define as opções de aplicativo, que podem, por exemplo, ter sido lidas de arquivos 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 dispara o navegador a ser mostrado. Usado para centralizar o navegador que aparece nesta janela.

WithParentActivityOrWindow(Func<Object>)

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

WithRedirectUri(String)

Define o URI de redirecionamento do aplicativo. O URI também deve ser registrado no portal do aplicativo. Consulte 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 a ID do locatário da organização da qual o aplicativo permitirá que os usuários entrem. Isso é clássicamente um GUID ou um nome de domínio. Consulte https://aka.ms/msal-net-application-configuration. Embora também seja possível definir tenantId como common, organizationse consumers, é recomendável usar uma das substituições 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 de Extensão

Nome Description
WithBroker(PublicClientApplicationBuilder, BrokerOptions)

Os agentes habilitam o logon único, a identificação do dispositivo e a verificação de identificação do aplicativo, aumentando a segurança dos aplicativos. Use essa API para habilitar agentes em plataformas de desktop.

Consulte https://aka.ms/msal-net-wam mais informações sobre configurações específicas da plataforma necessárias para habilitar o agente, como URIs de redirecionamento.

WithBroker(PublicClientApplicationBuilder, BrokerOptions)

Os agentes habilitam o logon único, a identificação do dispositivo e a segurança aprimorada. Use essa API para habilitar agentes em plataformas de desktop.

Consulte https://aka.ms/msal-net-wam mais informações sobre configurações específicas da plataforma necessárias para habilitar o agente, como URIs de redirecionamento.

WithBrokerPreview(PublicClientApplicationBuilder, Boolean)
Obsoleto.

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

WithDesktopFeatures(PublicClientApplicationBuilder)
Obsoleto.

Adiciona suporte aprimorado para aplicativos da área de trabalho, por exemplo, CLI, WinForms WPF aplicativos.

O suporte adicionado está ao redor:

WithSsoPolicy(PublicClientApplicationBuilder)

Use essa API para habilitar a imposição do SsoPolicy. Só deve ser utilizado por Microsoft aplicativos de 1ª parte. Isso é aplicável somente quando o agente não está habilitado e a visão da Web inserida é a opção preferida. Por padrão, o agente dá suporte ao SsoPolicy e o SsoPolicy de visão da Web do sistema também tem suporte no nível do sistema operacional.

WithWindowsBroker(PublicClientApplicationBuilder, Boolean)
Obsoleto.

Habilita Windows fluxos de agente em plataformas mais antigas, como .NET estrutura, em que eles não estão disponíveis na caixa com Microsoft. Identity.Client Para obter detalhes sobre Windows agente, consultehttps://aka.ms/msal-net-wam

WithWindowsDesktopFeatures(PublicClientApplicationBuilder, BrokerOptions)

Adiciona suporte aprimorado para aplicativos da área de trabalho, por exemplo, CLI, WinForms WPF aplicativos.

  • Windows agente do WAM (Authentication Manager), o mecanismo de autenticação recomendado no Windows 10+ –https://aka.ms/msal-net-wam
  • Exibição da Web inserida. Os aplicativos AAD usam o controle WebBrowser mais antigo. Outros aplicativos (B2C, ADFS etc.) usam o WebView2, um navegador inserido com base em Microsoft Edge –https://aka.ms/msal-net-webview2
WithWindowsEmbeddedBrowserSupport(PublicClientApplicationBuilder)

Adiciona melhor suporte ao navegador inserido à MSAL. Os aplicativos AAD usarão o controle WebBrowser mais antigo. Outros aplicativos (B2C, ADFS etc.) usarão um navegador inserido com base em Microsoft Edge –https://aka.ms/msal-net-webview2

Aplica-se a