2009-07-17 21 views
0

WebアプリケーションのいずれかでForms認証を使用しています。以下は私が使用しているコードですASP.NET 2.0のフォーム認証

a。 のWeb.config

forms loginurl="***" defaulturl="***" 

B。 Login.aspxの

OnAuthenticate(object sender, AuthenticateEventArgs e) 
{ 
    e. Authenticated = validateuser(Login1.UserName, Login1.Password) 
    if (e.Authenticated =true) 
    { 
    // fetch roles 
    } 
} 

C。 Global.asaxの

Application_OnPostAuthenticateRequest() 
{ 
    if (user.Authenticated && Authenticationtype="form") 
    { 
    // Fetch roles and user data and save in httpcontext 
    } 
} 

私は私が正しいかないですかわかりません。私はLogin.aspxページとGlobal.asaxページに疑問があります

私はその有料デジタル証明書を使っていないので、SSLを使用していません。では、データの安全な転送を行うにはどうすればよいのですか?認証CookieをファイルまたはURLとして使用する必要がありますか?クッキーファイルをクライアントとサーバPCでどのように見つけることができますか?

フォーム認証を使用する最良の方法はありますか?

答えて

0

role providerもありますか?あなた自身のものを使うのではなく、それを使うことができない理由はありますか?ビルトインされたものは、ファイルとクラスとメソッドに対するロールベースの認証をサポートしています。

フォーム提出をSSLなしで安全にすることはできません。それ以外の方法はありません。ビルトインされたビットは、署名されたクッキーを使用しています。また、enable encryption on the cookieもできます。ビルトインビットを使用すると、クッキーを探す必要はありません。これはASP.NETによって処理され、クライアント側のスクリプトアクセスから保護され、Cross Site scriptingの可能性を制限します。

関連する問題