Amazon Q Developerとは
Amazon Q Developerとは、生成AIを活用したアシスタントサービスです。
サポートの幅はとても広く、アプリケーション開発の現場においては、コードの新規生成や修正、セキュリティの脆弱性のスキャンなど行うことができます。また、チャット形式で質問をすることができ、日本語にも対応をしているため、プログラミングのコードが書けない人でも簡単に使用することができます。
Amazon Q Developerはコードの生成での使用機会が多く見受けられますが、アプリケーション開発以外のシチュエーションでも使用することができ、人間の手間を大幅に削減することが可能になります。
今回はその具体的な使用例として、セキュリティグループのルールを棚卸しする際のAmazon Q Developerの活用法をご紹介していきます。
Amazon Q Developer 使い方
今回の検証では、EC2インスタンスに特定のIPアドレスからのアクセスだけを許可したい場面を想定して行います。今回は5つのEC2インスタンスとそれぞれに設定をしたセキュリティグループを使用して検証を行っていきます。
ということで、まずはEC2インスタンスを5つ作成していきます。
① 5つのインスタンスを作成する

今回は手動で5つのEC2インスタンスを作成しました。
今回は特定の1つのアドレスからのアクセスだけを許可するように設定します。EC2インスタンスの中に1つだけ、セキュリティグループのアクセスを0.0.0.0/0にして、あえて脆弱性のあるセキュリティグループを作成します。従来であれば、人間が1つずつ確認をして脆弱性のあるインスタンスを見つけ出さなければいけません。
しかし、今回はこのEC2インスタンスをAmazon Q Developerに見つけ出してもらおうと思います!
早速、VS CodeからAmazon Q Developerを起動して、脆弱性のあるEC2インスタンスを検出してもらいましょう!
② Amazon Q Developerの起動

Amazon Q Developerを起動することができました。
Amazon Q DeveloperにEC2インスタンスを検出してもらうように、まずは、作成した5つのインスタンスを検出できるか確認してみましょう。


無事に5つのEC2インスタンスを検出してもらうことができました。
では、本題です!
この5つのEC2インスタンスの中で、脆弱性のあるEC2インスタンスを検出してもらいましょう!


「blog-5が使用しているsg-xxxに重大なセキュリティ脆弱性があります。」と教えてくれました。
無事に脆弱性のあるEC2インスタンスを検出することができ、どのようなセキュリティリスクがあるかまで教えてくれましたね!
VS Codeを開いてからほんの数分で脆弱性のあるEC2インスタンスを見つけることができました。
プログラミングの知識がない人でもこんな簡単にEC2インスタンスを検出することができるのか!とAmazon Q Developerに感動しました!
Amazon Q Developerを使用してつまずいたポイント
人間が1つずつ確認する作業を、Amazon Q Developerを使用すると大幅に作業を削減できることを少し理解していただけたかと思います。しかし、Amazon Q Developerの使い方を理解していないと思い通りに動作させることができないことがあります。
今回の検証では、うまくいかなかった場所が2か所ありました。
① Amazon Q Developerが想定外の動きをしてしまう
人間の指示内容が不十分だとAmazon Q Developerは思うように動いてくれません。
実は今回の検証でも一度想定外の動きをしていました。

この指示だけをだして、Amazon Q DeveloperにEC2インスタンスの検出をお願いしてしまうと…

すべてのリージョンにEC2インスタンスを確認しに行ってしまいました。
Amazon Q Developerに対してどのような指示を出すことが最適かちゃんと理解して使用する必要がありますね。
今回の検証では、特定のリージョンに絞ってインタンスを作成していたので、探索するリージョンを指示することで解決をしていきました。

② Amazon Q Developerのセットアップがうまくできない
今回はさらっと使っていましたが、VS CodeにAmazon Q Developerをインストールする段階でもうまくできませんでした。
Amazon Q DeveloperをVS Codeにインストール際には、Linuxのコマンドが登場します。私は先輩に助けてもらいながらインストールができましたが、Linuxのコマンドがほとんどわからない私にとってはインストール作業も一苦労でした。
利用定着に当たっての解決方法
これから初めてAmazon Q Developerを利用する方は私と同じ場所につまずいてしまうかもしれません。
これらの課題を解決していくためにも、
・Amazon Q Developerのインストール方法に関しての手順書を作成する
・Amazon Q Developerの使い方を学べる勉強会
といった解決方法を取り入れていく必要があると感じました。
もし会社内でこのあたりの作業が大変と感じるなら、SBNでサポートするソリューションをご用意しています。
【Amazon Q Developer pro 基本設定】
【Amazon Q Developer 導入勉強会】
【Amazon Q Developer 伴奏支援】
もしご興味があればお気軽に生成AI相談室へお声がけください!
まとめ
今回はAmazon Q Developerの機能から、具体的な使用方法までのご紹介をしてきました。
コードの生成をしてくれるので、アプリケーションの開発の現場での使用だけではなく、インフラ開発者にとっても大変便利なサービスであると感じました。
プログラミングの知識が全くない初心者の私でもすぐ使うことができたので、Amazon Q Developerを是非使ってみてください!
お役立ち資料をダウンロード
「Amazon Q Developer内製化支援パッケージ カタログ」のダウンロードをご希望のお客様は、
以下必要事項をご入力ください。