Я пытаюсь войти на свой сайт (не нажимая кнопку «Войти»). Вы либо входите в систему, либо получаете сообщение «нет доступа».
Я боролся с этим уже несколько дней. Я признаю, что понятия не имею, как это сделать. На данный момент я пробежал около 6 уроков.
Вот мой код:
Startup.cs
public class Startup
{
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
}
public void ConfigureAuth(IAppBuilder app)
{
app.UseCookieAuthentication(
new CookieAuthenticationOptions
{
AuthenticationType = CookieAuthenticationDefaults.AuthenticationType
});
app.UseWsFederationAuthentication(
new WsFederationAuthenticationOptions
{
MetadataAddress = ConfigurationManager.AppSettings["ida:ADFSMetadata"],
Wtrealm = ConfigurationManager.AppSettings["ida:Wtrealm"]
// Wreply = ConfigurationManager.AppSettings["ida:Wreply"]
});
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
}
}
HomeController.cs
[Authorize]
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Title = "BotWebUtility";
/*
ViewBag.ClaimsIdentity = System.Threading.Thread.CurrentPrincipal.Identity;
var claimsIdentity = System.Threading.Thread.CurrentPrincipal.Identity as ClaimsIdentity;
ViewBag.DisplayName = claimsIdentity.Claims.First(c => c.Type == ClaimTypes.GivenName).Value;
*/
if (!Request.IsAuthenticated)
{
HttpContext.GetOwinContext().Authentication.Challenge(new AuthenticationProperties { RedirectUri = "/" },
WsFederationAuthenticationDefaults.AuthenticationType);
}
return View();
}
Не буду лгать, URL запроса огромен, но я не думаю, что он побивает какие-либо записи.
У меня есть этот набор в моем web.config :
<system.web>
<compilation targetFramework="4.7.2" />
<httpRuntime targetFramework="4.7.2" maxQueryStringLength="2097151" maxUrlLength="2097151"/>
</system.web>
<security>
<requestFiltering>
<requestLimits maxQueryString="2097151"/>
</requestFiltering>
</security>
И я получаю:
Ошибка HTTP 400. Размер заголовков запроса слишком длинный.
Очистил весь кэш / куки,пробовал в IE & Chrome. Помогите пожалуйста: D
PS Я знаю, что федерация работает, потому что она используется другим приложением на той же машине.