Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security HTTPS或其他智能身份验证方法_Security_Authentication_Web Applications_Https - Fatal编程技术网

Security HTTPS或其他智能身份验证方法

Security HTTPS或其他智能身份验证方法,security,authentication,web-applications,https,Security,Authentication,Web Applications,Https,一点背景知识:我将要构建一个Web服务器,当我开始使用它时,它可能是apache的最新版本。它将被更新与感官信息从一个临时安全系统,我有 作为对手,我正在设计一个应用程序来配合它,它将自动联系网络服务器,大约每1.5分钟提取一次感官信息 我希望有一个身份验证方法,这样普通的Bob就看不到这些信息,这主要是因为服务器中也会有一些命令和控制 问题是:我觉得简单的用户名和密码是错误的做法,因为它不是动态的,理论上,频繁发送相同的凭据可能会很危险,那么是否有其他身份验证方法可以缓解这种情况 问题是。2:

一点背景知识:我将要构建一个Web服务器,当我开始使用它时,它可能是apache的最新版本。它将被更新与感官信息从一个临时安全系统,我有

作为对手,我正在设计一个应用程序来配合它,它将自动联系网络服务器,大约每1.5分钟提取一次感官信息

我希望有一个身份验证方法,这样普通的Bob就看不到这些信息,这主要是因为服务器中也会有一些命令和控制

问题是:我觉得简单的用户名和密码是错误的做法,因为它不是动态的,理论上,频繁发送相同的凭据可能会很危险,那么是否有其他身份验证方法可以缓解这种情况

问题是。2:很明显,我想要一个加密的频道,如果https每一分半钟就试图重新协商一次,它会绊倒自己吗

我还没有开始这个项目,更不用说选择任何语言来写,这意味着我对建议非常开放,任何帮助都非常感谢

问题是:我觉得简单的用户名和密码是错误的 因为它不是动态的,也不是理论上的 频繁发送相同的凭证可能会很危险,情况也是如此 是否有其他身份验证方法可以缓解此问题

您可以使用允许通过Google帐户登录

或者,您可以使用say或通过SMS实现双因素身份验证,以证明登录的用户具有多个身份验证因素。这些因素可能是:

  • 您知道的信息(例如密码)
  • 您拥有的东西(例如,提供一次性密码的手机)
编辑:重新阅读您的问题-是的,您可以使用用户名和密码(通过HTTPS)进行身份验证,但是您应该在客户端存储会话标识符,以后只需发送此标识符,而不是每次发送用户名/密码。这是更安全的,因为它可以安全地存储在客户端,并且如果公开,标识符可以很容易地撤销

问题是。2:很明显我想要一个加密的频道,对吗 如果它试图每一分半钟重新谈判一次,它会自食其果吗


不,这就是它的设计目的。浏览器将在一段时间内保持HTTPS连接的打开状态。此外,在需要建立新连接的情况下,他们将使用会话恢复,而不是执行完整的HTTPS握手。会话恢复比建立一个全新的会话要快得多。有关更多信息,请参阅。

1。一旦http服务器每一分钟半就没有负载,https就没有问题了。2.如果你想让事情变得真正安全(昂贵),你可以在客户端证书上加一个llok,或者你可以通过配置的IP地址来限制请求,但这只适用于静态地址。但最重要的是:你所描述的是一个相当大的项目。你知道等待你的工作量有多大吗?谢谢你的回复。我想我已经掌握了这个项目的范围。我当然愿意付出努力,以尽可能少的成本使其尽可能安全。我以前做过一个类似的项目,但没有身份验证和安全性。我考虑过从可信IP领域着手,但由于它将在我的android上运行,所以根本无法工作。我唯一能想到的另一种方法是在同一台机器上设置VPN,并通过本地主机与Web服务器联系,但这肯定会变得麻烦,坦率地说,我不知道如何从android客户端实现自动化(如果有的话)。我还没有考虑客户端证书,你为什么说昂贵?一个好问题,我不得不承认我的经验有限。我之所以写“昂贵”,是因为证书需要签名才能有意义,需要由可信的权威机构签名。这就是为什么您通常必须付费才能正确设置https服务器的原因。我假设您还必须为每个客户端证书付费,因为每个证书都必须在创建后签名。然而,我想得越多,我就越同意这不是真的:你可以创建一个自己的CA并自己签名。既然你知道CA,你就可以信任它。这与https示例不同……但是,这样的客户端证书不应该是唯一的身份验证手段,因为证书可以被复制和窃取,而不会引起注意。因此,是的,它们提供了一个优雅的选项来提高安全性和识别客户,但它们不应该被高估。很好的资源。非常感谢。出于好奇,您是否熟悉android设备的VPN api?我还与上面的人讨论了如何将客户端证书作为您自己的CA颁发。这是否是一种很好的方法,可以确保在与HTTP身份验证结合使用时(在证书被盗的情况下)有人是谁?