使用Webauthentication代理进行开放ID连接

时间:2016-05-05 09:42:26

标签: c# authentication win-universal-app windows-10 openid

我有一个客户端URL,其中实现了开放的身份验证。如何在UWP Win 10中实现Open ID连接。我可以使用Web身份验证代理吗?如果是,如何使用WebAuthenticationBroker进行操作?请提供示例

1 个答案:

答案 0 :(得分:1)

是的,WebAuthenticationBroker旨在与OpenID和OAuth等协议一起使用。

基本上,在UWP中你只需要调用authentication method并传递请求和回调URI:

var webAuthenticationResult = 
    await WebAuthenticationBroker.AuthenticateAsync(WebAuthenticationOptions.None, 
    requestUri, 
    callbackUri);

if (webAuthenticationResult.ResponseStatus == WebAuthenticationStatus.Success) {
     //String for service response
     var data = webAuthenticationResult.ResponseData; 
     ...
} else {
     ...
}

系统会在您的应用程序顶部显示覆盖UI,要求用户将其凭据提供给相应的网站。如果凭据是正确的,网站将返回callbackUri和访问令牌。 WebAuthenticationBroker将使用您提供的那个检查callbackUri,如果一切正确,您将获得您的令牌。

如果您需要使用WebView进行自定义实现,我还建议您在GitHub上查看以下存储库: