Azure AD错误请求

时间:2018-05-31 03:38:28

标签: c# azure single-sign-on azure-active-directory azure-authentication

我使用https://myapps.microsoft.com/作为我的登录页面。

但是有些情况下,当我从仪表板中单击我的应用程序时, 当页面被重定向时,我的会话已过期。我必须关闭并再次单击它,这是我在页面中获取会话的时间。

第二种情况是我总是得到一个"错误请求 - 请求太长错误"。 我错过了什么配置?

这是我使用的代码:

public class Logon
{
    [Authorize]
    public void Authenticate()
    {
        if (ClaimsPrincipal.Current.Identity.IsAuthenticated)
        {
            string userfirstname = ClaimsPrincipal.Current.FindFirst(ClaimTypes.GivenName).Value;
            string userlastname = ClaimsPrincipal.Current.FindFirst(ClaimTypes.Surname).Value;  

            // do some checking 
            // set session and redirect 
            // when page is redirected to Home Index, session checking occur

            Response.Redirect("~/Home/Index");
        }
    }
}

至于Azure设置

我的主页网址和回复网址设置为:https://mysite/logon/authenticate托管在我的本地IIS上。

我通过Azure AD面板中的App Registration菜单添加了我的应用程序。

谢谢。

1 个答案:

答案 0 :(得分:1)

您是否使用一组特定凭据登录?如果用户是太多Azure AD组的一部分,则可能会发生此问题。您可以删除您所属的用户组的数量,也可以增加服务器上MaxFieldLength和MaxRequestBytes注册表项的设置,以便用户的请求标头不会超过这些值。 / p>

见这里:https://support.microsoft.com/en-us/help/2020943/http-400-bad-request-request-header-too-long-response-to-http-request

另请参阅:https://medium.com/@marilee.turscak/reply-urls-vs-postlogoutredirecturis-in-azure-active-directory-aad-20f57a03267b