Angular 公共网站中的ASP.NET Web API授权机制

Angular 公共网站中的ASP.NET Web API授权机制,angular,asp.net-web-api,authorization,Angular,Asp.net Web Api,Authorization,我对ASP.NET Web API比较陌生,我需要您对以下情况的建议: 几个月前,我参加了一个web项目,其中包含一个Angular 5前端,使用ASP.NET web API 2接口提供的服务。数据库是SQL server,访问数据时有多个角色,因此我们使用基于令牌的身份验证。 最近,我被指派开发一个web界面,它将显示许多图表和报告,并将来自不同数据源的数据聚合在一起。我正在考虑使用和前一个项目中相同的基础设施和框架,但我确信要使用的授权类型。大多数视图都可以通过https公开访问,但是我们

我对ASP.NET Web API比较陌生,我需要您对以下情况的建议: 几个月前,我参加了一个web项目,其中包含一个Angular 5前端,使用ASP.NET web API 2接口提供的服务。数据库是SQL server,访问数据时有多个角色,因此我们使用基于令牌的身份验证。
最近,我被指派开发一个web界面,它将显示许多图表和报告,并将来自不同数据源的数据聚合在一起。我正在考虑使用和前一个项目中相同的基础设施和框架,但我确信要使用的授权类型。大多数视图都可以通过https公开访问,但是我们预计会有一些管理员视图,这当然需要适当的身份验证。我不完全确定这里的最佳模式是什么——分别为公共和管理视图组合基本/令牌身份验证,或者应用基于令牌的身份验证并创建公共用户来访问公共资源。如有任何建议,我们将不胜感激

在您的情况下,我会将Admin和Public分开,这意味着在API中创建单独的操作。因此,您只需实现管理操作的授权(我建议基于令牌的授权)。所有你可以公然允许的公共事务。我希望这会有所帮助。

在您的情况下,我会将Admin和Public分开,这意味着在您的API中创建单独的操作。因此,您只需实现管理操作的授权(我建议基于令牌的授权)。所有你可以公然允许的公共事务。我希望这会有所帮助。

在您的情况下,我希望对所有API使用基于API令牌的身份验证,但您只想访问哪个API(管理API)您可以使用[EnableCors(源代码:,头代码:,方法:)]这高于您的管理API,并用于公共用途[EnableCors(源代码:,头代码:,方法:*”]也不要忘记安装->安装包Microsoft.AspNet.WebApi.Cors并添加config.EnableCors();在您的情况下,我希望对所有API使用基于API令牌的身份验证,但您只想访问哪个API(管理API)请使用[EnableCors(源代码:“”,头代码:“”,方法:“”)],此代码位于您的管理API之上,供公共使用[EnableCors(源代码:“”,头代码:“”,方法:“”]也不要忘记安装->安装包Microsoft.AspNet.WebApi.Cors并添加config.EnableCors();在Register部分下,将行插入webApiconfig