0

私は研究プロジェクトとしてASP.netでWebサイトを開発しました。私のweb.configファイルでは、ウィンドウとして認証モードがあります。そして、appsettings接続文字列を使用してSQL2005データベースに接続しています。これがどのような認証なのか知りたいのですが?これは窓ですか?フォーム?または匿名認証?

SQL 2005にユーザーテーブルがあり、最初の画面はログインページです。明らかに、このユーザーテーブルには、ユーザー入力に一致するユーザー名やパスワードなどのログインの詳細が含まれています。

承認と承認に関する多くの投稿を読んだことがわかりませんが、これについてはクリアしてください。前もって感謝します。

4

3 に答える 3

4

現在、Windows認証を使用しています。Windowsのユーザー名とパスワードは、asp.netに対してユーザーを認証するために使用されます。

ユーザーテーブルに書き込むログインページは、asp.netフォーム認証になります。

SQLサーバー認証は完全に別の問題であることに注意してください。データベースに対して認証するのはコード次第です。その際、web.configファイルの接続文字列を使用できます。

于 2012-10-29T10:26:47.003 に答える
1

データベースにアクセスするために文字列接続のクレデンシャルをカスタマイズする場合は、Integrated Security またはを使用できます。Trusted_Connection

値がtrueの場合、認証に使用されるWindowsアカウントの現在の資格情報。

注意:あなたが使用できると思いますFormsAuthentification(あなたはWindows認証を持っています)

リンク: http: //msdn.microsoft.com/fr-fr/library/system.data.sqlclient.sqlconnection.connectionstring (v = vs.80).aspx

フォーム認証:

<authentication mode="Forms">
 <forms loginUrl="~/login.aspx">
</forms>
</authentication> 
<authorization>
  <deny users="?" />
</authorization>

クリック後

 if (IsAuthenticatedValue) //You can adjust  your condition
  {
      FormsAuthentication.RedirectFromLoginPage (.., ..);
  }
  else
  {
      Console.WriteLine("Invalid credentials. Please try again.");
  }

リンク: http: //msdn.microsoft.com/fr-fr/library/xdt4thhy (v = vs.80).aspx

于 2012-10-29T10:32:59.633 に答える
0

ここでの他の答えに加えて:

ユーザーがログインしたら、セッションを作成し、次のようなものを使用してユーザーがログインしたという事実を保存します。

Session["LoggedIn"] = true; 
Session["Username"] = username;

次に、コードを使用してログインしているかどうかを確認し、それを使用してページへのアクセスを承認します。したがって、ログインしている場合はページの読み込み時にページの読み込みを続行し、そうでない場合はログインページに送信します。

ユーザーをログオフする場合は、Session.Clear();を実行するだけです。

于 2012-10-29T10:32:18.437 に答える