4

我正在使用 DotNetOpenAuth 的新OAuthWebSecurity包装器,以允许用户使用他们的 Microsoft 帐户(又名 Windows Live ID)登录到 MVC4 应用程序。

我已经注册了微软客户端:

OAuthWebSecurity.RegisterMicrosoftClient(clientId: "...", clientSecret: "...");

一切正常,我喜欢它的简单性。但是我如何改进它正在做的事情呢?

选择使用他们的 Microsoft 帐户登录后,用户将进入一个要求他们登录的屏幕:

第一步

当他们登录时,我希望他们能够选中“保持登录”框。

然后,Microsoft 要求他们确定我的访问权限:

第二步

但我实际上并不想要那么多访问权限。我想要的只是他们的姓名和电子邮件地址。也许他们的照片。我当然不需要或不想访问他们的联系人和朋友。这会吓跑我的用户。

我在哪里可以将参数传递给 OAuthWebSecurity 或 DotNetOpenAuth 来控制它?

所以用户点击,一切正常。但是,当他们离开并回到我的网站时 - “让我保持登录”选项应该得到尊重。它不是。相反,他们看到的是:

第三步

我不明白上面的消息:

因为您正在访问敏感信息,所以您需要验证您的密码。

什么敏感信息?我不想开始的联系人/朋友?或者是其他东西?

如何解决这两个问题以使我的应用程序更加用户友好?

4

1 回答 1

4

您需要传递您想要的范围,您可以使用 wl.signin 如果他们已经登录到您的应用程序,则无需再次要求凭据。

检查http://msdn.microsoft.com/en-us/library/live/hh243646.aspx

于 2013-02-28T00:48:23.843 回答