SOMPO Digital Lab 開発チームブログ

安心・安全・健康に資する開発情報を発信します

【ワークショップ】re:Invent 2023 「サーバレスオブザーバビリティ」「 S3のセキュリティ設定とアクセス制御」に参加しました

SOMPO Digital Lab SREの濱です。 先日ラスベガスで開催されたAWS re:Inventに現地入りさせていただきました。

参加したワークショップの一部の内容を簡単に紹介します。

ワークショップの流れ

いずれもワークショップは2時間ほどで流れは概ね以下のような形で進行が進められていました。

  • ワークショップのテーマ内容や背景に関する解説(20分)
  • ワークショップ(ハンズオン)環境の説明(10分)
  • ワークショップ(90分)

ワークショップは各個人ごとに払い出してくれるAWSアカウント環境を使って、 ブラウザで手順を読みながら進めていく形式となっていました。

ワークショップによっては他の参加者の方と共同で進めていく形もあったようです。

Cloud9やEC2でターミナルやコードエディタを使用する課題もあったのですが、ほとんどはコピペできるような形で手順が作られていたので迷ったりする所はほとんどなかったのですが、 常にAWSのスタッフの方が複数名居るので質問できるような環境になっていました。

個人的には任意課題も含めると時間が余ることは殆どなく、じっくり読みながら進めると結構足りないぐらいで、終了時間いっぱいまで取り組まれてる方もいました。

ただワークショップで払い出されるアカウント環境はワークショップ時間以降も数時間は使えるため、次のセッションが始まるまでの待ち時間も使って最後まで取り組むことができました。

1.サーバレスオブザーバビリティ

SVS306-R1 | Serverless observability workshop

Join this immersive workshop to walk through the process of instrumenting, collecting, and analyzing metrics, traces, and logs in your serverless applications. Designed for developers and architects, the hands-on activities empower you with the expertise needed to gain valuable insights into the inner workings of your applications, identify anomalies, and proactively prevent failures. You must bring your laptop to participate.

この没入型ワークショップに参加して、サーバーレスアプリケーションのメトリクス、トレース、ログの計測、収集、分析のプロセスを歩きましょう。開発者とアーキテクトのために設計されたこの実践的なアクティビティは、アプリケーションの内部動作に関する貴重な洞察を得て、異常を特定し、障害を未然に防ぐために必要な専門知識を身につけるのに役立ちます。

サーバレスアプリケーション(API Gateway+Lambda)に対して、アプリケーションのコードの一部を修正する事でオブザーバビリティを体感する内容でした。

主な内容としては以下になります。

  • CloudWatchのカスタムメトリクスをSDKとEMFのそれぞれのパターンでプッシュする。
  • プッシュしたメトリクスに対してカスタムアラームとダッシュボードを作成する。
  • Synthetic Canariesの監視を作成する。
  • ログパターンを定義し、CloudWatch Log Insightsを使ってログを分析する。
  • API Gateway と Lambda でアクティブトレースを有効にし、AWS X-Rayを使用する。

ワークショップに対する所感

私自身は業務で監視周りの設計や設定を行うことがあるのですが、アプリ開発の業務経験がなく、プログラム側での実装が必要になるトレーシングやAPMにはやや苦手意識がありました。

今回ワークショップを通して、実装イメージや掴めることができたのは良い経験になりました。

2.S3のセキュリティとACL設定

STG317-R | Configuring Amazon S3 security settings and access controls

Amazon S3 provides security settings and granular access controls to suit any workload. In this workshop, learn how you can manage access and define user and resource-based policies to fit your needs with Amazon S3 access management tools. In addition, learn how you can monitor and audit who is accessing what data, from where, and when. Explore scenarios involving different security requirements and walk through how you can apply different Amazon S3 tools and capabilities to meet those requirements. You must bring your laptop to participate.

Amazon S3は、あらゆるワークロードに適したセキュリティ設定ときめ細かなアクセス制御を提供します。このワークショップでは、Amazon S3のアクセス管理ツールを使って、どのようにアクセスを管理し、ニーズに合わせてユーザーとリソースベースのポリシーを定義できるかを学びます。さらに、誰が、いつ、どこから、どのデータにアクセスしているかを監視・監査する方法を学びます。さまざまなセキュリティ要件を含むシナリオを検討し、これらの要件を満たすためにAmazon S3のさまざまなツールと機能をどのように適用できるかを学びます。

S3バケットとオブジェクトに対してセキュリティ関連の設定を変更して、動作を確認していく内容でした。

冒頭にはS3ベストプラクティスの説明や、直前に発表された新機能(サーバアクセスログの日付パーティション分割のサポートや、S3 AccessGrants)に関する紹介がありました。 ハンズオン部分はマネジメントコンソール上の操作がほとんどで、一部S3へのオブジェクトのアクセス検証を確認するためにEC2上からCLIを実行して確認する作業がありました。

主に取り組んだ内容は以下となります。

  • HTTPS制限
  • KSMキーの利用
  • VPCエンドポイントの制限
  • AWS Configを使用して非準拠リソースをスキャン
  • IAM Access Analyzer for S3
  • ACLからバケットポリシーに移行
  • S3 インベントリを有効化し、インベントリレポートに対してAthenaでACLが設定されてるオブジェクトを洗い出し

ワークショップに対する所感

業務でS3を触ることは多いのですが ACLの設定は初めて設定しました。

ACL自体は現時点で非推奨でありデフォルト無効化されてるので新しく設定することはないと思いますが、Configによるスキャンやインベントリを使った調査は、他のケースでも利用可能なアプローチなので業務で活用できる機会があれば使っていきたいと思います。

S3のような初期からあるサービスも年々機能がアップデートされており、ベストプラクティスも変更されていくため、AWSを使う上でキャッチアップし続ける必要性を実感させられました。

参加した感想

初めての海外のイベント参加で英語力にも不安もあったのですが、翻訳ツールなども使うことで難なく進めることができました。

サービスや機能自体は知識として学んでいても、実際に操作することで理解できてないところに気づくこともあったので、手を動かすことの大切さを改めて感じました。 ワークショップで学んだことを今後の業務にも活かしていきたいと思います。

最後に

会場が非常に広く、一部の会場間は移動にシャトルバスやモノレールを利用することもあったのですが、遠い会場だと時間帯によってバス移動に30分以上かかることもあり、一方でワークショップによっては10分前に到着してないと参加できない場合もあったので予約と時間のコントロールは結構シビアでした。

セッションやワークショップ以外の時間は、Expoの企業ブースや、Rec Centerのアクティビティを見回ったりしていました。

re:Inventに参加検討されている方や、国内でのAWS主催の研修に参加しようと考えられてる方にご参考になれば幸いです。