複数アカウントで分析を共有するの際の懸念対応について

QuickSightスキル向上のため、作成済の分析を別アカウントと共有しようとしています。
分析を複数人で操作することで、以下のような要求の発生を想定しています。
A、間違った操作をしてしまい、元に戻したい
B、誰がどんな操作したか履歴を知りたい
C、既に共有済の分析だが、自分以外のアカウントがいじれないようにロックしたい

上記要求に関しての以下質問について、ご教授いただきたくお願いします。
A-1、バージョン管理はできるのでしょうか?
A-2、バージョン管理ができない場合、操作前に戻す方法があれば教えてください。
B-1、履歴情報は取得できるのでしょうか?
B-2、履歴情報が取得できる場合、どこまで細かい情報が得られるのでしょうか?
C-1、共有済の分析をロックすることは可能なのでしょうか?

ご質問ありがとうございます。
同一QuickSightアカウント内のほかのAuthorユーザーと分析を共有することに関するご質問と理解しましたが、もし認識相違があればご指摘ください。

以下、ご質問について回答いたします。

A-1、バージョン管理はできるのでしょうか?

恐れ入りますが、あいにく分析にはバージョン管理の機能はございません。

A-2、バージョン管理ができない場合、操作前に戻す方法があれば教えてください。

同一ブラウザからの操作であれば最大200ステップまでの操作は分析の自動保存の機能により保存されているため、元に戻す(Undo)操作をすることができますが、ご質問頂いたような複数人での操作の場合には対応ができません。

代替案としては、以下のような方法が考えられます。

  • 事前に分析を別名で保存し、バックアップとして保持しておく。
  • 公開済みのダッシュボードから「名前を付けて保存」で分析を再度作成する。
  • AWS CLIがお使いになれるようであれば、start-asset-bundle-export-job を使い分析をバックアップしておく。

なお、誤って分析そのものを削除してしまった場合については、削除された分析はデフォルトで30日間はQuickSightアカウント内に保持されているため、AWS CLIで restore-analysis を実行することで復旧が可能です。

B-1、履歴情報は取得できるのでしょうか?

分析内での操作に関する履歴はございません。

B-2、履歴情報が取得できる場合、どこまで細かい情報が得られるのでしょうか?

N/A

C-1、共有済の分析をロックすることは可能なのでしょうか?

あいにく分析は「共同所有者」権限でのみ共有が可能となっており、共有された方に対して分析の編集をロックするようなことはできません。

以上、ご参考にしていただけますと幸いです。

B-1、履歴情報は取得できるのでしょうか?
B-2、履歴情報が取得できる場合、どこまで細かい情報が得られるのでしょうか?

基本的にQuickSight上で作成したリソースについては、JSONにて出力することができるようになっています。したがって、変更をしたタイミングで、JSONに出力しその内容を管理することでバージョン管理や履歴管理を行うことができます。例えば、ビジュアルの変更された内容(フィールドの変更や、フィルター設定など)は、JSON定義を新旧で比較することで、履歴管理ができ、旧バージョンに戻ることもできます。

このあたりのJSON出力や、上記紹介あったstart-asset-bundle-export-jobについては、ハンズオンワークショップがあるので、ぜひ試してみてください。

ご回答ありがとうございます。

回答の中に「変更をしたタイミングで、JSONに出力しその内容を管理することでバージョン管理や履歴管理を行うことができます」とありますが、

変更があったタイミングを自動で認識し、認識があった時点で自動でJSON出力する機能を付与することは可能でしょうか?

また、上記が可能であれば、それは各アカウントそれぞれで機能付与の設定をする必要があるのでしょうか?

@spisogloss

EventBridge上で、QuickSight上のイベントを取得できるようになっています。分析の作成や更新イベントも取得できるので、その中でJSON出力をするように開発いただくことで、実現することはできます。

これらの設定は、基本アカウント単位になるため、それぞれ設定いただく必要があります。

以下、EventBridgeを使った実装について英語ですが、ブログがあるので紹介させていただきます。

@spisogloss
その後いかがでしょうか?ytakahrさん、Wakanaさんの返答で解決しておりますでしょうか?もし解決しているようでしたら、返答の下にあるチェックボックスをクリックし、Solutionを選択いただけると助かります