2010-11-24 7 views
1

windows/forms認証を使用する代わりに、制限したい制御アクションでauthorize属性を使用できますか?mvc認証または認証

認可は厳密に認証より優れていると思われ、ほとんどの状況で置き換えられます。私は認証がweb.configレベルであることを理解しているので、再コンパイルせずにページを入れ替えることができますが、そのような機能が必要ない場合は、承認が行く方法ですか?

+2

匿名ユーザーを承認することはできません。 – dotjoe

+0

私はあなたが何をしようとしているのか分かりません。認証されていないユーザーが属性で装飾されたアクションを実行できないように、Authorize属性は認証と一緒に使用されます。あなたが認可を使用し、認証を設定しない場合、私はそれが何をするか分かりません。私はそれが非アクセスを使用すると思います。 – Josh

+0

私は認可と認証のやりとりを理解していませんでした。ありがとう –

答えて

2

システムを保護するには、認証の両方の認証が必要です。

http://www.duke.edu/~rob/kerberos/authvauth.html

+2

認証は、システムがユーザーを安全に識別できるメカニズムです。対照的に、認可は、特定の認証されたユーザーがシステムによって制御される保護されたリソースに対してどのレベルのアクセス権を持つかを決定するメカニズムです。 – Dismissile

+0

@Dismissile +1。よく説明されています。 「あなたの人」と「あなたは何をしていますか」の違いは、しばしば誤解されます。 「アイデンティティ」と「ユーザーアカウント」も同様に混乱する概念です。 ASP.NET用の既定のマイクロソフトメンバシッププロバイダは、この領域では混乱し、日付がついています。マイクロソフトは基本的な情報に戻って、ASP.NETに付属する基本的なメンバシッププロバイダを書き直す必要があります。簡単に言えば、私はMicrosoft "Cardspace、Cardspace、CARDSPACE" Genevaを意味するものではありません。私はOpenIdをそのまま使うことを意味します。彼らはJeff AtwoodとSOチームとのチャットが必要です。 – Junto

0

認証は、ユーザーが別称、ログインしているユーザーを特定する方法です。

Authorizeは、認証が必要なこのサイトの部分を使用すると言われるASP .NETの注釈です。

+0

あなたは認証が必要なだけでなく、十分な権限も持っていることが必要です(管理者ページにアクセスするなど) – Dismissile