1
|
Ogre Psalm33 · 技术社区 · 15 年前 |
1
4
如果您有一个公钥/私钥组合,那么客户机可以用公钥加密,然后用私钥解密。 但是,这对客户机来说太多工作了,而不是一种非常“web方法”的工作方式。 因为您将用户名和密码作为参数发送,所以您应该使用传输安全性(基本上是HTTPS),这要求您具有从受信任的证书颁发机构颁发给您的公钥/私钥组合。 应该注意的是,您的SSL加密通道与外部站点的关联是不正确的。想要加密一个通道的关键是防止中间人攻击,就像你在这里所做的那样。 您可以使用自己颁发的证书,但这需要在每台要调用Web方法的计算机上安装证书的公钥。从可信的权威那里得到一个更容易。 |
2
1
https(如前所述)是一个简单的选择。或者,您可以让IIS通过Digest或NTLM处理身份验证。你的应用仍然可以制定授权规则。NTLM是安全的,但它会损害您的互操作。否则,ad确实提供了一些摘要式身份验证方法,但我还没有使用它们测试代码。 对于Server2000域,有一个“以可逆格式存储密码”选项,它允许域控制器计算密码的MD5哈希值,以便与显示的MD5哈希值进行比较。不过,MS意识到这有点安全问题,所以Server2003实现了“高级”摘要式身份验证——它预计算哈希值。 LDAP登录应该选择MD5摘要作为身份验证类型,提供用户名,然后提供密码的MD5哈希。但是,普通的LDAP客户机可能希望MD5您自己的密码,因此您必须自己重写或创建它们。 |
3
0
我们把广告服务放在自己的网站上,解决了一个SSL证书问题。 |
4
0
我认为ssl或者ipsec可能是您最好的解决方案。 |
5
0
对于我们的特定情况,由于客户机和Web服务都在我们公司的内部网上运行,一个可能对我们有用的解决方案是使用集成的Windows NTLM身份验证在客户机端处理身份验证,然后让客户机向Web服务提供凭据。客户代码如下:
Web方法现在将如下所示:
同样,我必须强调,只有当服务器信任客户机,并且两者都与同一个Active Directory服务器通信时,这个解决方案才可能工作。对于公共Web服务,给出的另一个答案将是更好的解决方案。 有关更多信息,请参阅:
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |