ServiceStack CredentialAuthProvider比用户名/密码更(Servic

2019-09-23 03:15发布

我想用一个自定义的身份验证提供者,但我不知道怎样才能使标准验证的东西处理更多的用户和密码作为参数。

可以这样做?

Answer 1:

取决于你想要做什么,如果你想从CredentialsAuthProvider继承来创建自己的自定义身份验证提供者,你可以通过访问不同的请求参数IHttpRequest对象:

public virtual bool TryAuthenticate(IServiceBase authService, 
    string userName, string password)
{
    var httpReq = authService.RequestContext.Get<IHttpRequest>();
    var fromQueryString = httpRequest.QueryString["CustomField"];
    var fromPostData = httpRequest.FormData["CustomField"];
    var fromEither = httpRequest.GetParam("CustomField"); //Ext method
}

以下是显示不同的方式来定制其他一些相关的问题和答案ServiceStack内置的验证:

  • 如何延长ServiceStack认证
  • 填充IAuthSession与数据库中的数据


文章来源: ServiceStack CredentialAuthProvider with more than User/Password