[英]Exposing existing Service Layer using ASP.NET WebApi
我目前有一个分层的体系结构,如下所示:
Repository<T>
, UnitOfWork
(特定于EF)以及所有EF之类的东西,例如DbContext
, EntityTypeConfiguration
等等。 我使用的是Anemic域模型,因此代表问题域的基本POCO是。
我有几个问题要通过ASP.NET WebApi
。
Thread.CurrentPrincipal
来获取Identity
来检查给定角色,并将其设置在WebApi中? Mvc应用程序? 有没有很好的例子可以说明我正在谈论的这种情况?
顺便说一句-我正在使用ASP.NET MVC 5服务应用程序(SPA)的外壳,然后前端将全部是AngularJS。
关于您的服务的安全性级别的第一个问题,我认为服务应该有正确的答案,我认为这是所有应用程序中的原则:
服务应具有足够的安全性,以保护数据免受有害用户的侵害 。
一旦创建了服务并将其公开,您就很容易受到可能的攻击,因为复杂的安全规则可能会增加开发时间,并且在某些情况下可能会导致性能下降。 测量威胁级别并相应地计划您的安全性。
WebApi的创建旨在通过Http / Rest提供服务,所有内置的原理和功能都是出于该目的而创建的,因此关于您的第二个问题,就像您在其末尾推断的那样,它是服务层,但是是Http / Rest服务层。
WebApi使用属性Authorize
来强制实施安全性,与.NET Frameworks通常一样,您可以从中继承并扩展它。 您可以在此处了解更多信息。
并且由于您使用的是Angularjs,即使您需要使用MVC5才能使用WebApi,所以我的建议是不要使用MVC剃刀或任何其他服务器技术来渲染页面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.