在Visual Studio 2010中生成WS-security usernameToken标头

时间:2011-09-22 19:25:57

标签: asp.net visual-studio-2010 ws-security

我需要使用UsernameToken WS-Security实现直接身份验证。

我正在使用Visual Studio 2010使用Java Web服务;使用UsernameToken标头进行身份验证。

我想我可以使用WSE 3.0 - > http://msdn.microsoft.com/en-us/library/ff647197.aspx

但是,Visual Studio 2010不支持WSE 3.0。我还发现http://www.junasoftware.com/blog/how-to-use-wse-3-in-visual-studio-2010.aspx 但我在Windows 7机器中找不到AddIn文件: - (

回到正方形1;如何在Visual Studio 2010中生成WS-security usernameToken标头?

1 个答案:

答案 0 :(得分:1)

我记得几个月前这样做,这让人头疼。我想我确实在C:\ Program Files \ Microsoft WSE \ v3.0 \ Tools中找到了该文件,但我可能错了。如果你能够使它工作,你可以创建一个继承自SoapHeader的类:

public class SecuredWebServiceHeader : System.Web.Services.Protocols.SoapHeader
{
    public string UserName { get; set; }
    public string Password { get; set; }
    public string AuthenticationToken { get; set; }
    public SecuredWebServiceHeader() { }

}

之后,在WebServices上声明一个SecuredWebServiceHeader变量的实例,并将[System.Web.Services.Protocols.SoapHeader("SoapHeader")]属性添加到所有WebMethod中。对于SecuredWebServiceHeader类的AuthenticationToken属性,我只使用/生成Guid对象并将其用作令牌。我有一个AuthenticateUser方法,用于检查提供的用户名是否有效。

如果您没有找到Addin文件,请告诉我,我会更加努力地找到它。

祝福这些Web服务。

Hanlet