Intranet Web应用程序的http或https身份验证

时间:2009-11-25 18:06:39

标签: http authentication login https

我正在开发一个Intranet应用程序,我想进行安全身份验证。

一种方法可以使用“https”。问题是服务器没有可信证书,因此对客户端来说有点烦人,因为浏览器不信任证书和投诉带有可怕的消息。

使用http会破坏用户密码,但可以与“Digest access authentication

结合使用

您怎么看?

5 个答案:

答案 0 :(得分:6)

截至2015年11月,您can't buy certificates for internal domains,据我所知,唯一的选择是在客户端上预安装证书。不是一个好的解决方案。

如果您希望保持内部域的私有性,另一种可能性是创建一个公共域:mycompany.com,然后在内部运行您自己的DNS服务器来解析您的内部域:accounting.internal.mycompany.comhr.internal.mycompany.com等等。然后我相信您可以使用mycompany.com的通配符证书。我还没有测试过这个解决方案。

答案 1 :(得分:5)

购买域名和可信证书?如果你到处逛逛,它们真的不再贵了。

话虽如此,摘要访问身份验证对于身份验证来说是相当安全的。使用http而不是https,即使密码不是,您通过网络发送的所有信息都将是纯文本。任何可以将笔记本电脑插入运行WireShark等应用程序的Intranet的人都可以查看来回发送的所有信息。如果您关心的信息没有受到损害,http将无法满足您的需求。

答案 2 :(得分:4)

您有以下选择:

  1. 购买可信赖的证书。

  2. 或者,生成您自己的根证书,将其安装在所有内部网计算机上的浏览器中(您应该能够这样做,因为它是内部网),生成您自己的使用自己的根证书签名的服务器证书。这实际上是公司经常做的事情。

  3. 注意:如果您希望进行表单身份验证(带有用户,密码的HTML表单,使用应用程序的可视样式的登录页面,更好的错误密码错误报告,可能还有其他功能,如摘要访问身份验证)。记住我“或”忘记密码“)。

答案 3 :(得分:2)

如果您需要它是完全安全的,您应该购买SSL证书。

从您提供的维基链接:

<强>缺点

摘要访问身份验证旨在作为安全权衡;它旨在取代非常弱的未加密的HTTP基本访问身份验证。但是,它无意替换强身份验证协议,例如公钥或Kerberos身份验证。

我认为你的答案是:)

答案 4 :(得分:0)

这些是您的选择:

  1. 如果主要是Windows主机,则可以Distribute Certificates to Client Computers by Using Group Policy | Microsoft Docs 并以此方式使用您自己的自签名证书。

    • 非Windows用户或不在域中的Windows计算机将必须 经历安装的环和警告 手动正确证书或允许自签名证书。 糟糕的用户体验。
  2. 您使用正确的域名,真实证书和凌乱的DNS www.mycompany.com解析到外部站点的配置, 但是wiki.mycompany.com是内部网站(但是请不要将内部网站 外部可见DNS记录中wiki.mycompany.com的地址!)

  3. 您根本不使用HTTPS,而是使用HTTP。可能是通过发明 自己的登录页面安全性(赞!)

他们都糟透了。

尤其是如果您要分发企业就绪的现场应用程序,并且您事先不了解客户的网络和DNS配置。