[英]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.