加强微服务中的特权升级

时间:2018-10-20 22:03:08

标签: security microservices api-gateway stateful penetration-testing

请考虑以下情况。

  • 系统具有一组业务所有者(即系统的用户)
  • 每个企业主都映射到一组客户
  • 企业主登录系统以管理其客户。

企业主将首先选择一个客户,然后,他的会话将绑定到所选客户

我有一组微服务,每个微服务都需要一个Customer-ID进行处理。即

  • 微服务A公开GET /resource-a/{customer-id}
  • 微服务B公开POST /resource-b/{customer-id}

Customer-Id被认为是敏感信息,因此采用加密形式。

但是,它仍然容易受到特权升级的影响。即一个企业主可能会通过书签等错误地共享加密的客户ID。

  • 我想避免针对企业主的客户ID服务器端授权,因为众所周知这是一个缓慢的操作,并且90%的API必须重复此授权过程
  • 所有微服务都是无状态的,因此无法使用会话ID作为密钥对Customer-Id进行加密(因为没有有状态的微服务/会话)
  • 我也不认为在网关进行此授权不是一个好主意,因为它不打算执行这种业务逻辑。

在这种情况下如何防止特权升级?

0 个答案:

没有答案