<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Yuji Oshima</title>
    <description>The latest articles on Forem by Yuji Oshima (@yuj1osm).</description>
    <link>https://forem.com/yuj1osm</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1261094%2F89ff2fb7-f066-40f3-869d-7f9a521ea96b.jpg</url>
      <title>Forem: Yuji Oshima</title>
      <link>https://forem.com/yuj1osm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/yuj1osm"/>
    <language>en</language>
    <item>
      <title>Build an Action Game to Learn AWS Security in a Fun Way with Amazon Q CLI</title>
      <dc:creator>Yuji Oshima</dc:creator>
      <pubDate>Mon, 09 Jun 2025 11:19:29 +0000</pubDate>
      <link>https://forem.com/aws-builders/build-an-action-game-to-learn-aws-security-in-a-fun-way-with-amazon-q-cli-4omc</link>
      <guid>https://forem.com/aws-builders/build-an-action-game-to-learn-aws-security-in-a-fun-way-with-amazon-q-cli-4omc</guid>
      <description>&lt;p&gt;There was an interesting campaign about Amazon Q CLI.&lt;br&gt;
If I build a game with Amazon Q CLI and publish a blog or video, I can get a limited T-shirt, so I tried it right away.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.aws/content/2xIoduO0xhkhUApQpVUIqBFGmAc/build-games-with-amazon-q-cli-and-score-a-t-shirt" rel="noopener noreferrer"&gt;Build Games with Amazon Q CLI and score a T shirt 🏆👕&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can interact with other builders and get support on Discord, so if you're interested, join us.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://discord.gg/KNC9JQAfKT" rel="noopener noreferrer"&gt;Discord&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Environment preparation
&lt;/h3&gt;

&lt;p&gt;Create an AWS Builder ID.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.aws/builderid" rel="noopener noreferrer"&gt;Builder ID&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6s5wds9rnxlunwzszwt6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6s5wds9rnxlunwzszwt6.png" alt="Image description" width="751" height="562"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Install Amazon Q CLI.&lt;br&gt;
There are procedures for each OS, so please refer to them.&lt;/p&gt;

&lt;p&gt;Linux&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.aws/content/2ulGwNwLFj5grS8hXJBMCN78Qwl/the-essential-guide-to-installing-amazon-q-developer-cli-on-linux?trk=6f6cb092-f1ba-456b-8644-73ed7ccbd567&amp;amp;sc_channel=el_" rel="noopener noreferrer"&gt;Essential guide to installing Amazon Q Developer CLI on Linux&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Windows&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.aws/content/2v5PptEEYT2y0lRmZbFQtECA66M/the-essential-guide-to-installing-amazon-q-developer-cli-on-windows?trk=e07eca93-fa2f-4351-b567-f293b83eb635&amp;amp;sc_channel=el_" rel="noopener noreferrer"&gt;The essential guide to installing Amazon Q Developer CLI on Windows&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This time, I used the Windows WSL environment.&lt;br&gt;
As you go through the steps, you will be able to run the installer.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;./install.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When running the installer, you will be asked questions, so answer them as follows.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Do you want to add it to the shell variable? → Yes&lt;/li&gt;
&lt;li&gt;How do you want to change the login method? → Use for Free with Builder ID
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;? Do you want to modify your shell config (you will have to manually do this otherwise)? ›
❯ Yes
No

? Select login method ›
❯ Use for Free with Builder ID
Use with Pro license

Confirm the following code in the browser
Code: XXXX-XXXX

Open this URL: https://view.awsapps.com/start/#/device?user_code=XXXX-XXXX
▰▰▰▰▰▱▱ Logging in...

Device authorized
Logged in successfully

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then a URL with the authentication code will be issued, so open it in your browser and continue.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnved0qlwsyqsp5tszhs8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnved0qlwsyqsp5tszhs8.png" alt="Image description" width="330" height="478"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You will be asked if you want Amazon Q Developer for command line to access your data, so allow it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftnyq0b8tvjc7zzqzzzbk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftnyq0b8tvjc7zzqzzzbk.png" alt="Image description" width="526" height="311"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Your request has been approved.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2beot2s927ao97tnnqwn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2beot2s927ao97tnnqwn.png" alt="Image description" width="318" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can confirm that q cli starts successfully by running the following command from WSL.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;q chat
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftheo5szrqjjlykggudl0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftheo5szrqjjlykggudl0.png" alt="Image description" width="717" height="407"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, install PyGame, a library required for game development.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.pygame.org/wiki/GettingStarted" rel="noopener noreferrer"&gt;GettingStarted - pygame wiki&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt-get install python3-pygame
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you have trouble with dependencies, you can ask Q to do it for you.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F251lpxckyd41kv5to39s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F251lpxckyd41kv5to39s.png" alt="Image description" width="800" height="578"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fng77vtorfzkrpo6lk8vz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fng77vtorfzkrpo6lk8vz.png" alt="Image description" width="800" height="103"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Try to build a game with Amazon Q CLI
&lt;/h3&gt;

&lt;p&gt;When you're not sure what to make, it's a good idea to ask Q to think about it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;gt; pygameでゲームを作ります。AWSセキュリティを学べる簡単なゲーム案を考えてください。
AWSセキュリティを学べるPygameゲームの案を考えてみましょう。以下は「AWS Security Defender」というゲーム案です：

