使用用户名和密码 soap 请求的 WCF 身份验证

WCF authentication with username and password soap request

我想使用用户名和密码对 WCF 服务请求进行身份验证 接收到的请求 soap header 将是这样的, 那么我应该如何配置wcf服务来检查数据库中的用户名和密码。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:ns="http://schemas.datacontract.org/2004/07/">
    <soapenv:Header>
        <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
            <wsse:UsernameToken wsu:Id="UsernameToken-2">
            <wsse:Username></wsse:Username>
            <wsse:Password></wsse:Password>
            </wsse:UsernameToken>
        </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
        <tem:RequestForCustomsExemption>
            <customsExemptionRequest>
                <BILL_NUMBER>12583603</BILL_NUMBER>
            </customsExemptionRequest>
        </tem:RequestForCustomsExemption>
    </soapenv:Body>
</soapenv:Envelope>

您需要使用自定义 UsernamePasswordValidator 扩展。本文应包含您需要的所有信息:How to: Use a Custom User Name and Password Validator