有没有办法列出所有租户的所有用户?

Is there a way to list all users across all tenants?

在多租户 ABP MVC 应用程序中,有一个用于列出用户的内置端点:

GET: /api/identity/users

此端点仅显示属于当前租户的用户。

有没有办法像 'host admin' 一样忽略多租户过滤器,以列出所有租户的所有用户?

同样,'host admin'可以通过相同的api/identity/users端点创建/修改/删除其他租户中的用户吗?

或者编写自定义端点是唯一的方法吗?

您可能不需要编写自定义端点,但在这种情况下,您需要覆盖现有服务。

因为有一个功能,你可以在任何地方禁用租户过滤器。

In some cases, you may want to disable it and perform a query on all the data, without filtering for the current tenant.

更多信息: https://docs.abp.io/en/abp/latest/Multi-Tenancy#data-filtering-disable-the-multi-tenancy-filter

您可以在AppService的相关方法中实现该方法,如下:

public async override Task<IdentityUserDto> CreateAsync(IdentityUserCreateDto input)
{
    using (_dataFilter.Disable<IMultiTenant>())
    {
        return await base.CreateAsync(input);
    }       
}

参考文献:

  1. https://docs.abp.io/en/abp/latest/Multi-Tenancy#data-filtering-disable-the-multi-tenancy-filter
  2. https://docs.abp.io/en/abp/latest/Customizing-Application-Modules-Overriding-Services#example-overriding-an-application-service