WebService soapheader加密
来源:互联网 发布:卡西欧回收骗局淘宝 编辑:程序博客网 时间:2024/06/15 18:09
WebService soapheader加密
WebService head加密,可以对WebService设置访问用户名和密码,增强WebService的安全性 使WebService只能被授权用户使用。
具体实现步骤:
1、 定义一个soapheader派生类用来实现WebService访问权限验证
具体实现步骤:
1、 定义一个soapheader派生类用来实现WebService访问权限验证
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
/// <summary>
///MySoapHeader 的摘要说明
/// </summary>
public class MySoapHeader:System .Web .Services .Protocols .SoapHeader
{
private string _uname = string.Empty;//webservice访问用户名
public string Uname
{
get { return _uname; }
set { _uname = value; }
}
private string _password = string.Empty;//webservice访问密码
public string Password
{
get { return _password; }
set { _password = value; }
}
public MySoapHeader()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
public MySoapHeader(string uname, string upass)
{
init(uname, upass);
}
private void init(string uname, string upass)
{
this._password = upass;
this._uname = uname;
}
//验证用户是否有权访问内部接口
private bool isValid(string uname, string upass, out string msg)
{
msg = "";
if (uname == "admin" && upass =="admin")
{
return true;
}
else {
msg = "对不起!您无权调用此WebService!";
return false;
}
}
//验证用户是否有权访问外部接口
public bool isValid(out string msg)
{
return isValid(_uname, _password,out msg);
}
}
2、 定义有需要验证的WebService。
using System;
using System.Collections;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;
/// <summary>
///test 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
//若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
// [System.Web.Script.Services.ScriptService]
public class test : System.Web.Services.WebService {
public test () {
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
public MySoapHeader myheader = new MySoapHeader();
[WebMethod]
public string HelloWorld() {//普通WebService,无需验证
return "Hello World";
}
[SoapHeader("myheader")]//加入此头部的WebService需要验证,不加则为普通WebService无需验证
[WebMethod(Description = "根据产品编号查询产品的价格", EnableSession = true)]
public string GetProductPrice2(string ProductId)
{
string msg = "";
//验证是否有权访问
if (!myheader.isValid(out msg))
{
return -1;//返回错误信息
}
return ProductId;
}
}
3、 客户端调用方法
引用WebService定义WebService名称为:Myservice
using System;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
myservice.test te = new abc.test();
myservice.MySoapHeader myhead = new MySoapHeader();
myhead.Uname = "admin";//输入WebService访问用户名
myhead.Password = "admin";//输入WebService访问密码
te.MySoapHeaderValue = myhead;//
string test = te.GetProductPrice2("ok!");
Response.Write(aa);//用户名、密码输入正确则输出ok 否则输出 错误msg
}
}
- WebService soapheader加密
- WebService soapheader加密
- webService访问加密-Soapheader
- WebService soapheader加密
- webService访问加密-Soapheader
- webservice soapHeader
- webservice加密,通过SoapHeader来增强Web Service的安全性
- php webservice soapheader 身份验证
- webservice SoapHeader 验证
- Web Service SoapHeader加密
- WebService基于SoapHeader实现安全认证[webservice][.net][安全][soapheader]
- WebService中如何使用soapheader
- WebService中如何使用soapheader
- java soap webservice(含有SoapHeader)
- (.NET)在webservice中简单使用SoapHeader
- webservice soapheader 身份认证 wsdl方式
- WebService基于SoapHeader实现安全认证
- WebService基于SoapHeader实现安全认证
- Five Steps to Writing Windows Services in C
- discuz论坛用sql语句批量插入测试数据(百万级别)
- 汽轮机调节系统-静态特性曲线
- flex读取.xml文件
- Hibernate经典问题收集
- WebService soapheader加密
- Android游戏发展趋势分析
- 关于java 绝对值得收藏的书籍
- ACCESS数据库不能在国外英文操作系统上运行
- 彻底卸载Oracle
- 网络流
- 论中国IT行业的现状
- [JAVA]全新java初学者实践教程(全)
- dl dt dd样式