开发Web服务 - 带有密码摘要认证的UsernameToken标头

时间:2013-08-02 22:53:56

标签: web-services soap wse usernametoken wsse

我们正在尝试通过客户端证书和消息身份验证来托管ABC服务器 客户端将提供需要服务理解的WSSE UsernameToken安全标头,并且必须进行适当的身份验证。

有两种选择 -
1. WCF服务 - 但它不支持开箱即用的消解密码,因此我们可能需要找到一种使用自定义绑定或其他调整的方法。
2.使用WSE 3.0的Web服务 - 我们需要了解如何开发WSE 3.0服务并利用它来处理以下安全标头。
WSE 3.0的先决条件是什么,需要哪些工具和库?

任何帮助将不胜感激。

预计会在请求中使用soap标头。

<s:envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing"
    xmlns:u="http://docs.open.org/wss/2004/01/wss-wssecurity-utility-1.0.xsd">
    <s:header>
        <a:action s:mustunderstand="1">http://service</a:action>
        <a:messageid>urn:uuid:3bc37759-01fk-12er-2317-22068daf2501</a:messageid>
        <a:replyto>
            <a:address>http://www.w3.org/2005/08/addressing/anonymous</a:address>
        </a:replyto>
        <a:to s:mustunderstand="1">https://service.svc</a:to>
        <o:security s:mustunderstand="1" xmlns:o="http://docs.open.org/wss/2004/01/wss-wssecurity-utility-1.0.xsd">
            <u:timestamp u:id="_0">
                <u:created>2013-08-01T07:55:10.582Z</u:created>
                <u:expires>2013-08-01T08:00:10.582Z</u:expires>
            </u:timestamp>
            <wsse:usernametoken wsu:id="b77a80e6-4d1d-49d7-b8f1-35fecc18caae" xmlns:wsse="http://docs.open.org/wss/2004/01/200401-wss-wssecurity-secext-1.0.xsd"
                xmlns:wsu="http://docs.open.org/wss/2004/01/200401-wss-wssecurity-utility-1.0.xsd">
                <wsse:username>
                    <!-- Removed-->
                </wsse:username>
                <wsse:password>
                    <!-- Removed-->
                    <!--Digested password -->
                </wsse:password>
                <wsse:nonce>
                    <!-- Removed-->
                </wsse:nonce>
                <wsu:created>2012-12-01T19:45:30.540Z</wsu:created>
            </wsse:usernametoken>
        </o:security>
    </s:header>
    <s:body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    </s:body>
</s:envelope>

谢谢,

1 个答案:

答案 0 :(得分:0)

我从下面的链接得到了答案 http://zamd.net/2010/07/12/passworddigest-authentication-in-wcf/

谢谢,