我正在构建一个网络服务,遇到了一些麻烦,我应该选择。为此,我希望有人能为我指明正确的方向。我发现了很多文章,但它们中没有一个有我想要的选项。
我想让webservice做的是:客户端应该从ASMX文件中获得一个WSDL。在该服务中,有一个未经过身份验证的one方法,名为“Authenticate( String,String)”,它返回一个自定义AuthenticationSoapHeader。AuthenticationSoapHeader与used应用程序中使用的System.Web.Security.FormsAuthenticationTicket类完全相同,而且最好是相同的。
http://www.codeproject.com/Articles/4398/Authentication-for-Web-Services-using-SOAP-headers
http://www.codeproject.com/Articles/27365/Authenticate-NET-Web-Service-with-Custom-SOAP-Head
我正在考虑使用上面的文章来实现这一点,并更改将被加密的票证的用户名密码组合,包括过期票证的日期时间戳。我的问题。
soap请求将遍历Https SSL,并且不需要在客户端进行进一步加密。提前谢谢你。
诚挚的问候,
丹尼
发布于 2014-01-21 15:31:34
我不能回答所有这些问题,但我可以回答以下几个问题:基于您的描述,IMO WCF是该项目所需的工具集。WCF有许多不同的口味(http、TCP等)对于如何实现安全性,每个选项都有几个不同的选项。
WCF有用于用户/pwd身份验证的选项,也可以构造自定义方法,也可以构造一个Login()函数,该函数以UserID和密码为参数,返回布尔值。还有一些选项允许您在主程序接收请求之前进行身份验证。这就是内置的UserID/密码身份验证的功能。
如果您在主机上实现SSL,假设您使用的是以http为中心的绑定,那么您将不需要在客户端进行任何加密,因为WCF软件将在您正确配置主机和客户端软件之后处理这些问题。实际上,你的WCF客户端应用程序会表现得像一个浏览器,在封面下处理所有讨厌的证书内容。
WCF还允许您( a)以独立的windows服务(称为“自托管”)运行web服务,或( b)允许您在IIS后面配置web服务,这具有一些优点。如果需要,WCF还将为客户端提供WSDL。
WCF还有其他一些优点;如果周一上午8点有10,000个并发用户访问您的web服务,WCF会自动排队处理它无法处理的请求,并按顺序处理它们。我用这样的数字猛击了我们的测试web服务,程序从未崩溃,处理超过150个登录和文件上传/秒。WCF也适用于Java、iOS和安卓。
https://stackoverflow.com/questions/21258225
复制相似问题