Bagikan melalui


WebAuthenticationBroker Kelas

Definisi

Memulai operasi autentikasi. Anda dapat memanggil metode kelas ini beberapa kali dalam satu aplikasi atau di beberapa aplikasi secara bersamaan. Sampel broker autentikasi Web di galeri Sampel adalah contoh cara menggunakan kelas WebAuthenticationBroker untuk koneksi akses menyeluruh (SSO).

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
Warisan
Object Platform::Object IInspectable WebAuthenticationBroker
Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
Kemampuan aplikasi
internetClient

Contoh

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>  

Keterangan

Semua anggota kelas ini statis. Anda dapat mengaksesnya tanpa membuat objek. Untuk memecahkan masalah saat menggunakan kelas ini, lihat log peristiwa. Untuk melihat log peristiwa, mulai Eventvwr.exe, dan navigasikan ke Log > Aplikasi dan Layanan Microsoft > Windows > WebAuth > Operational.

Metode

AuthenticateAndContinue(Uri)

Memulai operasi autentikasi dengan satu input.

AuthenticateAndContinue(Uri, Uri)

Memulai operasi autentikasi dengan dua input.

AuthenticateAndContinue(Uri, Uri, ValueSet, WebAuthenticationOptions)

Memulai operasi autentikasi dengan empat input.

AuthenticateAsync(WebAuthenticationOptions, Uri)

Memulai operasi autentikasi asinkron dengan dua input. Anda dapat memanggil metode ini beberapa kali dalam satu aplikasi atau di beberapa aplikasi secara bersamaan.

AuthenticateAsync(WebAuthenticationOptions, Uri, Uri)

Memulai operasi autentikasi asinkron dengan tiga input. Anda dapat memanggil metode ini beberapa kali dalam satu aplikasi atau di beberapa aplikasi secara bersamaan.

AuthenticateSilentlyAsync(Uri)

Memulai operasi autentikasi asinkron secara diam-diam (tidak ada UI yang akan ditampilkan) dengan satu input. Anda dapat memanggil metode ini beberapa kali dalam satu aplikasi atau di beberapa aplikasi secara bersamaan.

AuthenticateSilentlyAsync(Uri, WebAuthenticationOptions)

Memulai operasi autentikasi asinkron secara diam-diam (tidak ada UI yang akan ditampilkan) dengan dua input. Anda dapat memanggil metode ini beberapa kali dalam satu aplikasi atau di beberapa aplikasi secara bersamaan.

GetCurrentApplicationCallbackUri()

Mendapatkan URI panggilan balik aplikasi saat ini.

Berlaku untuk

Lihat juga