Мой вопрос похож на многие другие, которые были заданы.
У меня есть простое приложение, размещенное внутри моей компании (доступное во внутренней сети). Это приложение MVC со встроенной аутентификацией Windows.
У меня есть весь код для авторизации пользователя по Active Directory. Как мне реализовать это в клиенте (web.config + global.asax и т. Д.)?
Используются ли доступные методы событий global.asax? Я могу авторизовать каждый запрос страницы или сеансы настройки, но если у кого-то есть рабочий пример того, как перенаправлять на пользовательские страницы без запуска бесконечного цикла, это было бы здорово!
В качестве альтернативы есть что-то в MVC, что делает все это намного проще, что мне не хватает? Я не верю, что атрибут [Authorize] соответствует именно этому требованию.
Я пробовал это безрезультатно:
/// <summary>
/// Handles the AuthenticateRequest event of the Application control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
bool isAuthorised = false;
if ((Request.IsAuthenticated) && (cookie == null))
isAuthorised = AuthoriseUser();
}
/// <summary>
/// Handles the EndRequest event of the Application control.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
protected void Application_EndRequest(object sender, EventArgs e)
{
if ((Response.StatusCode == 401) && (Request.IsAuthenticated))
{
Response.Redirect("/Shared/Denied");
}
}
Заранее спасибо