2011-01-25 10 views
2

N2認証のロジックをカスタマイズして、いくつかのオプションを追加する必要があります。N2ログインロジックのカスタマイズ

いくつかのオプションを含むRadioButtonListを追加し、ログイン時にそのRadioButtonの選択に基づいてセッションvarを設定する必要があります。そうしないと、ユーザはN2のプレビューウィンドウでサイトを見ることができません。私はRadioButtonListをN2/Login.aspxに追加し、N2.Edit.Loginを拡張したカスタムログインクラスを作成し、Base.Login1_Authenticateを呼び出す前にLogin1_Authenticateメソッドをオーバーライドしてカスタムロジックを行うことができると考えました。それは拡張可能であるようには設計されておらず、その方法を無効にすることはできません。私の変更を行うためには、これらの変更を伴うカスタムコンパイルを実行する必要があります(変更を終了して拡張する必要があります)ので、N2を更新するたびに変更をやり直す必要はありません。

N2/CustomLogin.aspxを作成し、そのカスタムクラスにすべてのロジックを追加して、web.configをLogin.aspxの代わりにCustomLogin.aspxに設定することでした - これが私に正しいものを送りました私たちのラジオボタンのオプションを持たないLogin.aspx(ハードコードされた何かを仮定)にリダイレクトされました。私たちは、N2 CMSを使用している

は、.NET 4.0(MVCアプリ)に2.0.0.0

答えて

1

N2は、カバーの下に標準フォーム認証、ASP.NETメンバーシップとロールプロバイダを使用しています。ログオンしているユーザーがadminという名前であるか、3つのN2標準ロール(管理者、編集者、著者のいずれか)のいずれかになっていれば、管理サイトにアクセスできます。

アプリでは完全に別のログインページを作成することをおすすめします。ポイントは、あなたのweb.configファイル内でこのようなエントリを使用して、カスタムログインページで認証を構成する:あなたは、標準のフォームに認証原料ユーザーがサインインを取得するだけでなく、設定を行うことができ、カスタムログインフォームで

<authentication mode="Forms"> 
    <forms loginUrl="~/account/login" 
     timeout="2880" /> 
</authentication> 

あなたのセッション変数。

私はこれを数回やったことがあり、うまくいきます。あなたがそれを働かせることができない場合は、問題を示すサンプルを提供することをお勧めします。

関連する問題