Это, кажется, поддерживаемый собственный метод в OS X:
cd /Applications/eclipse/
open -n Eclipse.app
убедиться определить ".app" версию (каталог); у Пумы OS X, ошибочно использующей символьную ссылку такой в качестве open -n eclipse
, мог бы получить один GateKeeper, останавливающий доступ:
"затмение" не может быть открыто, потому что это от неопознанного разработчика.
Ваши параметры безопасности позволяют установку только приложений от Mac App Store и идентифицированных разработчиков.
Даже удаление расширенного атрибута com.apple.quarantine
не фиксирует это. Вместо этого просто использование ".app" версии будет полагаться на Ваше предыдущее согласие или предлагать Вам однажды:
"Eclipse" является приложением, загруженным из Интернета. Вы уверены, что хотите открыть его?
Мое предположение:
[RequireHttps] //apply to all actions in controller
public class SomeController
{
//... or ...
[RequireHttps] //apply to this action only
public ActionResult SomeAction()
{
}
}
Я думаю, вам нужно будет использовать свой собственный ActionFilterAttribute
для этого.
public class RedirectHttps : ActionFilterAttribute {
public override void OnActionExecuting(ActionExecutingContext filterContext) {
if (!filterContext.HttpContext.Request.IsSecureConnection) {
filterContext.Result =
new RedirectResult(filterContext.HttpContext.Request.Url.
ToString().Replace("http:", "https:"));
filterContext.Result.ExecuteResult(filterContext);
}
base.OnActionExecuting(filterContext);
}
}
Затем в вашем контроллере:
public class HomeController : Controller {
[RedirectHttps]
public ActionResult SecuredAction() {
return View();
}
}
Вы можете прочитать ] это тоже.