跨站点表单身份验证无法获取身份名称

时间:2016-07-31 13:14:35

标签: c# asp.net asp.net-mvc asp.net-web-api

我创建了一个webapi应用程序和其他mvc应用程序,并且它们位于相同的域下,我在mvc app web.config中创建了表单身份验证凭据,并且身份验证仅在mvcapp中运行良好。但要求和问题是,当我登录时,我希望webapi应用程序与mvc app(不同的子域)共享相同的凭据,以便只有mvcapp(登录)才能访问webapi应用程序,我看到像this,但在调试webapi应用程序时,我无法获取IdentityName。这是我下面的mvcapp webconfig。

<authentication mode="Forms">
  <forms loginUrl="~/Project/Login" timeout="60" name=".ASPXFORMSAUTH" protection="All" path="/" domain="samedomin.com" >
    <credentials passwordFormat="SHA1">
      <user name="username" password="35bf0f7bd4c19a5d69f513ab8b08b7cf500d8a98"/>
    </credentials>
  </forms>
</authentication>

更新:当我将webapi GET请求的URL放入地址字段并直接访问它时,cookie就存在,但在mvc app中使用$ .get仍显示401(未授权)..有人帮忙~~

0 个答案:

没有答案