## AWS Security Defender

プレイヤーはAWSクラウド環境のセキュリティ担当者となり、様々なセキュリティ脅威からリソースを守るゲームです。

### ゲームコンセプト
• 2Dサイドビューまたはトップダウン視点のアクションゲーム
• プレイヤーはAWSセキュリティエンジニアとして、クラウド環境を守る
• 様々なセキュリティ脅威（マルウェア、不正アクセス、設定ミスなど）が攻撃してくる
• 正しいセキュリティ対策を選んで脅威を撃退する

### ゲーム要素
1. ステージ構成:
   • EC2、S3、RDS、Lambdaなど異なるAWSサービスをテーマにしたレベル
   • 各レベルで特有のセキュリティ脅威と対策が登場

2. プレイメカニック:
   • プレイヤーは「セキュリティツール」を収集・使用して脅威を撃退
   • 例: IAMポリシー（アクセス制御）、WAF（Webアタック防御）、GuardDuty（異常検知）など
   • 正しいツールを正しい脅威に対して使うことでポイント獲得

3. 教育要素:
   • 各脅威とツールには実際のAWSセキュリティ概念の説明が付く
   • クイズ形式の「セキュリティチェックポイント」でAWSセキュリティの知識をテスト
   • ゲームオーバー時に「セキュリティベストプラクティス」のヒントを表示

4. ゲームの進行:
   • スコアはセキュリティ対策の適切さと速さで決まる
   • 高難度になるほど複雑なセキュリティシナリオが登場
   • 最終的にはマルチレイヤーのセキュリティ対策が必要になる

### 技術的な実装ポイント
• Pygameで2Dグラフィックスとアニメーションを実装
• シンプルな物理エンジンでキャラクター移動とアイテム収集を実現
• JSONファイルでセキュリティシナリオとクイズデータを管理
• スコアとプレイヤーの進捗を保存する機能

このゲームは楽しみながらAWSセキュリティの基本概念（最小権限の原則、多層防御、暗号化、監視など）を学べる教育ツールとして
機能します。プラットフォーマーゲームの要素を取り入れつつ、セキュリティの知識を実践的に身につけられる内容になっています。
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It looks good, so I asked Q to make it with this idea.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;gt; pygameを使ってその案のゲームを作ってください。
それでは、AWS Security Defenderゲームをpygameで実装していきましょう。まずは基本的なゲーム構造を作成します。
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then, Q created the game in no time.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;AWS Security Defenderゲームの実装が完了しました！以下のファイルを作成しました：

1. main.py - メインゲームループとゲームロジック
2. player.py - プレイヤーキャラクターのクラス
3. threats.py - セキュリティ脅威のクラス
4. tools.py - セキュリティツールのクラス
5. levels.py - ゲームレベルの定義
6. README.md - ゲームの説明書

## ゲームの実行方法

ゲームを実行するには、以下のコマンドを使用します：

bash
python main.py


## ゲームの特徴

1. 教育的要素:
   • AWSセキュリティの基本概念を学べる
   • 各レベルで異なるセキュリティシナリオを体験
   • セキュリティクイズでAWSの知識をテスト

2. ゲームプレイ:
   • 左右矢印キーでプレイヤーを移動
   • スペースキーで攻撃
   • タブキーでセキュリティツールを切り替え
   • 正しいツールで脅威を撃退するとスコア獲得

3. レベル構成:
   • レベル1: EC2セキュリティ（基本的な脅威）
   • レベル2: S3データ保護（データ漏洩対策）
   • レベル3: ネットワーク防御（複合的な脅威）

## 拡張アイデア

このゲームは基本的な実装ですが、以下のように拡張できます：

1. グラフィック改善:
   • 単純な四角形の代わりに、AWSサービスのアイコンを使用
   • アニメーションの追加
   • 背景にAWSクラウド環境の視覚的表現

2. ゲームプレイの拡張:
   • より多くのレベルとシナリオ
   • 難易度設定
   • ハイスコアの保存
   • より多くのセキュリティツールと脅威タイプ

3. 教育コンテンツの充実:
   • より詳細なAWSセキュリティの説明
   • 実際のAWSコンソールに似たUI要素
   • より多くのクイズと学習コンテンツ

このゲームを通じて、プレイヤーはAWSセキュリティの基本概念を楽しく学ぶことができます。
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After that, I played the game and made small modifications to complete it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Finished game
&lt;/h3&gt;

&lt;p&gt;This game is called "AWS Security Defender Game".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbzm2lgyym6gvibvdw96.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbzm2lgyym6gvibvdw96.png" alt="Image description" width="800" height="617"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Players become security officers in the AWS cloud environment and protect resources from various security threats.&lt;br&gt;
Use the right security tools to defeat threats and get points.&lt;/p&gt;

&lt;p&gt;Each level features a different threat that you need to deal with using the right security tools.&lt;br&gt;
If you defeat the threat correctly, you get 100 points, and if you miss it, you lose 50 points.&lt;/p&gt;

&lt;p&gt;The code is available on GitHub.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/yuj1osm/aws-security-defender-game" rel="noopener noreferrer"&gt;GitHub - AWS Security Defender Game&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Summary
&lt;/h3&gt;

