我正在设计和测试WCF服务并将它们公开为SOAP Web服务。WCF中不同服务操作的不同安全性
我有我的服务类逻辑分裂。我有一个帐户服务。要访问帐户Web服务,您必须提供用户名和密码以及API令牌。我编写了一个扩展UserNamePasswordValidator的自定义类来关注身份验证,并编写了一个IDispatchMessageInspector来检查该令牌。
需求刚刚浮出水面,我们希望提供一些帐户检查而无需用户进行身份验证。逻辑上这些操作应该保留在账户服务中。然而,服务行为被配置为需要用户名,密码并且具有IServiceBehavior,其添加IDispatchMessageInspector来检查令牌的所有消息。
我已经通过Extending Dispatchers - Microsoft和WCF Extensibility - Carlos Figueira
审查所有不同的扩展点的我似乎可以找到一种方法,仅在操作级别应用安全。或者一种配置服务的方式,以便某些功能需要安全/令牌,而其他功能则不需要。
我是WCF的新手,所以它可能很简单,但我没有找到它。如果您知道一篇文章展示如何以不同方式保护服务的不同部分,或者您知道如何获得服务,请向我提供一些信息。谢谢。
为此,您可以创建单独的端点('免费'/公共服务),无需安全或使用不同的安全设置 – SalientBrain
如何限制该端点中的操作?如果没有认证,我想限制可以调用的内容。 – Allan
您将终端暴露给与主要不同的特殊接口(仅限于受限制的操作) – SalientBrain