Azure Api管理用例

Azure Api管理用例,azure,azure-api-management,Azure,Azure Api Management,我有一个关于Azure API管理服务的问题,以及如何在安全方面使用它。我已经看过了,找不到一个我可以自信的答案 那么,我应该在oauth2中使用订阅密钥还是访问令牌呢 我认为单独拥有订阅密钥还不够好,因为它们更像是一种身份验证方法,而作为oauth令牌,两者都可以。 此外,我没有看到同时使用订阅密钥和身份验证令牌的用例,因此我不确定理想的用例是什么 最佳使用案例是通过VPN连接保护后端API。这将在APIM和后端系统(ERP或任何其他系统)之间提供一个安全通道 下面是一个很好的安全案例,

我有一个关于Azure API管理服务的问题,以及如何在安全方面使用它。我已经看过了,找不到一个我可以自信的答案

那么,我应该在oauth2中使用订阅密钥还是访问令牌呢

我认为单独拥有订阅密钥还不够好,因为它们更像是一种身份验证方法,而作为oauth令牌,两者都可以。 此外,我没有看到同时使用订阅密钥和身份验证令牌的用例,因此我不确定理想的用例是什么

  • 最佳使用案例是通过VPN连接保护后端API。这将在APIM和后端系统(ERP或任何其他系统)之间提供一个安全通道

  • 下面是一个很好的安全案例,


  • APIM本身没有规定任何特定的最佳使用方式,但提供了适合不同场景的不同选项。如果您询问如何验证/授权对APIM的呼叫,有几种方法:

  • 订阅密钥。对调用方进行身份验证并授权其调用特定产品/API范围的一种好方法。每个订阅有两个键的选项可以让您轻松地随时间旋转它们。这主要适用于需要单独使用APIM授权最终用户或将密钥嵌入最终用户使用的应用程序的情况
  • 非统组织。APIM本身不能发行OAuth令牌,所以当我们有一个第三方OAuth服务器可用时,无论您是否拥有,这都是最合适的。通常,APIM对请求中的OAuth令牌是透明的,甚至不能使用它来验证对其内部用户数据库的调用,但您可以选择使用validate jwt策略来要求这样的令牌,查找某些声明、问题、检查签名e.t.c
  • 客户端证书。如果您控制您的客户端,那么您可以选择设置客户端证书,并在APIM级别配置策略以要求证书存在、检查其属性或验证其链,包括设置您自己的CA和根证书的能力
  • IP过滤。虽然不是那么高的安全措施,但仍然是一种选择。您可以将APIM配置为拒绝在指定IP范围之外进行的呼叫

  • 那么,您是否建议只使用oauth令牌而不使用订阅密钥?您可以同时使用这两种令牌。订阅密钥实际上只是用来标识谁在使用这些API。它将用于计费、监控和任何故障排除目的。它有一点安全性,但不推荐用于高安全性目的。因此,除了子密钥之外,您还必须维护Outh2.0、VPN或@Vitaliy kurokhtinhanks提出的一些其他安全方法来进行解释