&lt;p&gt;I was able to easily build a game using Amazon Q CLI.&lt;br&gt;
It's amazing that I was able to build something that works just by interacting with Q without doing any coding.&lt;br&gt;
Depending on how you devise the prompts, you may be able to build an even more amazing game.&lt;br&gt;
Please take this campaign as an opportunity to try out Amazon Q CLI.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>amazonqcli</category>
      <category>amazonqdeveloper</category>
      <category>pygame</category>
    </item>
    <item>
      <title>AWS Summit Japan 2024 Participation Summary</title>
      <dc:creator>Yuji Oshima</dc:creator>
      <pubDate>Wed, 31 Jul 2024 09:48:09 +0000</pubDate>
      <link>https://forem.com/aws-builders/aws-summit-japan-2024-participation-summary-4d7f</link>
      <guid>https://forem.com/aws-builders/aws-summit-japan-2024-participation-summary-4d7f</guid>
      <description>&lt;p&gt;I recently attended the AWS Summit Japan 2024 held at Makuhari Messe, so I will share my experience there.&lt;/p&gt;

&lt;h3&gt;
  
  
  Event Overview
&lt;/h3&gt;

&lt;p&gt;Date: Thursday, June 20th - Friday, June 21st, 2024&lt;br&gt;
Venue: Makuhari Messe&lt;br&gt;
Participation fee: Free&lt;/p&gt;

&lt;p&gt;AWS Summit is an event for everyone interested in innovating with all things cloud, where the cloud computing community can come together to learn about Amazon Web Services (AWS), share best practices, and exchange information.&lt;/p&gt;

&lt;p&gt;There will be more than 150 sessions, more than 250 exhibition booths, and a variety of other content.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/jp/summits/japan/" rel="noopener noreferrer"&gt;AWS Summit Japan&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Entering the venue
&lt;/h3&gt;

&lt;p&gt;When I enter Makuhari Messe, I see large board.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd8uffwbsu266tmzwqg9e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fd8uffwbsu266tmzwqg9e.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At the reception I can get a reserved seat ticket for the keynote speech and a lunch voucher.&lt;br&gt;
Previous events have had unreserved seating, but this year it seems that seating will be reserved.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgxwoumg4afyxfz9tht1x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgxwoumg4afyxfz9tht1x.png" alt="Image description" width="687" height="915"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are cushions placed on the seats that we can take home.&lt;br&gt;
This year's cushions have bands and are foldable.&lt;br&gt;
Since various swags will be available to receive during the event, it is great to have the cushions fold up compactly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzezkk9lrtb385hrq9073.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzezkk9lrtb385hrq9073.png" alt="Image description" width="687" height="915"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;An opening DJ is playing at the keynote venue, which get me excited.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2chdni0p1ahgc2lcyzuh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2chdni0p1ahgc2lcyzuh.png" alt="Image description" width="800" height="434"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Keynote speech
&lt;/h3&gt;

&lt;p&gt;First, a greeting from Jaime Valles, Vice President &amp;amp; Managing Director and Japan Managing Director.&lt;br&gt;
He say that we will continue to focus on the Japanese market.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foe8q9x7wlkx1xls6zfo8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foe8q9x7wlkx1xls6zfo8.png" alt="Image description" width="800" height="552"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next is a session by Werner Vogels, CTO.&lt;br&gt;
I listened to Werner's session at re:Invent last year, and it was an engaging talk that interweaved historical background.&lt;br&gt;
It was a very rare opportunity to listen to Werner speak in Japan.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The idea of ​​automation has existed since the time of Plato and Aristotle.&lt;/li&gt;
&lt;li&gt;From early expert systems, ideas such as deep learning and reinforcement learning have emerged, and LLM has recently come to prominence.&lt;/li&gt;
&lt;li&gt;LLM is just the beginning, and it is important to think about what we will achieve with AI.&lt;/li&gt;
&lt;li&gt;Good AI requires good data, and good work requires good people.&lt;/li&gt;
&lt;li&gt;Examples of AI technology use in agriculture, drones, medicine, etc. were introduced.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Last year, "democratization of security" was an important keyword, but "democratization of data" is also likely to become an important keyword.&lt;br&gt;
I feel that we will need the ability to look at issues from a broader perspective and consider ways to utilize AI technology.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqxqickbl39yjo7xs7jl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqxqickbl39yjo7xs7jl.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next is a session by Jared Kaplan, Co-Founder &amp;amp; Chief Scientist at Anthropic.&lt;br&gt;
He talk about Anthropic's research, security efforts, and Claude3.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7nedviy8uuliy4hmmuvr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7nedviy8uuliy4hmmuvr.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next is a session by Mikihiko Tsunematsu, Director.&lt;br&gt;
He made various announcements.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Anthropic's Claude3 now available in the Tokyo region&lt;/li&gt;
&lt;li&gt;Amazon Q Business Japanese version released&lt;/li&gt;
&lt;li&gt;Announcement of new certifications, AIF and MLA&lt;/li&gt;
&lt;li&gt;Announcement of AWS Generated AI Practical Application Promotion Program&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fshmuoaxafr7alpepms77.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fshmuoaxafr7alpepms77.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As expected, the keynote speech was full of generative AI.&lt;/p&gt;

&lt;h3&gt;
  
  
  Scene from the venue
&lt;/h3&gt;

