我有一个WCF服务,我创建了一个客户端库来访问我们的WCF并将其提供给我们的客户,以简化访问我们的WCF的过程。对于客户,他们不需要知道我们的库中正在处理的WCF或其他远程协议。但我不想让任何人在不使用我们的WCF客户端库的情况下发现和访问我们的WCF服务。
我需要什么样的证券模型才能让我以这种方式构建这样的WCF服务器/客户端。
我们的客户需要向WCF提供的唯一安全性是Windows用户帐户(用户/密码),可以在服务器站点进行身份验证。
我们的WCF服务托管在Windows服务中,我们的客户端库可以通过互联网调用WCF服务。
该服务将托管在Windows XP sp3中。
感谢您的所有评论
答案 0 :(得分:0)
如果主要关注可发现性,则可以删除MEX端点。但是,这不能确保只有受信任的客户端才能访问您的服务。有关限制可发现性的更多信息,请参阅此related question。
您说客户的用户名/密码可以在服务器站点进行身份验证。这会处理身份验证,但仍不会限制对您创建的客户端库的访问。
要处理通信仅来自客户端库的验证,您需要查看使用custom message headers或using security certificates等选项。选项的选择取决于您的具体情况。