我正在使用WCF NamedPipesService在两个进程之间进行IPC。保护WCF服务,使只有我的进程可以访问它们的最简单方法是什么?我尝试查阅了WCF文档,但这些都非常复杂,主要关注于用户身份验证而不是客户端进程。
无法想出任何关于命名管道绑定的创新方法,但总有一些解决方法。自定义头您可以轻松实现IClientMessageInspector接口,并在每个服务调用中发送一些自定义身份验证信息(例如进程关键字或登录名和密码)。然后,在服务端实现IDispatchMessageInspector以验证头。这里您可以了解更多WCF中的消息检查器。Windows身份验证只需使用除了您的应用程序之外没有人可以使用的Windows帐户,并配置Windows身份验证即可。<security mode="Transport"> <transport clientCredentialType="Windows" /> </security> 个人而言,我更喜欢使用自定义标头的选项,但您真的需要验证整个过程吗?没有人可以从公共渠道访问您的服务。您是否认为您组织内部有人可能会攻击您的服务?我的意思是,在您的情况下,也许这不是正确的绑定方式。