【问题标题】:How to authenticate a user and get his acount details in UWP?如何在 UWP 中对用户进行身份验证并获取他的帐户详细信息?
【发布时间】:2016-03-13 10:52:37
【问题描述】:

我是 UWP 的新手,我正在尝试制作一个包含使用 Microsoft 帐户登录的应用。问题是我很困惑我应该使用什么 API 以及如何进行身份验证。

经过很长时间的搜索,我发现 Microsoft 拥有适用于所有内容的 API 和 SDK - Outlook、OneDrive、Live、Office365、Microsoft Graph 等。但是没有明确的文档,开发人员应该使用什么来验证用户并获取他的帐户详细信息例如姓名和电子邮件。

Live SDK 似乎可以解决问题,但 Microsoft 声明此 SDK 是旧版,开发人员应使用 OndeDrive SDK。但是 OneDrive 不适合我的需求,我无法获取用户的电子邮件地址,而且我必须拥有开发者帐户,这样我才能构建一个示例应用程序来测试它。这对于测试来说太过分了,不是吗?

经过更多研究,我发现 Microsoft Graph 可以提供帮助,但它似乎仅用于商业目的,或者我错了?

简而言之,我试图实现的是制作一个让用户使用其 Microsoft 帐户登录的应用程序。成功验证后,我需要获取他的帐户详细信息,以便我可以在应用程序中为他建立个人资料。而所有这一切我都想在不创建开发者或企业帐户的情况下完成。

希望有人能提供帮助,因为 Microsoft 文档非常混乱。

【问题讨论】:

  • 我会先选择 Azure AD。它基本上是免费的(前 50 000 名用户)并支持 Microsoft、Twitter、Linkedin 和 google 帐户。使用起来也很简单

标签: c# windows-10 win-universal-app onedrive microsoft-graph-api


【解决方案1】:

Microsoft Graph 确实支持您使用 Microsoft 帐户登录,然后访问用户非常基本的个人资料及其个人用户 OneDrive 和 Outlook。令牌获取是通过新的 v2 端点(聚合身份验证,允许您为登录用户获取令牌,无论他们是通过 Microsoft 帐户的消费者用户还是通过 Azure AD 的商业/企业/学校用户)来实现。

我建议您看看几个地方。一个地方是https://graph.microsoft.io/en-us/docs/authorization/converged_auth,这里是应用程序注册和令牌获取:https://azure.microsoft.com/en-us/documentation/articles/active-directory-appmodel-v2-overview/,这里是 Windows 应用程序入门:https://azure.microsoft.com/en-us/documentation/articles/active-directory-v2-devquickstarts-wpf/。注意:最后一个使用预览/实验客户端库。

希望这会有所帮助,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-23
    • 2011-05-30
    • 2012-09-15
    • 1970-01-01
    • 2010-11-13
    • 1970-01-01
    相关资源
    最近更新 更多