【问题标题】:Protecting data in Multi User web applications保护多用户 Web 应用程序中的数据
【发布时间】:2015-03-11 07:42:49
【问题描述】:

我现在有一个大问题。长话短说,让我们以某种在线药房网络为例。它拥有数百万用户、数百万数据,但只有一个数据库。让我们假设数据库有一个Patient 表。每个新药房添加的每个新患者都将保存在此表中。

但是,即使数据在同一个Patient 表中,它也确保药房“A”只能访问其患者而不能访问其他任何人,药房“B”只能访问其患者而不能访问其他任何人等等.他们将为每一家药房提供用户名和密码,但同样,由于只有Patient 表和一个数据库,他们如何确保这些数据不会相互共享?我确信他们不会为每个用户创建单独的数据库:D

更新

请不要混淆我的问题。正如TonyHopkinson 所说,在Patient 表中使用PharmacyID 是解决方案。是的,但是我们如何确保更多的安全性?如果有人使用“药房 A”配置文件并设法进入数据库,那么他也拥有包括其他药房数据在内的所有信息,对吧?

【问题讨论】:

  • 将 PharmacyID 放在 Patient 表中并使用它来限制可以选择的患者记录是简单的答案。您可能想做一个基本的数据库课程/教程,绝对是从鼹鼠山上造就了一座山,在这里。
  • @TonyHopkinson:感谢您的回复,像 Facebook 这样的大型应用程序也是这样做的?
  • 这不是一个真正的缩放问题。缩放应该是透明的。因此,您可能会按国家/地区拆分数据库,但随后您将拆分患者和药房。如果我需要通过分区表来扩展数据库,我不会使用 mysql 我会使用设计用于扩展的 dbms,而 mysql 不是。

标签: java mysql sql database web


【解决方案1】:

我认为您指的是关联概念(如 UML 中的)。一位患者可能与一家或多家药房绑定,而一家药房有一位或多位患者。这与数据库的概念有关。

【讨论】:

    猜你喜欢
    • 2010-11-27
    • 2010-12-15
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-08
    • 2013-04-23
    相关资源
    最近更新 更多