1

この質問はすでにたくさん聞かれている(そして答えられている)ことは知っていますが、私の状況は独特だと思います。

ASP.NETSqlMembershipProviderを使用しています。ただし、次のように、ユーザーをweb.configに直接追加することで保護したい、安全性の低いコンテンツもいくつかあります...

<forms loginUrl="login.aspx" defaultUrl="default.aspx">
  <credentials passwordFormat="Clear">
    <user name="user1" password="123" />
    <user name="user2" password="456" />
  </credentials>
</forms>

このメソッドをSQLメンバーシッププロバイダーと一緒に使用することは可能ですか?もしそうなら、どのように?

これを行うのは悪い習慣だと私は知っています。これは、Webサイトの一部をasp.netアプリケーションに移動する際の足がかりにすぎません。これらのパスワードの一部は、データベースにアクセスしなくても簡単に編集できるようにしたいと考えています。

4

2 に答える 2

0

私はここで私の答えを見つけました:ASP.NET - web.configファイルの資格情報によるログイン制御

私の ValidateUser ロジックでは、以下を使用する必要がありました。

if (_provider.ValidateUser(username, password)) {
  return true;
}
else {
  return FormsAuthentication.Authenticate(username, password);
}

プロバイダーを使用して認証する方法は知っていましたが、重要なのは ELSE 句と、web.config 資格情報を使用した認証でした。

于 2011-04-04T14:07:55.510 に答える
0

これらのパスワードの一部は、データベースにアクセスせずに簡単に編集できるようにしたいと考えています。

私が理解していないその論理は何ですか。メンバーシップ プロバイダーにパスワードを簡単に変更する機能が組み込まれているのに、なぜ 2 つ必要なのか。

現在、一度に両方を使用できますが、いつ何を使用するかを決定するメカニズムが必要です。または、認証を 2 回行う必要があります。つまり、最初に web.config に対してユーザーを検証し、失敗した場合はメンバーシップ DB に対して検証します。

ただし、メンバーシップに明示的に依存する他のものがある場合、それらのいくつかはサイトで機能しません。

したがって、認証、はい、必要に応じて実行できます。

于 2011-04-01T17:21:10.563 に答える