
Amazon Quick Automate で S3 アクションを使えるようにしてみた
いわさです。
Amazon Quick Automate はブラウザベースの自動化ソリューションで、ノーコードでワークフローを構築出来るサービスです。
デフォルトでは Web ブラウザ操作や Excel 操作などのアクションが用意されていますが、Amazon S3 や Amazon Bedrock など一部の AWS サービスと連携するアクションも利用出来ます。
ただし、AWS サービスのアクションはデフォルトでは使えません。

設定前の Quick Automate のアクション一覧を見ると、Agents、Process Flow、Web browser などのカテゴリは表示されていますが、Amazon S3 は表示されていません。
今回こちらを確認してみたので紹介します。
実際に確認してみる
IAM ロールを作成する
まず、Quick Automate が S3 にアクセスするための IAM ロールを作成します。
公式ドキュメントに手順が記載されています。
IAM コンソールでロールの作成を開始し、信頼されたエンティティタイプとして「カスタム信頼ポリシー」を選択します。
信頼ポリシーには quicksight.amazonaws.com に対して sts:AssumeRole を許可するポリシーを設定します。

信頼ポリシーは以下のような内容です。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Principal": {
"Service": [
"quicksight.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}
次に許可ポリシーとして AmazonS3FullAccess を付与します。
なお、今回は検証目的でフルアクセスを付与していますが、本番環境では必要最小限の権限に絞ることを推奨します。

ロール名を設定してロールを作成します。
作成後、ロール ARN を控えておきます。
Amazon Quick 管理画面で AWS アクションを作成する
次に、Amazon Quick の管理画面から AWS アクションコネクタを作成します。
プロフィールアイコンから「Manage Quick」を選択し、左メニューの「アクセス許可」セクションにある「AWS アクション」をクリックします。

なお、コンソール上は「Quick Suite を管理」と旧名称で表示されている箇所がありますが、現在のサービス名は Amazon Quick です。
AWS アクション画面が表示されます。
初期状態では何も登録されていないので「新しいアクション」ボタンをクリックします。

ソースの選択画面が表示されます。
Machine learning カテゴリには Bedrock Agent、Bedrock Runtime、Bedrock Data Automation、Comprehend、Comprehend Medical、Textract が用意されており、AI・ML 系のサービスとも連携出来るようです。
Storage カテゴリに Amazon S3 があるので、今回はこちらを選択します。

次の画面で Amazon S3 で利用可能なアクション一覧が表示されます。
CopyObject や GetObject、PutObject など、S3 の基本的な操作が一通り揃っていることが確認出来ます。

次に接続の詳細を設定します。
名前と、先ほど作成した IAM ロールの ARN を入力します。

最後に共有アクションコネクタの設定です。
アクションコネクタは誰でも使えるわけではなく、管理者がここでアクセス権を付与したユーザーやグループのみが利用出来る仕組みになっています。

「追加」ボタンを押すと AWS アクションの作成が完了します。

Automation Group にアクションを追加する
AWS アクションを作成しただけでは Quick Automate のプロジェクトからは使えません。
Automation Group にアクションを追加する必要があります。
Automation Group は Quick Automate でプロジェクトを論理的にグルーピングする単位で、グループごとに利用可能なアクションや認証情報を管理出来ます。
作成した AWS アクションをグループに紐づけることで、そのグループ内のプロジェクトから利用可能になります。
Quick Automate の「Groups」からグループの管理画面を開き、「Add」ドロップダウンから「Actions」を選択します。

先ほど作成した S3 アクションが表示されるので、選択して「Add」ボタンを押します。

なお、私の環境ではグループにアクションを追加した直後は Quick Automate のアクション一覧に Amazon S3 が表示されませんでした。
一度ログアウトして再ログインしたところ、表示されるようになりました。
Quick Automate で S3 アクションを使ってみる
再ログイン後、Quick Automate のアクション一覧を確認すると、Amazon S3 カテゴリが追加されています。
Download file、Upload file、Copy object、Delete object、List objects のアクションが利用可能になっています。

実際にワークフローを作成して動作確認してみました。
今回は Web ブラウザで Web ページにアクセスしてスクリーンショットを撮影し、そのファイルを S3 にアップロードするというワークフローを作成しています。
テストを実行してみます。

S3 コンソールで確認すると、バケットにスクリーンショットがアップロードされていることが確認出来ます。

さいごに
本日は Amazon Quick Automate で S3 アクションを使えるようにするための設定手順を確認してみました。
IAM ロールの作成、AWS アクションコネクタの作成、Automation Group への追加と、いくつかのステップが必要ですが、一度設定してしまえばノーコードで S3 操作を含むワークフローを構築出来るようになります。
グループへのアクション追加後に再ログインが必要だったのは少しハマりポイントかもしれないですね。
S3 以外にも Bedrock Runtime や Textract などの AWS サービスも同様の手順で追加出来るので、AI を活用したドキュメント処理の自動化なども構築出来そうです。







