我有一个我正在开发的SaaS平台;用PHP编写并使用MySQL数据库(使用PHP PDO类)。SaaS平台 - 每个用户或一个主帐户的不同数据库用户
应用程序已经在功能和我已经决定使用一个单独的数据库为每个实例。
的原因之一为使用多个数据库是为了确保客户端数据被分离(希望安全)。这也使我们能够轻松地将他们的实例转移到内部部署版本中。
安全总是我担心的事情。我希望确保这个系统在上线之前尽可能安全。
目前我们使用一个单一的MySQL用户名密码&有每一个数据库访问(对MySQL特定农场)。
理论上,如果存在安全漏洞,那么攻击者可能能够访问不同的数据库(用户名&密码在PDO /数据库连接建立后未设置,但他们可能能够运行诸如“使用databaseB“)。
这是我应该关注的东西吗?例如,简单地使用数据库分区的SaaS平台已经不太安全,因为简单的SQL错误可能会暴露客户端数据。
我已经开始研究使用不同的数据库用户名&密码,但它确实增加了SaaS平台的复杂性,保持简单的事情总是一个好主意。
谢谢!
我已决定为每个实例使用不同的用户名和密码。
这是另一层安全,并且不能伤害。
我不知道如何发送PM在这个系统上。你正在建立专有或公司/团队的一部分? – phpmeh 2012-03-19 00:06:30
嗨Phpmeh。谢谢回复。我不确定你的意思,我是这个产品的主要开发者(它正在内部构建)。一旦系统准备就绪,我们可能会得到外部公司的支持。 – 2012-03-19 00:09:06
是的,我只是好奇。我正在构建我计划部署SaaS风格的业务管理软件。我有一位初级开发人员为我工作,我们一直在为这个项目工作6个月。即便如此,这是非常缓慢的。始终希望与人们共同合作。 – phpmeh 2012-03-19 00:15:25