我有带有 Windows 身份验证的 WCF Web 服务。
捆绑
<bindings>
<netTcpBinding>
<binding name="CommonWindowsBinding" maxReceivedMessageSize="40000000" >
<security mode="Transport">
<transport clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>
</bindings>
端点
<endpoint address="Windows"
binding="netTcpBinding"
bindingConfiguration="CommonWindowsBinding"
name="MyNameSpace.Contracts.ISimplePluginServiceWindows"
contract="MyNameSpace.Contracts.ISimplePluginService">
<identity>
<dns value="WCfServer" />
</identity>
</endpoint>
我想将其他信息传递给服务以进行此类身份验证(我通过检查 MS SQL Server 的用户和登录名来检查身份验证 - 我需要传递 mssql 服务器名称和数据库名称)。所以,我必须将一些自定义数据传递给验证器 => 我必须为 Windows 身份验证制作自定义验证器。我该怎么做?我找不到任何例子。
对于 UserName 身份验证,我可以使用继承 UserNamePasswordValidator 的 CustomUserNameValidator(通过登录传递服务器地址和数据库名称)来完成。