&lt;p&gt;The venue was very spacious, with many session venue and corporate booths creating a lively atmosphere.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwmzqt3477qenf5qanks4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwmzqt3477qenf5qanks4.png" alt="Image description" width="800" height="492"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn1k4ruogf2dhbmjajfhy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn1k4ruogf2dhbmjajfhy.png" alt="Image description" width="800" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The certified lounge is larger than last year.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwjphimj163dofx79r6il.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwjphimj163dofx79r6il.png" alt="Image description" width="800" height="561"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;An exciting race is taking place at the AWS DeepRacer venue.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Febz3qj5c6rhntw1equrn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Febz3qj5c6rhntw1equrn.png" alt="Image description" width="800" height="593"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are also some photogenic spots.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh2wnuc2wl253hou9fg1w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh2wnuc2wl253hou9fg1w.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I had the chance to try out Chaos Kitty.&lt;br&gt;
The physical architecture, made up of blocks and IoT lightbulbs, represents a simple three-tier web app in an AWS environment.&lt;br&gt;
When a configuration change occurs, the IoT lightbulbs change color from green (safe) to red (configuration violation), and I can change the settings in the AWS console to make them all green.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fddhcpow141gi46s9de6n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fddhcpow141gi46s9de6n.png" alt="Image description" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I tried holding the actual AWS Snowball&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5qop5jg7e2euj7a45wz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu5qop5jg7e2euj7a45wz.png" alt="Image description" width="687" height="915"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;This year's AWS Summit was also very enjoyable.&lt;br&gt;
As expected, there were many topics related to generative AI.&lt;br&gt;
Many companies are offering services using generative AI, and I realized that generative AI is becoming increasingly widespread and being integrated into services as a matter of course.&lt;br&gt;
This concludes my brief introduction to AWS Summit Japan 2024.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>awssummit</category>
      <category>awssummitjapan</category>
    </item>
    <item>
      <title>Amazon GuardDuty Malware Protection for Amazon S3 is now generally available at re:Inforce 2024</title>
      <dc:creator>Yuji Oshima</dc:creator>
      <pubDate>Wed, 31 Jul 2024 09:47:55 +0000</pubDate>
      <link>https://forem.com/aws-builders/amazon-guardduty-malware-protection-for-amazon-s3-is-now-generally-available-at-reinforce-2024-2d25</link>
      <guid>https://forem.com/aws-builders/amazon-guardduty-malware-protection-for-amazon-s3-is-now-generally-available-at-reinforce-2024-2d25</guid>
      <description>&lt;p&gt;Amazon GuardDuty Malware Protection for Amazon S3 was released at AWS re:Inforce 2024, so I immediately checked it out.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/jp/about-aws/whats-new/2024/06/detect-malware-object-uploads-amazon-s3-guardduty/" rel="noopener noreferrer"&gt;Detect malware in new object uploads to Amazon S3 with Amazon GuardDuty - AWS&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/blogs/aws/introducing-amazon-guardduty-malware-protection-for-amazon-s3/" rel="noopener noreferrer"&gt;Introducing Amazon GuardDuty Malware Protection for Amazon S3 | AWS News Blog&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Update Overview
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The GuardDuty Malware Protection extension detects the upload of malicious files to the selected S3 bucket&lt;/li&gt;
&lt;li&gt;If GuardDuty is not enabled, you can enable only the GuardDuty Malware Protection for Amazon S3 feature&lt;/li&gt;
&lt;li&gt;The scanned object is tagged with GuardDutyMalwareScanStatus, and the tag value indicates whether it was determined to be a threat&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The tag values ​​are as follows&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;NO_THREATS_FOUND: No potential threats were detected&lt;/li&gt;
&lt;li&gt;THREATS_FOUND: Potential threats were detected&lt;/li&gt;
&lt;li&gt;UNSUPPORTED: Scanning of the object is not supported&lt;/li&gt;
&lt;li&gt;ACCESS_DENIED: The object cannot be accessed&lt;/li&gt;
&lt;li&gt;FAILED: Malware scanning cannot be performed&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;More details about tags are also available in the following documentation&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/guardduty/latest/ug/monitoring-malware-protection-s3-scans-gdu.html#s3-object-scan-result-value-malware-protection" rel="noopener noreferrer"&gt;Monitoring S3 object scan status - Amazon GuardDuty&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pricing is based on the size and number of objects.
Prices are as follows:&lt;/li&gt;
&lt;li&gt;$0.79/GB per month for file size&lt;/li&gt;
&lt;li&gt;$0.282/1k per month for number of files&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/guardduty/pricing/?nc1=h_ls" rel="noopener noreferrer"&gt;Intelligent Threat Detection – Amazon GuardDuty Pricing – AWS&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Enable Malware Protection for Amazon S3
&lt;/h3&gt;

&lt;p&gt;Click "Enable Malware Protection for S3" from "Malware Protection for S3" in GuardDuty.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsmpt18t5ggaxu3r82uli.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsmpt18t5ggaxu3r82uli.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Select "All objects in S3 bucket" as the S3 bucket to scan, and "Tag objects" as the tagging.&lt;br&gt;
Create an IAM role for the Malware Protection for Amazon S3 feature.&lt;br&gt;
Click "View Permissions".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flxwfxebv3v8hb65es31z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flxwfxebv3v8hb65es31z.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The policies required for the IAM role will be displayed, so copy them.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0udost9gc4yugvvuegyo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0udost9gc4yugvvuegyo.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For reference, the policies and trust relationships are as follows:&lt;/p&gt;

