Visual Studio 2015で初めてのWebサイトプロジェクトです。Username、Password、Email、Countryのようなユーザー情報を含むSQLデータベースを作成しました。また、新しいユーザーがそこに詳細を入力できるユーザー登録ページを作成しました。これらの詳細がデータベースに追加されます。これはすべて正常に動作します。ウェブサイトのパスワードとユーザー名を確認する方法
しかし、私はロードマップでユーザー名とパスワードを検証して、SQLデータベースのユーザーデータを含む行に格納された値に対してユーザーがメンバーのみのページにアクセスできるようにしようとしました。
Heresユーザーがログインボタンをクリックしたときのコードスニペット。
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MembersConnectionString"].ConnectionString);
con.Open();
string checkUser = "SELECT * FROM Members where Username= '" + TextBoxSignUser.Text + "' and Password= '" + TextBoxSignPass.Text + "'";
SqlCommand cmd = new SqlCommand(checkUser, con);
cmd.ExecuteNonQuery();
con.Close();
私は何をする必要があるかを知っているが、おそらく以下この擬似コードのようなものですが、私は、データベースに格納された値に対して、この情報を有効に取り掛かるする方法がわからないと思います。
if ("Username" and "Password" == the value of Username and Password TextBox.Text)
{
Response.Write("Sign in successful");
Response.Redirect("MemberTestPage.aspx");
}
else
{
Response.Write("Details incorrect, Please try again")
}
あなたは完全にSQLインジェクションやパスワードのハッシュ化の概念を理解するまで、ユーザーとパスワードに関するコードを書いてみるべきではありません。 –
こんにちはPeterさん、この例は、簡単なログインプログラムを使用するためのものです。情報を安全に保存できることがわかるまで、重要なデータはデータベースに保存されません。私はすでにパスワードハッシュ技術とSQLインジェクションを回避する方法について学び始めています。 アドバイスありがとうございます – lostintranslation