AWS Redshift:在SQL代码中隐藏凭证

时间:2019-01-02 19:16:49

标签: amazon-web-services amazon-redshift

我正在使用copy命令以redshift加载表,如下所示。

COPY tip_files
FROM 's3 path'
iam_role 'role arn'
FORMAT AS PARQUET;

问题是我的arn在这里被硬编码,这似乎是一个不好的编程习惯。我尝试将arn存储在cred表中,并按以下方式使用它:

COPY tipfile
FROM 's3 path'
iam_role (select arn from cred)
FORMAT AS PARQUET;

它没有用。有什么办法可以做到这一点?

1 个答案:

答案 0 :(得分:0)

这是不可能的。需要在COPY命令中 中提供凭据。无法在其他地方加入他们。

不应 将亚马逊资源名称(ARN)视为机密信息。它不会公开任何凭据。

您可以选择将ARN保留在某个位置(例如,放在AWS SSM参数存储中),并使代码将ARN插入命令中,而不是将其与命令一起存储。但是,您的程序需要进行这种操作,而不是在Redshift中进行操作。