&lt;p&gt;Policy&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2012-10-17"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Statement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowManagedRuleToSendS3EventsToGuardDuty"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"events:PutRule"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"events:DeleteRule"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"events:PutTargets"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"events:RemoveTargets"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:events:ap-northeast-1:3&amp;lt;accountID&amp;gt;:rule/DO-NOT-DELETE-AmazonGuardDutyMalwareProtectionS3*"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Condition"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"StringLike"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"events:ManagedBy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"malware-protection-plan.guardduty.amazonaws.com"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowGuardDutyToMonitorEventBridgeManagedRule"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"events:DescribeRule"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"events:ListTargetsByRule"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:events:ap-northeast-1:&amp;lt;accountID&amp;gt;:rule/DO-NOT-DELETE-AmazonGuardDutyMalwareProtectionS3*"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowPostScanTag"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:PutObjectTagging"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObjectTagging"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:PutObjectVersionTagging"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObjectVersionTagging"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::test-s3mal-bucket/*"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowEnableS3EventBridgeEvents"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:PutBucketNotification"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetBucketNotification"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::test-s3mal-bucket"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowPutValidationObject"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:PutObject"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::test-s3mal-bucket/malware-protection-resource-validation-object"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:ListBucket"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::test-s3mal-bucket"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowMalwareScan"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObject"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObjectVersion"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::test-s3mal-bucket/*"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"AllowDecryptForMalwareScan"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"kms:GenerateDataKey"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"kms:Decrypt"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:kms:ap-northeast-1:&amp;lt;accountID&amp;gt;:key/&amp;lt;key_id&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Condition"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"StringLike"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"kms:ViaService"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"s3.*.amazonaws.com"&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Trust relationship&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2012-10-17"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Statement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Principal"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"Service"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"malware-protection-plan.guardduty.amazonaws.com"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sts:AssumeRole"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Next, create an IAM role.&lt;br&gt;&lt;br&gt;
The entity type should be a custom trust policy and paste the copied trust relationship.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0m45lsvve28ghek2g2va.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0m45lsvve28ghek2g2va.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Policies are added as inline policies after creating a role.&lt;br&gt;
Enter a role name and create the role.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe64ce8bd6llrsazrdqfb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe64ce8bd6llrsazrdqfb.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the inline policy permissions, paste the policy that you copied.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo9h0sxm9bgrnky4jglqk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo9h0sxm9bgrnky4jglqk.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter a policy name and create the policy.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F92wswo6bzlwufx32bhb7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F92wswo6bzlwufx32bhb7.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Return to the Enable S3 Malware Protection setting, select the IAM role you created, and click "Enable."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff92r7b2ry2izvzs44orb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff92r7b2ry2izvzs44orb.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;S3 Malware Protection has been enabled.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp60hext3omnt5eielsgu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp60hext3omnt5eielsgu.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can monitor the scan status.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyfc6a5ev32tfv6uynjol.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyfc6a5ev32tfv6uynjol.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The IAM policy had permissions to S3 and EventBridge.&lt;br&gt;
So I checked EventBridge and found that a rule called "DO-NOT-DELETE-AmazonGuardDutyMalwareProtectionS3-" had been created.&lt;br&gt;
Looking at the event pattern and target, it appeared that when an object is created in the S3 bucket, guardduty-malware-protection-plan is launched and a scan is performed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdvtbgunr1prp1nh6toys.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdvtbgunr1prp1nh6toys.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9blt5pc9vk2rmaakqwpm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9blt5pc9vk2rmaakqwpm.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Detecting malware
&lt;/h3&gt;

&lt;p&gt;Upload the eicar file to S3 bucket.&lt;/p&gt;

&lt;p&gt;By the way, when S3 Malware Protection is enabled, a test file called "malware-protection-resource-validation-object" is automatically created.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsy8ceeiq18h1nklym4t3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsy8ceeiq18h1nklym4t3.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When watching the monitoring, you can see that it is being scanned and determined to be infected.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe7r3e9zoenz1ynsegq78.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe7r3e9zoenz1ynsegq78.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The eicar file is tagged with "GuardDutyMalwareScanStatus: THREATS_FOUND", indicating that a potential threat has been detected.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frrejluce6pcclyro2rl0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frrejluce6pcclyro2rl0.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;By the way, if you look at the tag of the test file "malware-protection-resource-validation-object" created during activation, you will see that it is tagged with "GuardDutyMalwareScanStatus: NO_THREATS_FOUND", which indicates that it was not determined to be a potential threat.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvsjqwujklni4pmqcj66.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuvsjqwujklni4pmqcj66.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Checking the detection results
&lt;/h3&gt;

&lt;p&gt;Now let's look at the detection results.&lt;br&gt;
Looking at the "Detection Results" in GuardDuty, you can see that the detection result type is "Object:S3/MaliciousFile" with a severity of "High".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flfoczucdvjriwwjskuwu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flfoczucdvjriwwjskuwu.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you look at the details, you can see the reason for the detection and information about the object.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faaq8rzm6lu98cepnnmbk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faaq8rzm6lu98cepnnmbk.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Protect against malware
&lt;/h3&gt;

&lt;p&gt;After scanning, objects are tagged, so you can implement tag-based access control (TBAC) in your bucket policies to isolate malware from the resources it accesses.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/guardduty/latest/ug/tag-based-access-s3-malware-protection.html" rel="noopener noreferrer"&gt;Using tag-based access control (TBAC) with Malware Protection for S3 - Amazon GuardDuty&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There is an example policy, so set it in the S3 bucket policy.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fin9p0kmrl7dyfk5t6irh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fin9p0kmrl7dyfk5t6irh.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It denies access to any objects other than those with the tag "GuardDutyMalwareScanStatus": "NO_THREATS_FOUND".&lt;/p&gt;

&lt;p&gt;Tag-Based Access Control (TBAC) Bucket Policy Examples&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2012-10-17"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"Statement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NoReadExceptForClean"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Deny"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"NotPrincipal"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="nl"&gt;"AWS"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:iam::555555555555:root"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:iam::555555555555:role/IAM-role-ARN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:iam::555555555555:assumed-role/role-ARN/GuardDutyMalwareProtection"&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObject"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObjectVersion"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::DOC-EXAMPLE-BUCKET"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Condition"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="nl"&gt;"StringNotEquals"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="nl"&gt;"s3:ExistingObjectTag/GuardDutyMalwareScanStatus"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"NO_THREATS_FOUND"&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Sid"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"OnlyGuardDutyCanTag"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Deny"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"NotPrincipal"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="nl"&gt;"AWS"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:iam::555555555555:root"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:iam::555555555555:role/IAM-role-ARN"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                    &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:iam::555555555555:assumed-role/role-ARN/GuardDutyMalwareProtection"&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"s3:PutObjectTagging"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::DOC-EXAMPLE-BUCKET"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
                &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;As a test, upload a harmless file to your S3 bucket.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft5oibscvkhp37wvlxis7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ft5oibscvkhp37wvlxis7.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fanhwsa3868jxj1ykuw60.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fanhwsa3868jxj1ykuw60.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The result was "GuardDutyMalwareScanStatus: NO_THREATS_FOUND".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F65i51v399eits0eik2ei.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F65i51v399eits0eik2ei.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When I tried copying it locally using AWS CloudShell, only the eicar file was blocked.&lt;/p&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

&lt;p&gt;$ aws s3 cp s3://test-s3mal-bucket/test.txt ./&lt;br&gt;
download: s3://test-s3mal-bucket/test.txt to ./test.txt&lt;br&gt;&lt;br&gt;
$ aws s3 cp s3://test-s3mal-bucket/eicar.com ./&lt;br&gt;
fatal error: An error occurred (403) when calling the HeadObject operation: Forbidden&lt;/p&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h3&gt;
&lt;br&gt;
  &lt;br&gt;
  &lt;br&gt;
  Summary&lt;br&gt;
&lt;/h3&gt;

&lt;p&gt;I tried Amazon GuardDuty Malware Protection for Amazon S3.&lt;/p&gt;

&lt;p&gt;I'm glad that we can easily implement the isolation mechanism, not just detection.&lt;/p&gt;

&lt;p&gt;As a use case, I think it will be effective in applications where an unspecified number of users can upload files to an S3 bucket.&lt;/p&gt;

&lt;p&gt;On the other hand, there seems to be no need to force it on S3 buckets that are used internally for log storage and do not have room for uploads from an unspecified number of users.&lt;br&gt;
Use it according to your needs.&lt;/p&gt;

&lt;p&gt;You can freely customize tagging and EventBridge, so you can send notification emails to operators or isolate them in other buckets.&lt;br&gt;
It's a good idea to design it flexibly according to your requirements.&lt;/p&gt;

&lt;p&gt;The scope of use of GuardDuty is expanding, so let's try it out.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>guardduty</category>
      <category>reinforce</category>
      <category>awsreinforce</category>
    </item>
    <item>
      <title>Summary of AWS Security Hub updates announced at re:Invent 2023</title>
      <dc:creator>Yuji Oshima</dc:creator>
      <pubDate>Sat, 27 Jan 2024 12:19:54 +0000</pubDate>
      <link>https://forem.com/aws-builders/summary-of-aws-security-hub-updates-announced-at-reinvent-2023-44lm</link>
      <guid>https://forem.com/aws-builders/summary-of-aws-security-hub-updates-announced-at-reinvent-2023-44lm</guid>
      <description>&lt;p&gt;At AWS re:Invent 2023, there were many updates regarding AWS security services.&lt;br&gt;
In this article, I will introduce updates to AWS Security Hub.&lt;/p&gt;

&lt;h3&gt;
  
  
  AWS Security Hub Control Customization
&lt;/h3&gt;

&lt;p&gt;You can now customize the managed controls in the Security Hub.&lt;br&gt;&lt;br&gt;
For example, the default renewal interval for certificates issued by ACM is 30 days, but you can change to 45 or 60 days according to your organization's policies.  &lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/customize-security-controls-aws-security-hub/"&gt;You can now customize security controls in AWS Security Hub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This can be set from "Customize Control Parameters" under "Custom Policies."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk2y5afcfpg3eb9wszhcb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk2y5afcfpg3eb9wszhcb.png" alt="Image description" width="455" height="583"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Security Hub controls are not always the best for an organization, so it is a nice update to be able to customize them for our　organization.&lt;/p&gt;

&lt;h3&gt;
  
  
  AWS Security Hub Dashboard Enhancements
&lt;/h3&gt;

&lt;p&gt;The summary dashboard widget can now be customized.&lt;br&gt;&lt;br&gt;
The dashboard can now be filtered by AWS account and resource tags, allowing you to customize the dashboard in a way that is easy for you to use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/dashboard-enhancements-aws-security-hub/"&gt;Announcing major dashboard enhancements in AWS Security Hub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can view threat and vulnerability rankings.&lt;br&gt;&lt;br&gt;
You can also drag and drop graphs from the widget on the right.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flaezby42p4xqihw24nw3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flaezby42p4xqihw24nw3.png" alt="Image description" width="800" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For operators, the ability to customize an unified dashboard to suit their purposes is a much appreciated feature.&lt;br&gt;&lt;br&gt;
This update makes the Security Hub much easier to use.&lt;/p&gt;

&lt;h3&gt;
  
  
  New centralized configuration feature in AWS Security Hub
&lt;/h3&gt;

&lt;p&gt;Centralized configuration is now available from a delegated administrator account.&lt;br&gt;&lt;br&gt;
This allows for flexibility with specific standards and controls across accounts and regions.&lt;br&gt;&lt;br&gt;
For example, specific controls can be disabled on an organizational basis, or customization of control parameters can be applied only to specific accounts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/aws-security-hub-central-configuration/"&gt;Announcing new central configuration capabilities in AWS Security Hub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To see the settings.&lt;br&gt;&lt;br&gt;
From the Security Hub, go to "Settings" and press "Start Central Configuration."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdphqewnrs7jpii0sjokf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdphqewnrs7jpii0sjokf.png" alt="Image description" width="800" height="458"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From "Region," select any region to which you want to apply the policy.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1i62l896daz5e85cleh4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1i62l896daz5e85cleh4.png" alt="Image description" width="729" height="747"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From "Configuration Type," select "Customize Security Hub Settings."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffo4l0goj5iuu7rlhjg8s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffo4l0goj5iuu7rlhjg8s.png" alt="Image description" width="800" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the "Custom Policies", select "Disable Specific Controls" and select the controls you wish to disable.&lt;br&gt;&lt;br&gt;
Again, you can use the update "AWS Security Hub Control Customization" feature.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvbupbsn2391t6d4pqjtm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvbupbsn2391t6d4pqjtm.png" alt="Image description" width="692" height="1160"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can then specify to which organization or account the configured policy should be applied.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ful7sz5sqim9t8y285qv6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ful7sz5sqim9t8y285qv6.png" alt="Image description" width="578" height="744"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Finally, enter the name, description, and tags of the policy you have set up so far and you are done.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnycw263j2o229cdooa2m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnycw263j2o229cdooa2m.png" alt="Image description" width="755" height="552"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Previously, controls were enabled or disabled for individual member accounts, but with this update, they can be centrally managed, which will make operations easier.&lt;/p&gt;

&lt;h3&gt;
  
  
  Announcing the addition of new Findings in the AWS Security Hub
&lt;/h3&gt;

&lt;p&gt;New metadata has been added to Findings to help prioritize responses and understand context.&lt;br&gt;&lt;br&gt;
Specifically, the AWS account name, resource tag, and application tag are assigned.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/new-finding-enrichment-aws-security-hub/"&gt;Announcing new finding enrichment in AWS Security Hub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From "Detection Results" in the Security Hub, "Details" shows the AWS account name and resource tag.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwi2s9h51vm4ly0qkv1zl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwi2s9h51vm4ly0qkv1zl.png" alt="Image description" width="800" height="482"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The same is shown in the JSON log.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7vgv2rmcwwgiixtapo96.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7vgv2rmcwwgiixtapo96.png" alt="Image description" width="712" height="608"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If users wanted to add information to the detection results, they had to develop it, but with this update, it is no longer necessary to build it in.&lt;br&gt;&lt;br&gt;
For example, it used to be a time-consuming task to identify account names from account IDs in the logs, but now that the information is in the logs, it is easier to investigate.&lt;br&gt;&lt;br&gt;
This is a very welcome update for operators.&lt;/p&gt;

&lt;h3&gt;
  
  
  Summary
&lt;/h3&gt;

&lt;p&gt;The Security Hub is essential to maintaining the security of an AWS environment, so I look forward to future updates.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>securityhub</category>
      <category>reinvent</category>
      <category>awsreinvent2023</category>
    </item>
    <item>
      <title>Summary of Amazon Inspector updates announced at re:Invent 2023</title>
      <dc:creator>Yuji Oshima</dc:creator>
      <pubDate>Sat, 27 Jan 2024 12:18:36 +0000</pubDate>
      <link>https://forem.com/aws-builders/summary-of-amazon-inspector-updates-announced-at-reinvent-2023-3efm</link>
      <guid>https://forem.com/aws-builders/summary-of-amazon-inspector-updates-announced-at-reinvent-2023-3efm</guid>
      <description>&lt;p&gt;At AWS re:Invent 2023, there were many updates regarding AWS security services.&lt;br&gt;
In this article, I will introduce updates to Amazon Inspector.&lt;/p&gt;

&lt;h3&gt;
  
  
  Support for Lambda Code Scanning with Generative AI
&lt;/h3&gt;

&lt;p&gt;Generative AI now provides code modification support based on scan results.&lt;br&gt;&lt;br&gt;
Code scanning for Lambda is a feature that was generally available at re:Inforce 2023, but at that time, only abstract fix suggestions were provided.&lt;br&gt;&lt;br&gt;
With this update, more specific code fix suggestions and patch files can be obtained.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-inspector-aws-lambda-code-scanning/" rel="noopener noreferrer"&gt;Amazon Inspector expands AWS Lambda code scanning with generative AI powered remediation&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let's try to detect "Path traversal" from "Amazon CodeGuru, Detector Library".&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/codeguru/detector-library/python/path-traversal/" rel="noopener noreferrer"&gt;Path traversal | Amazon CodeGuru, Detector Library&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Prepare a Lambda function to detect it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnc3j1regru78jreokfcj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnc3j1regru78jreokfcj.png" alt=" " width="800" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After a while, the Lambda function is detected by Inspector.&lt;br&gt;&lt;br&gt;
In the detail screen, a specific code fix is proposed and a patch file can be downloaded.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qhadbyi9uuvwe5cn9z8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1qhadbyi9uuvwe5cn9z8.png" alt=" " width="682" height="579"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I think it will be easier to focus on secure code development since you can easily scan the Lambda code and provide suggested fixes and patch files.&lt;/p&gt;

&lt;h3&gt;
  
  
  Support for Agentless Vulnerability Assessment for EC2
&lt;/h3&gt;

&lt;p&gt;Amazon Inscpctor can now perform EC2 vulnerability assessment without installing an agent.&lt;br&gt;&lt;br&gt;
Previously, the AWS System Manager agent had to be installed, but now it can automatically determine whether an agent is present and scan for it.&lt;br&gt;&lt;br&gt;
Scanning frequency is at 24-hour intervals.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-inspector-agentless-assessments-ec2-preview/" rel="noopener noreferrer"&gt;Amazon Inspector agentless vulnerability assessments for Amazon EC2 now in preview&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is accomplished by using EBS snapshots to obtain software inventory information.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbtscfk40f07aoltdwjy1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbtscfk40f07aoltdwjy1.png" alt=" " width="741" height="199"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To configure, press "Edit" from "Scan mode" in "EC2 scanning settings" on the console screen.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv0o4x061rwwapey5wtnx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv0o4x061rwwapey5wtnx.png" alt=" " width="743" height="339"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can select either "Hybrid" or "Agent-based" mode.&lt;br&gt;
Agent-based" mode is the traditional scanning method: scanning only those EC2s with the agent installed.&lt;br&gt;&lt;br&gt;
"Hybrid" mode is the mode in which agent-less works: agent-based scans are performed if an agent is installed, and agent-less scans are performed if no agent is installed.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqn40k8egr3ha9o60k9h8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fqn40k8egr3ha9o60k9h8.png" alt=" " width="518" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We understand that there may be cases where it is difficult to install an agent due to company rules or network configuration.&lt;br&gt;&lt;br&gt;
With this update, you can now manage vulnerabilities with Inspector even if you do not have an agent installed.&lt;br&gt;&lt;br&gt;
However, since the frequency of agent-less scans is every 24 hours, it is better to install an agent whenever possible and then switch to "Hybrid" mode for real-time detection.&lt;/p&gt;

&lt;h3&gt;
  
  
  Support for scanning container images within CI/CD tools
&lt;/h3&gt;

&lt;p&gt;Amazon Inspector now integrates with developer tools to scan container images.&lt;br&gt;&lt;br&gt;
It is compatible with Jenkins, TeamCity, etc. and works seamlessly with traditional developer tools.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aws.amazon.com/about-aws/whats-new/2023/11/amazon-inspector-image-security-developer-tools/" rel="noopener noreferrer"&gt;Amazon Inspector enhances container image security by integrating with developer tools&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There were two types of container image scans: ECR's basic scanning and Inspector's enhanced scanning.&lt;br&gt;&lt;br&gt;
While basic scans could be integrated into the CI/CD pipeline, enhanced scanning were not supported.&lt;br&gt;&lt;br&gt;
With this update, enhanced scanning can also be integrated into the CI/CD pipeline, allowing for more security assurance at an earlier stage of development.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgy76p1z26wc1e45jh16n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgy76p1z26wc1e45jh16n.png" alt=" " width="800" height="303"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It is a welcome update to be able to integrate Inspector with developers' familiar tools and integrate it into the CI/CD pipeline.&lt;/p&gt;

&lt;h3&gt;
  
  
  Summary
&lt;/h3&gt;

&lt;p&gt;There have been many updates to Inspector in 2023, and we have also seen features that integrateed into generative AI.&lt;br&gt;&lt;br&gt;
Not only security personnel, but also developers can easily manage vulnerabilities, and I believe that the user experience will change dramatically in the future.&lt;br&gt;&lt;br&gt;
We will keep an eye on the future of Inspector and Generative AI.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>isnpector</category>
      <category>reinvent</category>
      <category>awsreinvent2023</category>
    </item>
  </channel>
</rss>
