Azure active directory Azure Active Directory登录

Azure active directory Azure Active Directory登录,azure-active-directory,Azure Active Directory,我是Azure Active Directory登录的新手,我已经尝试过使用“云-单一组织”身份验证的MVC 5应用程序 在我的azure帐户中,我在默认的active directory文件夹中设置了几个用户。他们中很少有人通过向导作为“组织中的新用户”添加,这些用户来自Windows Azure Active Directory,很少有人来自实际的Microsoft帐户 当我启动应用程序并作为一个源于Windows Azure Active Directory的应用程序登录时,我获得了登录,

我是Azure Active Directory登录的新手,我已经尝试过使用“云-单一组织”身份验证的MVC 5应用程序

在我的azure帐户中,我在默认的active directory文件夹中设置了几个用户。他们中很少有人通过向导作为“组织中的新用户”添加,这些用户来自Windows Azure Active Directory,很少有人来自实际的Microsoft帐户

当我启动应用程序并作为一个源于Windows Azure Active Directory的应用程序登录时,我获得了登录,应用程序在右上角显示“你好,john”。doe@domain.com"

然而,当我从Microsoft帐户登录时,我也会登录,但在右上角,应用程序会显示“你好!”没有真实的帐户名。只有感叹号。我想这不是正确的行为,对吗

我正在使用VS2013社区版,并通过IIS express直接从VS启动应用程序

更新:

似乎对于Azure Active Directory上列出的源于Microsoft帐户的帐户,应用程序无法检索任何信息-因此User.Identity.Name为空或null。有人有线索吗

谢谢

我得到了敬礼:)

在global.asax中添加此块

protected void Application_PostAuthenticateRequest(Object sender, EventArgs e)
{
    ClaimsIdentity id = ((ClaimsIdentity)User.Identity);
    Claim claim = id.FindFirst(ClaimTypes.Email);
    if (claim != null)
    {
        string email = claim.Value;
        id.AddClaim(new Claim(ClaimTypes.Name, email));
    }
} 

嗨,我也面临着同样的问题。当我的用户类型为“组织中的新用户”时,一切正常。但是当我有user type=“user with a existing Microsoft account”登录文件时,我得到的是user.Identity.Name=null。。如果你得到了解决方案,请告诉我。如果下面的答案对你有效,请标记为答案!这种方法不是惯用的ASP.NET MVC,因为它使用Global.asax而不是OWIN管道。