使用Web服务使用jquery检查用户名或密码是真还是假

时间:2015-12-13 10:38:59

标签: c# jquery sql-server web-services

这是我的C#代码

<script>
    $(document).ready(function () {
        $('#btnLogin').click(login);
    });
    function login() {
        var kullaniciAd = $('#userName').val();
        var sifre = $('#password').val();
        $.ajax({
            url: "http://localhost:63000/LoginService.asmx/Login",
            type: "POST", //or should it be GET? 
            dataType: "json",
            data: JSON.stringify({ kullaniciAd: kullaniciAd, sifre: sifre }),
            contentType: "application/json; charset=windows-1254",
            success: function () {
                alert("");// i have an alert div down there how can i show  if login is successful or not in that alert div
            },
            error: function (e) {
                alert(e.statusText);
            }
        })
    }
</script>
<%--<div class="alert alert-danger alert-dismissable">
        <button contenteditable="false" type="button" class="close" data-dismiss="alert"
              aria-hidden="true">
              ×</button>
              <strong>Well done!</strong>You successfully read this important alert message.
</div>--%>

这是我的aspx页面

myApp.controller

它似乎很容易,但我无法决定我是否在Web服务中检查true或false并且只发送jquery一个数据(true,false)或者在jquery中检查true或false是否为true或false web方法??

1 个答案:

答案 0 :(得分:0)

这是我第一次看到登录逻辑,检查是否有任何用户匹配输入的密码。我的建议..不要。

更好的方法是检查具有给定用户标识的用户是否存在,然后从数据存储中返回存储的密码(和盐)。下一步是散列输入的普通密码并使用存储的密码进行检查值。这为您提供了三种可能的结果

  • 用户已知,但输入的密码不正确
  • 找不到用户(sql查询返回0结果)
  • 找到了用户并且密码正确

您需要做的唯一选择是您是否要报告前两种情况之间的差异。有些人认为这是一个安全问题,因为它可能用于网络钓鱼..你可以找出你的系统注册了什么用户,这么多系统只会报告“用户/密码组合不正确”

有关使用散列来保护密码存储的更多信息 https://crackstation.net/hashing-security.htm