根据QuickSight pricing page,“API”在标准版中不可用。这到底是什么意思,我不知道。
但是,假设可以调用create-data-set,需要记住的重要一点是数据集权限是用户查看它们所必需的。
根据boto docs,这些权限应该包含在以下架构中
Permissions=[
{
'Principal': 'string',
'Actions': [
'string',
]
},
]
在我的代码中,我使用以下内容与all-users 组共享(注意组主体,将AWS_REGION 和ACCOUNT_ID 替换为您的值)
Permissions= [
{
'Principal': 'arn:aws:quicksight:AWS_REGION:ACCOUNT_ID:group/default/all-users',
'Actions': [
'quicksight:DescribeDataSet',
'quicksight:DescribeDataSetPermissions',
'quicksight:PassDataSet',
'quicksight:DescribeIngestion',
'quicksight:ListIngestions'
]
}
],
我相信个人用户也可以这样做,使用 user/default/user.name 而不是 group/default/all-users 的 ARN 资源。
对于数据源,我使用的权限集是
'Actions': [
'quicksight:DescribeDataSource',
'quicksight:DescribeDataSourcePermissions',
'quicksight:UpdateDataSource',
'quicksight:UpdateDataSourcePermissions',
'quicksight:DeleteDataSource',
'quicksight:PassDataSource'
]