WebAuthenticationBroker Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicia a operação de autenticação. Você pode chamar os métodos dessa classe várias vezes em um único aplicativo ou em vários aplicativos ao mesmo tempo. O exemplo do agente de autenticação Web na galeria Exemplos é um exemplo de como usar a classe WebAuthenticationBroker para conexões de SSO (logon único).
public ref class WebAuthenticationBroker abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class WebAuthenticationBroker final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public static class WebAuthenticationBroker
Public Class WebAuthenticationBroker
- Herança
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v1.0)
|
Funcionalidades do aplicativo |
internetClient
|
Exemplos
private void OutputToken(String TokenUri)
{
Page outputFrame = (Page)rootPage.OutputFrame.Content;
TextBox FacebookReturnedToken = outputFrame.FindName("FacebookReturnedToken") as TextBox;
FacebookReturnedToken.Text = TokenUri;
}
try
{
String FacebookURL = "https://www.facebook.com/dialog/oauth?client_id=" + FacebookClientID.Text + "&redirect_uri=" + Uri.EscapeUriString(FacebookCallbackUrl.Text) + "&scope=read_stream&display=popup&response_type=token";
System.Uri StartUri = new Uri(FacebookURL);
System.Uri EndUri = new Uri(FacebookCallbackUrl.Text);
WebAuthenticationResult WebAuthenticationResult = await WebAuthenticationBroker.AuthenticateAsync(
WebAuthenticationOptions.None,
StartUri,
EndUri);
if (WebAuthenticationResult.ResponseStatus == WebAuthenticationStatus.Success)
{
OutputToken(WebAuthenticationResult.ResponseData.ToString());
}
else if (WebAuthenticationResult.ResponseStatus == WebAuthenticationStatus.ErrorHttp)
{
OutputToken("HTTP Error returned by AuthenticateAsync() : " + WebAuthenticationResult.ResponseErrorDetail.ToString());
}
else
{
OutputToken("Error returned by AuthenticateAsync() : " + WebAuthenticationResult.ResponseStatus.ToString());
}
}
catch (Exception Error)
{
//
// Bad Parameter, SSL/TLS Errors and Network Unavailable errors are to be handled here.
//
}
<TextBlock x:Name="InputTextBlock1" TextWrapping="Wrap" Grid.Row="0" Style="{StaticResource BasicTextStyle}" HorizontalAlignment="Left" >
Connect to Facebook using the OAuth 2.0 protocol for authentication and authorization.
</TextBlock>
<StackPanel Orientation="Vertical" Margin="0,10,0,0" Grid.Row="1">
<StackPanel Orientation="Horizontal">
<TextBlock TextWrapping="Wrap" Style="{StaticResource BasicTextStyle}" Text="App ID : " VerticalAlignment="Bottom"/>
<TextBox x:Name="FacebookClientID" Height="14" Width="173" Text=""/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock TextWrapping="Wrap" Style="{StaticResource BasicTextStyle}" Text="Site URL : " VerticalAlignment="Bottom"/>
<TextBox x:Name="FacebookCallbackUrl" Height="14" Width="433" Text=""/>
</StackPanel>
<StackPanel Orientation="Vertical" Margin="0,10,0,0">
<Button x:Name="Launch" Content="Launch" Margin="0,0,10,0" Click="Launch_Click"/>
</StackPanel>
</StackPanel>
Comentários
Todos os membros dessa classe são estáticos. Você pode acessá-los sem criar um objeto. Para solucionar problemas ao usar essa classe, consulte o log de eventos. Para exibir o log de eventos, inicie Eventvwr.exe e navegue até Logs de Aplicativos e Serviços > Microsoft > Windows > WebAuth > Operational.
Métodos
AuthenticateAndContinue(Uri) |
Inicia a operação de autenticação com uma entrada. |
AuthenticateAndContinue(Uri, Uri) |
Inicia a operação de autenticação com duas entradas. |
AuthenticateAndContinue(Uri, Uri, ValueSet, WebAuthenticationOptions) |
Inicia a operação de autenticação com quatro entradas. |
AuthenticateAsync(WebAuthenticationOptions, Uri) |
Inicia a operação de autenticação assíncrona com duas entradas. Você pode chamar esse método várias vezes em um único aplicativo ou em vários aplicativos ao mesmo tempo. |
AuthenticateAsync(WebAuthenticationOptions, Uri, Uri) |
Inicia a operação de autenticação assíncrona com três entradas. Você pode chamar esse método várias vezes em um único aplicativo ou em vários aplicativos ao mesmo tempo. |
AuthenticateSilentlyAsync(Uri) |
Inicia a operação de autenticação assíncrona silenciosamente (nenhuma interface do usuário será mostrada) com uma entrada. Você pode chamar esse método várias vezes em um único aplicativo ou em vários aplicativos ao mesmo tempo. |
AuthenticateSilentlyAsync(Uri, WebAuthenticationOptions) |
Inicia a operação de autenticação assíncrona silenciosamente (nenhuma interface do usuário será mostrada) com duas entradas. Você pode chamar esse método várias vezes em um único aplicativo ou em vários aplicativos ao mesmo tempo. |
GetCurrentApplicationCallbackUri() |
Obtém o URI de retorno de chamada do aplicativo atual. |