AWS Redshift 可以用作服务吗?

Posted

技术标签:

【中文标题】AWS Redshift 可以用作服务吗?【英文标题】:Can AWS Redshift be used as a service? 【发布时间】:2019-06-28 01:12:18 【问题描述】:

是否可以将 Redshift 用作服务。 我的要求是让客户访问他们的数据?如何在客户级别限制访问?客户 ID 将在每个表中可用。 View 可以用作一个选项,但看起来并不实用。 我需要为每个客户创建安全组吗?我可以为集群设置的安全组有什么限制吗?

【问题讨论】:

【参考方案1】:

Amazon Redshift 将自己呈现为 PostgreSQL 8.0。因此,Redshift 提供与 PostgreSQL 相同的用户安全性。

您将CREATE USER,然后GRANT 用户所需的权限。

使用视图是个好主意——它可以根据用户限制输出。

见:Grant access to subset of table to user on PostgreSQL

对您分配给用户的权限非常小心,以确保他们无法看到与其他用户关联的数据,也无法修改任何信息。

传统上,将 API 放在数据库前面以应用其他业务逻辑,例如限制请求数量以减少一个用户影响其他用户的机会。

安全组与特定用户无关。它们允许网络流量进出集群,但无法识别用户。

【讨论】:

【参考方案2】:

对于这样的数据分离,我可以说最好的方法是为用户提供视图。 如果用户计数是一个合理的数字。 然后,您可以仅为客户授予对这些视图的 SELECT 权限。 由于您使用数据库用户连接到数据库,这不是与安全组相关的主题

【讨论】:

以上是关于AWS Redshift 可以用作服务吗?的主要内容,如果未能解决你的问题,请参考以下文章

我可以将 AWS 用户池用作 Spring 应用程序中的目录服务吗?

redshift 不适用于本地 aws 配置文件凭据吗?

Google Data Studio 目前可以连接到 AWS RDS 或 Redshift 吗?

AWS Redshift:如果用户不存在,我可以使用案例语句创建新用户吗?

AWS Redshift 脚本导出

我可以使用AWS Glue将S3上的json数据转换为柱状格式并将其推送到Redshift吗?