Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在自托管服务器中,如何在某些情况下跳过基本身份验证? 我有一个ASP.NET web应用程序,我们称之为web应用程序A,它使用OWIN和NancyFX自托管 Web App A使用基本身份验证,该身份验证在CustomBootstrapper.cs中设置如下:_C#_Owin_Nancy - Fatal编程技术网

C# 在自托管服务器中,如何在某些情况下跳过基本身份验证? 我有一个ASP.NET web应用程序,我们称之为web应用程序A,它使用OWIN和NancyFX自托管 Web App A使用基本身份验证,该身份验证在CustomBootstrapper.cs中设置如下:

C# 在自托管服务器中,如何在某些情况下跳过基本身份验证? 我有一个ASP.NET web应用程序,我们称之为web应用程序A,它使用OWIN和NancyFX自托管 Web App A使用基本身份验证,该身份验证在CustomBootstrapper.cs中设置如下:,c#,owin,nancy,C#,Owin,Nancy,当有效的安全令牌作为URL中的参数传递时,如何绕过身份验证 您需要向配置文件添加参数或使用条件编译符号。这两个选项中的任何一个都将设置一个标志,然后您可以检查该标志,以绕过管道中基本身份验证的连接,并可能绕过this.requireAuthentication() 对于那些需要身份验证的模块,向传入请求添加所需的URL参数,以便调用方提供安全令牌 您将需要RESTAPI来进行一个验证安全令牌的调用,并且您需要调用它并接收回用户名,这样您就可以创建您的IUserIndentity 我发现了无状态身

当有效的安全令牌作为URL中的参数传递时,如何绕过身份验证

  • 您需要向配置文件添加参数或使用条件编译符号。这两个选项中的任何一个都将设置一个标志,然后您可以检查该标志,以绕过管道中基本身份验证的连接,并可能绕过this.requireAuthentication()
  • 对于那些需要身份验证的模块,向传入请求添加所需的URL参数,以便调用方提供安全令牌
  • 您将需要RESTAPI来进行一个验证安全令牌的调用,并且您需要调用它并接收回用户名,这样您就可以创建您的IUserIndentity

  • 我发现了无状态身份验证()。管道在CustomBootstrapper中设置,在收到请求之前调用该程序。我唯一能想到的是拥有两个不同版本的web应用程序,并使用条件编译符号来检测要构建的版本。或者,我可以在模块级别覆盖它?或者,我可以在应用程序管道上使用before钩子,这样我就不需要两个单独的应用程序了?两个应用程序都试过了,但都不起作用。
    pipelines.EnableBasicAuthentication(new BasicAuthenticationConfiguration(
        container.Resolve<IUserValidator>(),
        "MySpecificRealm"));
    
    this.RequiresAuthentication();