使用 QuickSight API 建立或更新具有機密憑證的資料來源 - Amazon QuickSight

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 QuickSight API 建立或更新具有機密憑證的資料來源

在 QuickSight 管理員授予 QuickSight 對 Secrets Manager 的唯讀存取權後,您可以使用管理員選取為憑證的機密,在 API 中建立和更新資料來源。

以下是在 QuickSight 中建立資料來源的 API 呼叫範例。此範例使用 create-data-source API 操作。您也可以使用 update-data-source 操作。如需詳細資訊,請參閱《Amazon QuickSight API 參考》中的 CreateDataSourceUpdateDataSource

下列 API 呼叫範例的許可中指定的使用者可以在 QuickSight 中刪除、檢視和編輯指定 MySQL 資料來源的資料來源。他們也可以檢視和更新資料來源許可。使用機密 ARN 作為資料來源的憑證,而不是 QuickSight 使用者名稱和密碼。

aws quicksight create-data-source --aws-account-id AWSACCOUNTID \ --data-source-id DATASOURCEID \ --name NAME \ --type MYSQL \ --permissions '[{"Principal": "arn:aws:quicksight:region:accountID:user/namespace/username", "Actions": ["quicksight:DeleteDataSource", "quicksight:DescribeDataSource", "quicksight:DescribeDataSourcePermissions", "quicksight:PassDataSource", "quicksight:UpdateDataSource", "quicksight:UpdateDataSourcePermissions"]}]' \ --data-source-parameters='{"MySQLParameters":{"Database": "database", "Host":"hostURL", "Port":"port"}}' \ --credentials='{"SecretArn":"arn:aws:secretsmanager:region:accountID:secret:secretname"}' \ --region us-west-2

在此呼叫中,QuickSight 會根據 API 呼叫者的 IAM 政策 (而非 IAM 服務角色的政策) 來授予 secretsmanager:GetSecretValue 對機密的存取權。IAM 服務角色可在帳戶層級採取動作,並在使用者檢視分析或儀表板時使用。當使用者建立或更新資料來源時,它無法用於授權機密存取。

在 QuickSight UI 中編輯資料來源時,使用者可以檢視使用 AWS Secrets Manager 做為登入資料類型的資料來源的秘密 ARN。但是,他們無法編輯機密,也無法選取其他機密。例如,如果他們需要對資料庫伺服器或連接埠進行變更,使用者首先需要選擇憑證配對,然後輸入其 QuickSight 帳戶使用者名稱和密碼。

在 UI 中變更資料來源時,會自動從資料來源中移除機密。若要將機密還原至資料來源,請使用 update-data-source API 操作。