簡體   English   中英

在不使用 aws 憑據的情況下連接 Redshift 和 Python(在 emr 上運行)

[英]Connect Redshift and Python without using aws credentials (running on emr)

嗨,我是 AWS 世界的新手,我需要幫助將 Python 連接到 Redshift 數據庫。 如果我不使用任何第三方服務,我在 EMR 上運行它時如何在不提供憑據的情況下執行此操作

Amazon EMR 在 Amazon EC2 實例上運行。 這些實例被分配了一個 IAM 角色,當它們使用 AWS SDK 時,該角色授予實例上運行的軟件的權限。

例如,當在 EMR 上運行的軟件訪問 S3 時,它通過EC2 實例元數據獲取憑證,其中包括一組與分配給實例的 IAM 角色相關聯的臨時憑證。

您可以以類似方式調用Amazon Redshift Data API ,它將使用通過 IAM 角色提供的憑證。

您正在使用 Python,因此您可以使用 boto3 RedshiftDataAPIService — Boto3 文檔使用 IAM 角色提供的權限查詢 Amazon Redshift 集群。

您需要為 EMR 集群使用的 IAM 角色添加適當的權限。 請參閱: 為 AWS 服務和資源的 Amazon EMR 權限配置 IAM 服務角色 - Amazon EMR

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM