モダンなアプリケーションのセキュリティ対策について学んできた #AWSreInvent

2023.12.30

はじめに

こんにちは!AWS事業本部コンサルティング部の和田響です。
AWS re:Invent 2023では、ラスベガスにて現地参加していました。
この記事では、現地で公聴したBreakout Sessionの「SEC227 | Improving security through modern application development」について紹介します。

概要

In this session, explore security practices used in modern application development and how these address common security challenges found in legacy applications. Learn patterns for integrating security early in the development lifecycle, applying security at all layers in containerized and serverless applications, enforcing API security, implementing secure coding practices, and more. By embracing these practices, modern application development can accelerate your software delivery and enhance your security posture.

このセッションでは、最新のアプリケーション開発で使用されているセキュリティの実践と、レガシー アプリケーションで見られる一般的なセキュリティの課題にこれらの手法がどのように対処するかを探ります。 開発ライフサイクルの早い段階でのセキュリティの統合、コンテナ化されたサーバーレス アプリケーションのすべての層でのセキュリティの適用、API セキュリティの強化、安全なコーディング手法の実装などのパターンを学びます。 これらのプラクティスを採用することで、最新のアプリケーション開発はソフトウェアの配信を加速し、セキュリティ体制を強化できます。

一言でまとめると「AWSにおけるモダンなアプリケーションのセキュリティ対策」について学びました。

セッション内容

先に結論

これを

こうすべき

という内容でした。

「各種攻撃への対策」「ユーザ認証」「AWSサービスごとのセキュリティ対策」について具体的なアーキテクチャの例を用いて学習することができました。

各種攻撃への対策

以下のサービスを使って対策することが可能です。
・AWS Shield
  -DDoS攻撃対策
・AWS WAF
  -クロスサイトスクリプション、SQLインジェクション攻撃などへの対策

これらのサービスをCloudFrontの前に配置することで、アプリケーションのセキュリティを向上させます。

ユーザ認証

ユーザ認証にはAWS Cognitoを用いることが推奨されています。
AWS Cognitoは認証、認可、ユーザ管理を簡単に実装することができるサービスです。
サービスの概要については以下の記事を参照ください!

AWSサービスごとのセキュリティ対策

各AWSサービスごとに以下のセキュリティ対策を行う必要があります。

暗号化

AWSではS3やRDSなどのデータの暗号化がワンクリックで実装可能です。
アプリケーションの要件に合わせて暗号化を実装しましょう。

アクセス制限

各コンポーネント間のアクセスをIAMやセキュリティグループによって制限することが可能です。
必要最低限のアクセスのみを許可することで、セキュリティを強化することができます。

最後に

このセッションを公聴して、改めてAWSの強みは一般的なセキュリティ対策が容易に実装できることだと実感しました。
アプリケーションの要件に対して適切な設計ができるように今後も情報を追っていきます。

参考

このセッションは現在Youtubeで視聴可能ですので、ぜひご視聴ください!