从另一个C#

时间:2019-08-12 11:30:14

标签: c# service middleware

我有2个微服务:

  • 租户-用于定义系统上存在哪些租户
  • 身份-用于注册和验证用户

每个对Identity的请求都应包含TenantId的标头,该标头将用于在Identity数据库中针对租户注册用户。为此,每个操作都使用[FromHeader]来获取租户ID,如下所示:

[HttpPost("register")]
public async Task<IActionResult> Register([FromHeader] string tenantId, [FromBody] RegisterRequest request)
{
  // code here..
}

但是,在调用此操作之前,应使用tenantId检查具有该ID的租户是否存在。

我不确定哪种方法是最好的选择,请牢记以下选项:

  • 使用中间件从报头中获取tenantId并进行调用 到Tenant服务中检查是否存在。

  • 创建一个属性,并将其添加到需要 租户检查。

这使我想到另一个问题,承租人检查应该在执行操作之前进行还是应该在业务层中完成?

哪个将是最佳选择?如果没有,有人可以建议别人吗?

0 个答案:

没有答案