ASP.NET中基于soaphead的webservice安全机制
来源: 阅读:678 次 日期:2016-08-08 14:35:33
温馨提示: 小编为您整理了“ASP.NET中基于soaphead的webservice安全机制”,方便广大网友查阅!

使用soaphead方法可以在webservice的请求中增加头部信息,当有人调用我们的webservice时,可以通过查询这个请求的头部信息并验证来防止该软件以外的程序调用webservice

一、服务端部分

using System;

using System.Web.Services;

using System.Web.Services.Protocols;

//请注意此命名空间必须有别于代理动态连接库上的命名空间。

//否则,将产生诸如多处定义AuthHeader这样的错误。

namespace SoapHeadersCS

{

//由SoapHeader扩展而来的AuthHeader类

public class AuthHeaderCS : SoapHeader

{

public string Username;

public string Password;

}

//[WebService(Description="用于演示SOAP头文件用法的简单示例")]

public class HeaderService

{

public AuthHeaderCS sHeader;

[WebMethod(Description = "此方法要求有调用方自定义设置的soap头文件")]

[SoapHeader("sHeader")]

public string SecureMethod()

{

if (sHeader == null)

return "ERROR:你不是VIP用户!";

string usr = sHeader.Username;

string pwd = sHeader.Password;

if (AuthenticateUser(usr, pwd))

{

return "成功:" + usr + "," + pwd;

}

else

{

return "错误:未能通过身份验证";

}

}

private bool AuthenticateUser(string usr, string pwd)

{

if ((usr != null) && (pwd != null))

{

return true;

}

return false;

}

}

}

二、客户端部分加上验证的请求

WebService webservice = new WebService();

AuthHeaderCS auth = new AuthHeaderCS();

auth.Username = "vip";

auth.Password = "vippw";

webservice.AuthHeaderCSValue = auth;

textBox1.Text = webservice.SecureMethod();

以上就是基于soaphead的webservice安全机制全部内容,希望能给大家一个参考

更多信息请查看 网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们| 联系我们| 人才招聘| 网站声明| 网站帮助| 非正式的简要咨询| 简要咨询须知| 加入群交流| 手机站点| 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00) 版权所有:
云南网警报警专用图标
Baidu
map