【问题标题】:checking, is user authenticated in mvc application, when local applications sends requests检查,当本地应用程序发送请求时,用户是否在 mvc 应用程序中进行了身份验证
【发布时间】:2012-07-05 22:01:33
【问题描述】:

我有带有授权系统的 asp .net mvc 应用程序。控制台(或 winforms,没关系)应用程序使用 WebRequest 将一些数据发布到服务器。一切正常,但知道我需要检查,是否经过用户授权,然后退回。所以,我在检查

User.Identity.IsAuthenticated

它返回false。但是在浏览器中我已经过身份验证,并且这种方法显然可以在 mvc-aplication 中使用,但是当控制台应用程序发送请求时,它就不起作用了。如何解决?

我正在使用it 加载我的文件

【问题讨论】:

    标签: c# asp.net-mvc authentication request


    【解决方案1】:

    基本上,您的控制台应用程序还需要将请求中的“表单身份验证 cookie 或票证”发送到您的 Web 服务器。这篇文章可能会有所帮助http://www.codeproject.com/Articles/187198/Various-Clients-and-Forms-Authentication

    【讨论】:

      【解决方案2】:

      当您创建 Web 请求时(我假设您的意思是 HttpWebRequest),请确保将其配置为发送 Windows 凭据。

      对于HttpWebRequest,您可以将UseDefaultCredentials 设置为true

      当此 HttpWebRequest 对象发出的请求(如果服务器请求)应使用当前登录用户的凭据进行身份验证时,将此属性设置为 true。

      【讨论】:

      • 它不起作用(我试图向页面发出简单的请求,写的只是用户身份验证,但即使我将 UseDefaultCredentials 设置为 true,它也会返回 false ..
      • 我的服务器有问题,因为当我请求 vk.com 时,即使没有 UseDefaultCredentials 也已获得授权
      猜你喜欢
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-31
      • 1970-01-01
      • 2023-03-11
      • 2017-03-03
      相关资源
      最近更新 更多