0

我想建立一个网络服务,不是每个用户都能看到所有数据。因此,我需要以多租户方式存储数据。

快速示例:汽车经销商。

经销商

  • ID
  • 姓名
  • 用户名

  • ID
  • 姓名
  • 经销商 ID(拥有者)

现在,经销商使用他的用户凭据调用get_my_carsWeb 服务,并且应该只看到他拥有的汽车。就像是:

SELECT car.id, car.name
FROM car
JOIN dealer ON car.dealer_id = dealer.id
WHERE dealer.username = %CURRENT_WEBSERVICE_USER%

但是如何将%CURRENT_WEBSERVICE_USER%变量放入 MySQL 查询中?或者我在这里做错了什么?您还如何过滤数据,让每个人都只能看到自己的数据?

感谢您的回复!

4

1 回答 1

0

您的用例不是多租户用例。您需要编写一个 web 服务(数据服务)并使用 usernametoken/basicauth 保护它。当用户使用他的凭据调用该服务时,您需要查询数据库并返回结果。您需要的是简单的安全网络服务。

于 2013-03-25T18:29:21.267 回答