如何在web服务中实现安全性
本文关键字:实现 安全性 服务 web | 更新日期: 2023-09-27 18:02:11
我已经创建了一个工作良好的web服务,但现在我需要实现安全性,以便只有我的客户端可以访问此服务
web服务托管在印度,客户端在英国和西班牙,他们正在尝试访问web服务的url。
1:现在我需要确保web服务只对这两个客户端可用,任何访问此url的人都不应该被给予访问者?
2:我需要为这两个客户端设置不同的用户名和密码,以便当英国客户端试图创建代理类时,他也应该输入用户名和密码来访问它。
希望我的问题是明确的,我的客户端应该使用我的web服务,而不是其他人
您应该使用SSL对运行服务的站点进行加密。然后实现一个自定义SoapHeader。
public class SoapAuthenticationHeader : SoapHeader
{
public string UserName { get; set; }
public string Password { get; set; }
}
还可以包含API密钥或其他认证方法。
public SoapAuthenticationHeader AuthHeader;
[SoapHeader("AuthHeader")]
[WebMethod()]
public ServiceResponse<bool> Update(int clientId)
进一步参考,http://msdn.microsoft.com/en-us/library/77hkfhh8.aspx
查看这里列出的WCF身份验证和授权功能。