Amazon Quick のユーザーを API 経由で削除した時にユーザー所有アセットがどうなるのか確認してみた

Amazon Quick のユーザーを API 経由で削除した時にユーザー所有アセットがどうなるのか確認してみた

2026.03.11

いわさです。

Amazon Quick ではユーザーを用意して、Amazon Quick コンソールにサインして利用します。
次のブログでも紹介されていますが、マネジメントコンソールからユーザーを削除すると、その削除されるユーザーが所有しているアセット(データセット、分析、ダッシュボードなど)を別のユーザーに所有権を移すか、あるいはアセット自体も削除するかを選択できます。

https://dev.classmethod.jp/articles/delete-quicksight-user/

C9E4886A-5854-4BC6-955E-F7A5D1E42307_4_5005_c.jpeg

一方で Amazon Quick は API も提供していまして、API 経由でユーザーを削除することもできます。
この API を使った時にアセットがどうなるのかを確認してみたので紹介します。

API 経由だとどうなるのか確認してみる

今回は AWS CLI のdelete-userコマンドでユーザー削除を試しおてみたいと思います。
以下がリファレンスになるのですが、まずユーザー削除時にアセット権限を委譲するか、アセットも一緒に削除するか、などのオプションパラメータは用意されていないようです。

https://docs.aws.amazon.com/cli/latest/reference/quicksight/delete-user.html

では削除した時どうなるのでしょうか。
データセットと分析を用意してみましょう。ユーザー削除前のアセットは次のようにdescribe-analysisなどで確認することができます。

~ $ aws quicksight describe-analysis --aws-account-id 123456789012 --analysis-id dc15349e-90f8-4b41-98d8-2cd638b78680
{
    "Status": 200,
    "Analysis": {
        "AnalysisId": "dc15349e-90f8-4b41-98d8-2cd638b78680",
        "Arn": "arn:aws:quicksight:ap-northeast-1:123456789012:analysis/dc15349e-90f8-4b41-98d8-2cd638b78680",
        "Name": "hoge0305csv analysis",
        "Status": "CREATION_SUCCESSFUL",
        "DataSetArns": [
            "arn:aws:quicksight:ap-northeast-1:123456789012:dataset/68bf4d56-8bdd-4c15-b527-b20bc13e3cc3"
        ],
        "CreatedTime": "2026-03-05T06:18:55.853000+00:00",
        "LastUpdatedTime": "2026-03-05T06:25:35.885000+00:00",
        "Sheets": [
            {
                "SheetId": "16f33bf9-585d-47b3-9e0b-bc985ffac8c9",
                "Name": "シート 1"
            }
        ]
    },
    "RequestId": "e32940c9-651f-4bc7-b714-be3cbc95a74e"
}

続いてユーザーを削除してみましょう。

~ $ aws quicksight delete-user --user-name iwasa-reader3 --aws-account-id 123456789012 --namespace default
{
    "Status": 200,
    "RequestId": "7daad5b1-cfbe-4eaa-903d-23461470bb39"
}

削除に成功しました。
先ほどと同じように削除されたユーザーが所有していた分析を確認してみます。

~ $ aws quicksight describe-analysis --aws-account-id 123456789012 --analysis-id dc15349e-90f8-4b41-98d8-2cd638b78680
{
    "Status": 200,
    "Analysis": {
        "AnalysisId": "dc15349e-90f8-4b41-98d8-2cd638b78680",
        "Arn": "arn:aws:quicksight:ap-northeast-1:123456789012:analysis/dc15349e-90f8-4b41-98d8-2cd638b78680",
        "Name": "hoge0305csv analysis",
        "Status": "CREATION_SUCCESSFUL",
        "DataSetArns": [
            "arn:aws:quicksight:ap-northeast-1:123456789012:dataset/68bf4d56-8bdd-4c15-b527-b20bc13e3cc3"
        ],
        "CreatedTime": "2026-03-05T06:18:55.853000+00:00",
        "LastUpdatedTime": "2026-03-05T06:25:35.885000+00:00",
        "Sheets": [
            {
                "SheetId": "16f33bf9-585d-47b3-9e0b-bc985ffac8c9",
                "Name": "シート 1"
            }
        ]
    },
    "RequestId": "70e81691-684a-4637-95cb-19fc454acdcf"
}

分析は削除されていないですね、なるほど!
ちなみに管理機能のアセット管理から検索してみると、削除されたユーザーに紐づくアセットを確認することができます。

image.png

API を使わない場合も、ここから権限付与は出来そうですね。
API の場合は、例えば分析であれば次のようにdescribe-analysis-permissionsでアセットに付与されている権限を確認することができます。
ユーザー削除

~ $ aws quicksight describe-analysis-permissions --aws-account-id 123456789012 --analysis-id dc15349e-90f8-4b41-98d8-2cd638b78680
{
    "Status": 200,
    "AnalysisId": "dc15349e-90f8-4b41-98d8-2cd638b78680",
    "AnalysisArn": "arn:aws:quicksight:ap-northeast-1:123456789012:analysis/dc15349e-90f8-4b41-98d8-2cd638b78680",
    "Permissions": [],
    "RequestId": "3d4b241f-3b63-487c-bab4-f4452ffea562"
}

Permissions に何も設置絵されていないですね。
API でユーザーを削除した場合は誰も権限が割り当てられていないアセットが残ることがわかりました。

さいごに

本日は Amazon Quick のユーザーを API 経由で削除した時にユーザー所有アセットがどうなるのか確認してみました。

API 経由の場合は他のユーザーに移動も、アセットをまとめて削除もされずに、権限の付与されていないアセットが残り続けることがわかりました。
この挙動を理解し、API の場合は削除されたユーザーのアセット権限の処理までするようにしましょう。

この記事をシェアする

FacebookHatena blogX

関連記事