Как запретить доступ к action`ам для всех пользователей кроме локальных (ASP.NET MVC)? - CodeHelper

Как запретить доступ к action`ам для всех пользователей кроме локальных (ASP.NET MVC)?

2

Как сделать так, чтобы определенный action мог вызвать только пользователь, вошедший с локального (того же где стоит сайт) компьютера?

Лучший ответ:

2

Вот класс-фильтр, который перекидывает пользователя на страницу авторизации если он зашел не с локального компьютера:

using System.Web.Mvc;

public class AcceptLocalUserAttribute : FilterAttribute, IAuthorizationFilter
{
    public void OnAuthorization(AuthorizationContext filterContext)
    {
        var isLocalRequest = filterContext.RequestContext.HttpContext.Request.IsLocal;
        if (!isLocalRequest)
        {
            filterContext.Result = new HttpUnauthorizedResult();
        }
    }
}

Новые ответы


0

Можно написать аттрибут для проверки IP.


v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.