如何在servicestack.net中实现身份validation

我正在调查servicestack.net – 但是它的示例和文章似乎没有涵盖身份validation – 这是由servicestack.net处理的 – 如果是这样的话?

特别是我有兴趣实现对以下方面的支持:

  • OAuth(因此能够检查原始请求并validation它/检索关联的用户信息并在将请求传递到servicestack.net进行处理之前与请求关联)。
  • 基于会话/ cookie的身份validation(因此允许已经具有有效ASP.Net会话的Ajax客户端将其用于身份validation,而不是需要显式传递登录和密码详细信息以获取适合随后请求提交的会话令牌)。

有人能指出我在使用ServiceStack.Net框架时certificate身份validation/安全性的文档/示例的方向。

编辑:现在ServiceStack中有一个新的身份validation提供程序模型 ,其中包含以下内置提供程序:

  • 凭据 – 用于使用用户名/密码凭据进行身份validation。 例如Form Auth
  • 基本身份validation – 允许用户使用基本身份validation进行身份validation
  • Twitter OAuth – 允许用户注册和使用Twitter进行身份validation
  • Facebook OAuth – 允许用户注册和使用Facebook进行身份validation

新的auth提供程序模型完全是可选的,是基于ServiceStack现有请求/响应filter构建的用户级库。

有关如何创建自己的更多信息,请检查此线程以获取ServiceStack中的身份validation选项。

https://groups.google.com/d/topic/servicestack/U3XH9h7T4K0/discussion

基本上,您可以使用Requestfilter来拦截请求,或使用基类来添加通用validation逻辑。 该线程包含两个选项的示例。

或者,您可以将ServiceStack与另一个ASP.NET Web框架一起托管,以便您可以使用其内置的身份validation提供程序,并使用请求筛选器和Cookie在ServiceStack中validation有效的用户会话。

以下是使用请求filter实现HTTP Basic Auth的示例