【问题标题】:How to bypass the Validate method in UserNamepasswordvalidator after authentication身份验证后如何绕过 UserNamepasswordvalidator 中的 Validate 方法
【发布时间】:2013-05-03 21:38:23
【问题描述】:

我正在使用继承 UserNamepasswordvalidator 的 Customvalidator 类 问题是它在每个请求上都会被调用。一旦用户通过身份验证,我想绕过它

任何帮助将不胜感激

【问题讨论】:

    标签: wcf wcf-authentication


    【解决方案1】:

    无法跳过基于验证器、自定义、用户名/密码或证书的验证器。它实际上是在请求到达您的主函数之前调用的,因此无法使用会话或变量绕过它。

    这就是将身份验证与消息处理分开的真正意义……它允许您在请求/响应过程的最早阶段拒绝虚假请求,这样您的程序就不会浪费周期来对抗僵尸攻击等。

    当然,您可以在消息处理中预先不应用身份验证,并在请求到达时进行身份验证(不像之前的模型那样)。此时,您可以以编程方式创建会话并从那里继续……但您将处理通过的每条消息。

    不过,我会添加这个。如果您认为如果您使用 NetTCPBinding 或 NetNamedPipesBinding 之类的东西,您可以在客户端和主机之间创建一个持久会话,从而只进行一次身份验证。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-19
      • 1970-01-01
      • 1970-01-01
      • 2018-09-28
      相关资源
      最近更新 更多