OnlineIdAuthenticator 类

定义

使应用能够启动身份验证请求来获取 JavaScript 对象表示法 (JSON) 令牌,以用于服务或请求票证,这些票证可用于获取用户使用 Live ConnectAPI 为应用同意的数据。

在桌面应用中,在以显示 UI 的方式使用此类实例之前,需要将 对象与其所有者的窗口句柄相关联。 有关详细信息和代码示例,请参阅 显示依赖于 CoreWindow 的 WinRT UI 对象

注意

如果要针对 Windows 10 或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

public ref class OnlineIdAuthenticator sealed
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class OnlineIdAuthenticator final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class OnlineIdAuthenticator final
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class OnlineIdAuthenticator
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class OnlineIdAuthenticator
function OnlineIdAuthenticator()
Public NotInheritable Class OnlineIdAuthenticator
继承
Object Platform::Object IInspectable OnlineIdAuthenticator
属性

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

示例

以下示例演示如何处理用户身份验证请求。

function signIn() {
    var authenticator = new Windows.Security.Authentication.OnlineId.OnlineIdAuthenticator();
    var serviceTicketRequest = new Windows.Security.Authentication.OnlineId.OnlineIdServiceTicketRequest(
        "wl.basic wl.contacts_photos wl.calendars", "DELEGATION");

    sdkSample.displayStatus("Signing in...");

    authenticator.authenticateUserAsync(serviceTicketRequest)
        .done(function (authResult) {

            if ((authResult.tickets.size == 1) && (authResult.tickets[0].errorCode == 0)) {
                sdkSample.isSignedIn = true;
                sdkSample.displayStatus("Authorization succeeded.");
                sdkSample.accessToken = authResult.tickets[0];
                sdkSample.canSignOut = authenticator.canSignOut;
            }
        },

            function (authStatus) {
                if (authStatus && (authStatus.name !== "Canceled")) {
                    showErrorMessage("Autorization failed: " + authStatus.message);
                } else {
                    sdkSample.displayStatus("");
                }
                    showAccountStatus();
                });
}

构造函数

OnlineIdAuthenticator()

创建 OnlineIdAuthenticator 的实例。

在桌面应用中,在以显示 UI 的方式使用此类实例之前,需要将 对象与其所有者的窗口句柄相关联。 有关详细信息和代码示例,请参阅 显示依赖于 CoreWindow 的 WinRT UI 对象

注意

如果要针对 Windows 10 或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

属性

ApplicationId

GUID 的形式返回应用程序的 ID。

注意

如果要针对Windows 10或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

AuthenticatedSafeCustomerId

返回已成功为应用进行身份验证的用户的 ID。

注意

如果要针对Windows 10或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

CanSignOut

指示用户是否可以注销应用,以及是否在应用中显示注销链接。

注意

如果要针对Windows 10或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

方法

AuthenticateUserAsync(IIterable<OnlineIdServiceTicketRequest>, CredentialPromptType)

使用多个 OnlineIdServiceTicketRequests 启动异步身份验证请求,并通过设置 CredentialPromptType 获取票证来控制用户体验。 如果用户使用 Microsoft 帐户登录到 Windows 8 系统,则此用户将用于身份验证请求。

注意

如果要针对Windows 10或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

AuthenticateUserAsync(OnlineIdServiceTicketRequest)

如果需要收集凭据或同意并获取票证,请显示凭据提示,以一个 OnlineIdServiceTicketRequest 启动异步身份验证请求。 如果用户使用 Microsoft 帐户登录到 Windows 8 系统,则此用户将用于身份验证请求。

注意

如果要针对Windows 10或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

SignOutUserAsync()

允许用户注销你的应用。

注意

如果要针对Windows 10或更高版本进行开发,请改用 Windows.Security.Authentication.Web.Core API。 有关详细信息,请参阅 Web 帐户管理器

适用于