我的web api服务需要访问令牌吗?

时间:2016-05-25 12:39:23

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

我有一个管理用户数据的应用程序。所有业务逻辑都封装在单独的web api服务中,用户管理Web应用程序(以及其他)调用该服务。目前所有的网络API呼叫都是暴露的(它们是匿名的)。但是,web api位于一个单独的域中,只有调用它的应用程序才能访问它。

添加承载令牌并为每个API调用强制执行身份验证是否有任何好处?

1 个答案:

答案 0 :(得分:3)

如果web api服务位于一个单独的域上且受到足够的互联网保护,那么您无需在服务级别进行身份验证以获得外部安全性(除了您拥有的任何应用程序登录之外)。

但是,这并不是说您的应用程序没有内部暴露,可能被恶意或故意配置的应用程序故意或意外调用,例如,有人意外地指出了负载测试生产。出于这个原因,如果你不想实现全面的身份验证,我会保证at least with a HMAC

已编辑:要在任何面向公众的网络空间中添加该数据,您应该对数据进行分类并确定适用的适当安全级别。在某些情况下,您可能不希望获得低灵敏度数据的GET。另一方面,暴露GET允许某人访问尝试拒绝服务攻击(通过从多个服务器/僵尸网络中循环调用您的API)。在POST方面,风险更高,因为消费者将插入您的数据存储区。

在处理安全问题时,始终注意OWASP Top 10