2015-01-14 44 views
2

出于安全原因,我有一个heroku项目应该访问一个heroku postgresql数据库,但用户只能访问一些表。heroku postgresql与多个用户和权限

我如何在heroku postgresql上做到这一点?

我能想到这样做的唯一方法是:

  • 创建与PostgreSQL的开发插件Web项目。这将在HEROKU_COLOR_X url中创建一个新的数据库;
  • 多次使用另一个postgresql dev插件创建另一个web项目,以使此HEROKU_COLOR_ *与先前的HEROKU_COLOR_X相同;
  • 用user_2(admin)在HEROKU_COLOR_X中登录,创建一些表格作为user_2,并为某些表格授予对user_1的访问权限。

这将导致相同的数据库主机(HEROKU_COLOR_X)和2个用户/密码(user_1用于Web项目访问,user_2用于数据库完全访问)。

..但有没有更好的解决方案?

最好,

回答

3

我不知道你的理论,但不幸的是,Heroku Postgres docs状态:

不能创建或修改在Heroku Postgres的数据库和角色。 以下SQL仅供参考。

我很喜欢它,如果这个限制可以改变或解决,因为细化权限是安全性必不可少的。