Azure 来自Windows ID的每个声明都是一样的

Azure 来自Windows ID的每个声明都是一样的,azure,access-control,Azure,Access Control,我正在Azure中尝试使用访问控制服务。我的大部分工作正常,我可以使用任何提供商登录,但我对WindowsLive提供商的索赔有异议。有了谷歌服务提供商,我可以获得诸如此人姓名和电子邮件地址之类的有用信息。我为WindowsLive添加了类似的声明,但每次声明的值都相同。我试过了 我原以为这是鬼怪 每一个都返回如下内容:oULpbTv2AMylPasgUOsLZAHjaBYtxldrU+gg3aS5nI4= 现在我很确定这不是我的电子邮件地址,因为它不适合我的名片,我知道这不是我的名字,因为我母

我正在Azure中尝试使用访问控制服务。我的大部分工作正常,我可以使用任何提供商登录,但我对WindowsLive提供商的索赔有异议。有了谷歌服务提供商,我可以获得诸如此人姓名和电子邮件地址之类的有用信息。我为WindowsLive添加了类似的声明,但每次声明的值都相同。我试过了

我原以为这是鬼怪 每一个都返回如下内容:oULpbTv2AMylPasgUOsLZAHjaBYtxldrU+gg3aS5nI4=

现在我很确定这不是我的电子邮件地址,因为它不适合我的名片,我知道这不是我的名字,因为我母亲不是威尔士人,也不支持我被命名为威尔士人

我按照和上的教程进行设置

是否有其他方法可以从WindowsLive获取标识符以外的信息?可能问题与我没有设置加密证书有关


编辑:经过一些搜索,我发现这表明我试图从WindowsLiveID获取更多信息是一个没有希望的任务。当用户第一次登录时,我只会提示他们输入信息

windows live提供程序只提供唯一的providerId。这是你的应用程序和用户的windows live id所独有的。谷歌更好一点,因为他们会给你用户名和电子邮件


我解决这个问题的方法是,在我的应用程序中创建帐户时,除了从声明中提供的信息之外,我只需要从用户那里收集我需要的任何信息。因此,如果他们使用谷歌,我会在我的创建帐户表单中预先填充他们的电子邮件和姓名。如果他们使用Windows,那么表单字段只是空白,他们必须填写必要的信息才能完成帐户的创建。它工作得很好。

预填充是个好主意,我没有想到这一点。谢谢