【问题标题】:MS Identity and Access Tool MVC 4MS 身份和访问工具 MVC 4
【发布时间】:2012-10-01 16:27:07
【问题描述】:

此 VS 2012 扩展旨在允许我将本地开发 STS 添加到我的 MVC 应用程序http://visualstudiogallery.msdn.microsoft.com/e21bf653-dfe1-4d81-b3d3-795cb104066e

我遵循非常简单的说明,例如右键单击项目名称,然后在菜单中选择身份和访问权限。选择您的身份提供者,然后单击“确定”将设置应用到您的 web.config。

我运行我的 MVC 4 应用程序,它立即重定向到 login.aspx

我猜 MVC 4 有 特殊 说明。

它们是什么?

我在哪里可以找到它们?

编辑

需要说明的是,我在 Visual Studio 2012 中创建了一个 ASP.MVC 4 Internet 应用程序。然后我使用 Identity & Access Tool 添加本地开发 STS 来测试我的应用程序。

我在本地 IIS Express 上运行该站点

当我调试应用程序时,我被重定向到

localhost:11378/login.aspx?ReturnUrl=%2f

即使我按照已经给出的建议删除表单身份验证,也会发生这种情况。

【问题讨论】:

    标签: asp.net-mvc-4 visual-studio-2012 wif claims-based-identity


    【解决方案1】:

    就我而言,我添加了这个

    <system.web>
    ...
    <httpModules>
    ...
        <remove name="FormsAuthentication" />
    </httpModules>
    </system.web>
    

    还有这个

    <system.webServer>
    ...
       <modules>
       ...
          <remove name="FormsAuthentication" />
       </modules>
    </system.webServer>
    

    编辑

    你可能遇到的下一个问题是这个

    类型声明 'http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier' 要么 'http://schemas.microsoft.com/accesscontrolservice/2010/07/claims/identityprovider' 提供的 ClaimsIdentity 上不存在。启用防伪 基于声明的身份验证的令牌支持,请验证 已配置的声明提供程序在 它生成的 ClaimsIdentity 实例。如果配置的声明 提供者改为使用不同的声明类型作为唯一标识符, 可以通过设置静态属性来配置 AntiForgeryConfig.UniqueClaimTypeIdentifier。

    将这 2 个声明添加到身份和访问工具中的开发 STS

    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier
    http://schemas.microsoft.com/accesscontrolservice/2010/07/claims/identityprovider

    并将这一行添加到您的 Global.asax

    AntiForgeryConfig.UniqueClaimTypeIdentifier = ClaimTypes.NameIdentifier;
    

    This article helped me

    【讨论】:

      【解决方案2】:

      我在本地 IIS Express 上的 MVC4 应用程序也遇到了类似的问题。

      事实证明,该项目启用了 Windows 身份验证。禁用 Windows 身份验证(在项目属性窗格中 -- 按 F4)解决了该问题。

      【讨论】:

        【解决方案3】:

        删除 FormsAuthentication 模块对我有用。

         <httpModules>
            ...
            <remove name="FormsAuthentication" />
         </httpModules>
        

        【讨论】:

        • 刚试过这个,它也对我有用。自授权以来令人困惑。模式设置为无。
        • 也需要从模块中删除
        • @Peter 这就是他最初的回答所说的,你只是误解了它。
        • @Dismissile 我投了赞成票,但它并不完整。我在回复中给出了完整的答案。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-06-06
        • 1970-01-01
        • 2013-07-22
        • 1970-01-01
        • 2018-05-27
        • 2014-02-08
        • 1970-01-01
        相关资源
        最近更新 更多