コントローラ上でAuthorizeとRequireSSL(MVC先物)属性の両方を正しく使用している人はいますか?私は、ユーザーがログインし、実行するために安全な接続を使用する必要があるというルールを強制しなければならないコントローラを作成しました。ユーザーが安全な接続をしていない場合は、アプリをhttpsにリダイレクトする必要があるため、RequireSSL属性でRedirect = trueを使用しています。コードのようなもの(CheckPasswordExpiredは私の自家製の属性です)になります。ASP.NET MVC先物RequireSSL属性と属性を一緒に承認
[Authorize]
[RequireSsl(Redirect = true)]
[CheckPasswordExpired(ActionName = "ChangePassword",
ControllerName = "Account")]
[HandleError]
public class ActionsController : Controller
{
....
}
mysite.com/Actions/Indexをフォーム認証のためにリダイレクトするサイトと、デフォルトのページのデフォルトルートです。
私がhttp://mysite.comにアクセスしたときに、ユーザーが安全な接続にリダイレクトされ、ログインページにまだ認証されていないために取得したいものがあります。私が得るのは、HTTP 400エラー(Bad Request)です。 http://mysite.com/Account/Loginに移動すると、リダイレクトは機能しますが、アカウントコントローラもログインアクションも[承認]属性を持ちません。
誰もが私の目的を達成するためにこれらの2つの属性を一緒に使用する経験がありますか?
ありがとうございます!
感謝を。私はアクションレベルではなくコントローラレベルでアタッチされた属性を持っています。ところで、私はあなたのEnable強化が好きです。 –
どうすれば有効にするのですか?私の開発環境で私はそれがSSLであることを望んでいないと言う? – Blankman
Validate.IsNotNull(...)とは何ですか?私はコードを貼り付けましたが、Validateはありません(私は先物をインストールしたくありません) – Blankman