【问题标题】:AngularJS web application using Windows Authentication使用 Windows 身份验证的 AngularJS Web 应用程序
【发布时间】:2015-02-05 00:19:53
【问题描述】:

有没有人有一篇好的博客文章的链接,该文章描述了如何在 AngularJS 中配置和开发一个应该使用在 MVC5 中开发的 Web API 的 Web 应用程序(网站)(这实际上不太重要)。 Web API 和 Web 应用程序应该部署在 Intranet 中,因此它们应该使用 Windows 身份验证。似乎将身份验证元素设置为“Windows”是不够的。

<authentication mode="Windows"/>

在访问 Web API 接口中可用的方法时,必须采取更多步骤,可能是在调用 $http.get 之前或之时。

我研究了这个主题几天,但找不到描述整个过程的好资源。

谢谢, 埃德

【问题讨论】:

    标签: angularjs rest asp.net-web-api windows-authentication


    【解决方案1】:

    system.web下的这两个条目

    <authentication mode="Windows" />
    <authorization>     
      <deny users="?" />      
    </authorization>  
    

    以上两个将为您提供一个起点。 在 Razor 中,您可以将此字符串呈现到您的页面以查看当前登录的用户。 @User.Identity.Name

    在页面上看到用户会让你知道它是否在工作。

    此外,如果您将拒绝用户问号更改为星号,您应该会开始收到输入凭据的提示。把它放回问号。

    真实视图页面上的上述内容将让您知道它在基本层面上工作。

    还记得在解决方案资源管理器中选择您的 prj 文件,然后按 F4。然后选择windows身份验证属性为true。这是一个独立于您的运行时配置设置的项目设置,但它允许调试。

    【讨论】:

    • 感谢您的评论。我创建了一个空的 Web 应用程序项目并选择了 Windows 身份验证。我注意到 Visual Studio 将这些行放在配置文件的 部分中。现在,一个刚刚开始学习 Web 开发的人提出了一个非常愚蠢的问题。浏览器如何知道在访问网页时要提供什么类型的凭据。我猜 Fiddler 可以显示 GET 请求的标头,我可以看到浏览器提供的凭据。浏览器如何知道要发送什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    • 2018-08-11
    • 2012-09-09
    • 1970-01-01
    相关资源
    最近更新 更多