服务器到服务器企业 API 安全

Server to Server Enterprise API Security

我正在构建托管在 Azure 云中的 .NET Web API 应用程序,它需要使用托管在公司内部网上的另一个 API。假设我正在构建 both APIs.

客户端 = Azure .NET Web API 服务器 = 内网 API

我需要知道保护从客户端到服务器的请求的最安全方法。这是我登陆的地方:

我喜欢两条腿的 OAuth,因为它的简单性和令牌方法,但是我觉得这是不安全的,因为如果密钥被泄露,整个方法就会被破坏。

相互 TLS 似乎是最安全的,尽管工作量最大。

用户名和密码似乎不再相关(或与前两个一样安全)。

问题我是坚持使用双向 TLS,还是我的假设不正确?另外,我可以采取另一种方法吗?

免责声明 - 有类似的帖子,但我不认为他们详细说明了每个给 table 带来的安全级别,也没有很好地解释为什么他们应该使用一个另一个。

使用相互身份验证。经过一番阅读,我们发现这简直是企业安全的最佳选择。

http://searchsecurity.techtarget.com/definition/mutual-authentication

http://blogs.intel.com/api-management/2012/05/11/enterprise-apis-and-oauth-have-it-all/