Php 实现用户和请求身份验证

Php 实现用户和请求身份验证,php,web-services,security,https,Php,Web Services,Security,Https,请原谅我的无知,因为我几乎没有网络开发经验 我已经实现了一个简单的机制,通过该机制我散列用户密码(作为post/get参数发送)并将其存储在数据库中。用户成功登录后,我将用户id(数据库中的PK)返回给客户端。后续请求必须具有用户ID,该ID用作验证请求的基本机制 我已经读过一些机制,从简单的http身份验证开始,使用salt散列(我正在使用),实现对看似复杂的OAuth身份验证的访问令牌。啊!!也许最后是关于https的 撇开最后两个我还没有完全理解的问题不谈,我似乎有一个非常基本的问题,我还

请原谅我的无知,因为我几乎没有网络开发经验

我已经实现了一个简单的机制,通过该机制我散列用户密码(作为post/get参数发送)并将其存储在数据库中。用户成功登录后,我将用户id(数据库中的PK)返回给客户端。后续请求必须具有用户ID,该ID用作验证请求的基本机制

我已经读过一些机制,从简单的http身份验证开始,使用salt散列(我正在使用),实现对看似复杂的
OAuth
身份验证的访问令牌。啊!!也许最后是关于https的

撇开最后两个我还没有完全理解的问题不谈,我似乎有一个非常基本的问题,我还没有找到答案

很抱歉,这不是一个直接的编程问题,但我问的原因是我在谷歌上找不到答案,或者我没有使用正确的搜索关键字

问题是,考虑到访问令牌和api密钥等的所有机制,即使我要实现这个机制但不使用https,实现它们还有什么意义吗?我的意思是,就像任何人都可以嗅探到我的明文密码或用户id一样,他也可以嗅探到令牌/密钥,然后恶意使用,从而使整个机制变得毫无用处。这是否意味着https是唯一真正安全的选择


我一定是漏掉了什么,但是如果没有HTTPS的话,我会非常感激指针。

是的,一些随机黑客可能会嗅到来自您系统的数据包,并窃取登录信息

这是否意味着https是唯一真正安全的选择

不,没有单一的“安全”选项,而是您为降低应用程序各个点的风险而实施的一系列缓解措施。HTTPS有3个不同的功能:

  • 它保证网站的身份(网站验证)
  • 它提供了内容未在中被操纵的保证 传输(数据完整性)
  • 它保证在传输过程中不会发生窃听 (数据保密)

  • 如果您不使用HTTPS,那么如果攻击者正在监视或操纵纯文本数据包,那么您谈论的所有其他安全实践都很容易变得一文不值。看看我在上的帖子,看看这在实践中意味着什么。

    这篇帖子读起来很棒。我是安全领域的新手,所以后面的部分就超过了顶部。是否有一个来源,你会建议获得所有基本的第一。我的意思是,有很多网站都在处理这个问题,但人们不知道从哪里开始。谢谢:)如果你对安全感兴趣,开始阅读我的系列文章的第1部分,从那里开始。如果是通用技术,在这里问很多问题,读很多书,等等。