Authorize
ヘッダーを持ち、単純にビューにリダイレクトするコントローラアクションが呼び出されたときに、ユーザー名とパスワードの要求を回避する方法を解明しようとしています。ASP.NET MVCで承認が失敗した場合のカスタムエラーの表示方法
[Authorize(Roles = "DOMAIN\\Group")]
public ActionResult Index()
{
...controller action code here
}
を次のように私は私が属しているDOMAIN \グループに設定した場合、私は
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" cacheRolesInCookie="false">
<providers>
<clear />
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
<authentication mode="Windows" />
<authorization>
<deny users="?" />
</authorization>
その後、私のコントローラでは、私はアクションを前置いている私のweb.configファイルで
アプリケーションが期待どおりに動作します。テスト用に偽のグループに変更すると、ユーザー名とパスワードのダイアログが表示されます。明らかに、認証は決して起こりません。ダイアログでキャンセルをクリックすると、401エラーページにリダイレクトされます。
web.configファイルの定義では、Windowsユーザーのみが接続できます.Windowsユーザーが選択したグループに属していない場合は、ユーザー名の入力を求めずに特定のビューにリダイレクトするだけですパスワード。
DOH !! .netとC#についてはかなり新しいので、カスタム検証クラスについては忘れてしまった。チャームのように働いた –