使用 QuickSight API 向互联网上的任何人授予对 Amazon QuickSight 控制面板的访问权限
您也可以使用 UpdateDashboardPermissions 操作通过 Amazon QuickSight API 向互联网上的任何人授予对控制面板的访问权限。
开始之前,请确保授予账户中的所有人对控制面板的访问权限。有关更多信息,请参阅 使用 QuickSight API 向 Amazon QuickSight 账户中的所有人授予对控制面板的访问权限。
以下示例 API 请求说明了如何使用 Amazon CLI 命令向互联网上的任何人授予对控制面板的访问权限。其会授予账户中控制面板的链接权限,并允许执行以下操作:DescribeDashboard、QueryDashboard 和 ListDashboardVersions。
aws quicksight update-dashboard-permissions --aws-account-idaccount-id--regionaws-directory-region--dashboard-iddashboard-id--grant-link-permissions Principal="arn:aws:quicksight:::publicAnonymousUser/*", Actions="quicksight:DescribeDashboard, quicksight:QueryDashboard, quicksight:ListDashboardVersions"
对上述请求的响应与以下内容类似。
{ "Status": 200, "DashboardArn": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:dashboard/ DASHBOARDID", "DashboardId": "DASHBOARDID", "LinkSharingConfiguration": { "Permissions": [ { "Actions": [ "quicksight:DescribeDashboard", "quicksight:ListDashboardVersions", "quicksight:QueryDashboard" ], "Principal": "arn:aws:quicksight:AWSDIRECTORYREGION:ACCOUNTID:namespace/default" }, "Principal": "arn:aws:quicksight:::publicAnonymousUser/*", "Actions": [ "quicksight:DescribeDashboard", "quicksight:ListDashboardVersions", "quicksight:QueryDashboard" ] } ] }, "Permissions": [ // other dashboard permissions here ], "RequestId": "REQUESTID" }
您还可以使用相同的 API 操作来阻止互联网上的任何人访问控制面板。以下示例请求说明了如何使用 CLI 命令来阻止访问。
aws quicksight update-dashboard-permissions \ --aws-account-idaccount-id\ --regionaws-directory-region\ --dashboard-iddashboard-id\ --revoke-link-permissions Principal="arn:aws:quicksight:::publicAnonymousUser/*", Actions="quicksight:DescribeDashboard, quicksight:QueryDashboard, quicksight:ListDashboardVersions"
有关更多信息,请参阅《Amazon QuickSight API Reference》中的 UpdateDashboardPermissions。
当互联网上的任何人获得了对控制面板的访问权限时,以下代码段将作为 eventNameUpdateDashboardAccess 和 eventCategory Management 的一部分添加到 Amazon CloudTrail 日志中。
"linkPermissionPolicies": [ { "principal": "arn:aws:quicksight:::publicAnonymousUser/*", "actions": [ "quicksight:DescribeDashboard", "quicksight:ListDashboardVersions", "quicksight:QueryDashboard" ] } ]