【发布时间】:2012-06-21 23:15:15
【问题描述】:
我是一个团队的一员,目前正在为特定的组织群体开发专门的 SaaS 服务。 我有 PHP 和 mySQL 方面的知识,所以我正在这些平台上开发它。将在云端部署并在多个国家/地区发布。
我已经到了在数据库中分离组织/主要用户的地步,想看看你们的想法。
当 SaaS 管理发票和许多其他敏感信息时,在 mySQL 服务器上分发这些信息的最佳流程是什么?我想到了以下选项:
1) 将单个数据库中的所有信息放在单个表中,并由组织标识行分隔。 - 当有几千个用户和 10,000 行时,是否看起来很安全并且可能会很慢?
2) 具有单个数据库,但使用用户 ID 分隔表,例如。 '1000_invoices' - 同样可能更快,但不安全。
3) 是否在每个组织注册时创建了单独的数据库,以及用于访问数据库的特定用户,并且数据库名称存储在会话/cookie 中?每个组织的用户。
无论如何,我想知道你们认为什么是最好的选择?如果不是以上那么你有什么建议?为什么?任何有关安全的事情都将不胜感激。以前没有使用过大型多组织应用程序。 提前致谢!
【问题讨论】: