【问题标题】:Supporting anonymous users in Angular app w/ Web API and ASP.NET Identity在带有 Web API 和 ASP.NET 身份的 Angular 应用程序中支持匿名用户
【发布时间】:2015-06-01 21:05:51
【问题描述】:

我有一个 AngularJS 应用程序,它使用 ASP.NET Web API 后端(使用基于 OWIN/令牌的身份验证),该后端又实现了 ASP.NET 身份,以便于注册和登录。前端和后端应用程序都位于同一个项目/站点中,以减少与 CORS 相关的问题,并着眼于允许应用程序为用户利用 ASP.NET 的服务器端身份验证。我还想启用匿名用户的处理,以允许在不需要注册的情况下采取某些站点操作。 ASP.NET 提供了一个元素和一个 AnonymousIdentificationModule 类...谁能帮我理解我是否可以在这个堆栈中利用它来处理匿名用户?

【问题讨论】:

  • 只是不要在匿名的控制器操作上添加Authorize 属性;如果整个控制器都有authorize,则在特定匿名actoins 上使用AllowAnonymous 属性......

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


【解决方案1】:

默认情况下,控制器及其 ActionResult 是匿名的。您需要使用[Authorize] 属性来应用任何类型的安全过滤。因此,不要将[Authorize] 添加到您希望匿名的操作中。如果您在控制器而不是操作级别使用[Authorize],则在不应进行身份验证的特定操作上使用[AllowAnonymous]

【讨论】:

  • 我了解 API 的授权需求,但假设我有一个购物车并且匿名用户填满了它。在后端,我将 ShoppingCart 数据库实体键入到我的 AspNetUser (ASP.NET Identity) 表...ASP.NET Identity 可以为匿名用户处理创建记录,它是否与 ASP.NET 的 anonymousIdentification 元素结合使用,是否有任何将这种后端机制与基本上只有 HTML 的客户端应用程序而不是 MVC/Web 表单一起使用的示例?
猜你喜欢
  • 2017-10-27
  • 2011-03-18
  • 2015-08-27
  • 2015-09-24
  • 2010-12-22
  • 2011-06-27
  • 2021-04-12
  • 2019-01-14
  • 2016-01-05
相关资源
最近更新 更多