2012-03-28 8 views
1

私は重要なデータをオンラインで保存する予定のクライアント用の新しいプロジェクトに取り組んでいます。私はMS SQLに変換された古いアクセスデータベースを与えられましたが、どのような種類のログインが使用するべきなのでしょうか。ASP.NETログインとセキュリティ

私はSSLでサイトを実行するつもりですが、フォーム認証や別のものと一緒に行くべきかどうかはわかりません。

アドバイスをいただければ幸いです。

答えて

2

フォーム認証はSSLで動作する場合は問題ありません。マイクロソフトは、SSLとフォーム認証を使用する利点についての記事を掲載しました。あなたが公共のインターネット上でこれを実行している場合

Help Secure Forms Authentication by using Secure Socket Layers (SSL)

+0

リンクのための乾杯私はそれを今すぐチェックします! – bExplosion

1

その後、間違いなく、会員関連取引を暗号化するために、SSLを使用しています。 SSLを使用する "コスト"は低いです - パケットスニッフィングやFiresheepのようなツールのリスクは非常に高くなる可能性があります。はいフォーム認証で行くユーザーのための指導、CAPTCHA等...

+0

返信いただきありがとうございます!フォームが最良の方法だと思われます! – bExplosion

1

-

基本認証はOKですが、私はあなたがサインアップし、ログイン経験を制御することができますという理由だけでフォーム認証で行くことに誘惑されるだろうセキュリティの最初の部分として。どうして ?なぜなら、この種のログインはすべてクッキーをベースにしており、基本的な考え方はフォーム認証によって非常に優れているからです。

ここでは、データを保護するための対策を追加する必要があります。

  1. は、セットアップは、フォーム認証を修正することを確認してください - REF:Can some hacker steal the cookie from a user and login with that name on a web site?
  2. は一緒にIPアドレスや他の情報とユーザーからのすべてのログインをしてくださいと何かが間違っていることを認識するためのパターンを作ります。 ref:https://stackoverflow.com/a/9645770/159270
  3. いくつかの重要な操作にセキュリティパスワードを追加します。
  4. 異なるセキュリティレベルを追加して使用します。
  5. 認証フォーム以外の管理者は、ログインのための追加のセキュリティテストを追加することができます。
2

あなたはWindows認証を使用して、内部の唯一のアプリケーションで作業しようとしている場合。これは、すぐに作業し、使用することだけですします:

<authentication mode="Windows"/> 

あなたがフォーム認証を使用する場合は、あなたには、いくつかの仕事を取り、独自のストレージと暗号化メカニズムを構築することができます。または、データベースにテーブルを追加して、ASP.NETがユーザー名、パスワード、および忘れたパスワード機能を簡単に提供できるようにします。これはあなたのために必要なテーブルを追加するコマンドプロンプトツールを実行することによって達成される:

aspnet_regsql.exe

これは、あなたがSQL Serverに追加したい機能を設定することを可能にするウィザードを起動します。

は、同じようにSQLにログインすることで、会員のテーブルを追加するには、アカウントの使用ログイン:

aspnet_reqsql.exe -S <server> -D <database> -A m -E

それとも、特定のユーザー、使用として接続する場合:

aspnet_reqsql.exe -S <server> -D <database> -A m -U <username> -P <password>

how to use Forms Authentication with SQL Server in ASP.NET 2.0のチュートリアルへのリンクです。 ASP.NET 2.0のため、期限切れになっていますが、ASP.NET V2以降のバージョンでも同じです。

関連する問題