Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS Foundational Technical Review と向き合って得られたもの

AWS Foundational Technical Review と向き合って得られたもの

Akira Atsuchi

August 26, 2022
Tweet

Other Decks in Technology

Transcript

  1. このセッションには以下の情報があります/ありません ◯ FTR通過のための参考情報 ➢ 体験談 ➢ 対応しなければいけないこと ➢ 得られるメリット ✕

    各AWSサービス単位の詳細な技術情報 注)2021.8に受診したFTRの体験に基づいています。 現在は内容が異なる場合があります。
  2. 厚地 暁 (あつち あきら) from ◦ マーケティングとITの会社 ◦ 2009~14期目 ◦

    エンジニアは14人/122人 ◦ 文系卒、2001新卒でSIer、2012現職 ◦ 執行役員CTO ◦ 2歳6歳娘の父 ◦ ドラムをたたく(ほぼジャズ)
  3. FTR通過のごほうび ◦ チェック&改善による品質向上 ◦ 認定ソフトウェア (AWS Qualified Software) ◦ ファンディング

    ➢ マーケティングデベロップメントファンド(MDF) ➢ ほかにも 注)ファンド可否や適用額はいろいろなパラメータがあるようなので くわしくはAPN担当者の方にご相談ください
  4. ◦ お世辞にもモダンとはいえない ◦ 典型的な継ぎ足しシステム ➢ 2011年~ ➢ EC2多用 ➢ シングルAWSアカウント

    ◦ SWでなんとかしちゃう風潮 ◦ さすがにこのままではマズイと感 じるタイミング 既存システムアーキテクチャ
  5. FTR Requirements ◦ 英語翻訳なので解釈が難しい場合も ◦ ツールのFTR Lensと完全一致ではない ◦ 抽象度/具体度や規模感も大小さまざま ◦

    難しさの性質が分かれる ➢ 具体的なものは実装上の難易度 ➢ 抽象的なものは相応の論拠が必要
  6. 通過のための主な実装改善点 ◦ AWS Org設定、マストなアカウント分割 ➢ 監査ログ保存 ◦ S3, RDSの暗号化 ◦

    システム用途アクセスキーの撤廃 ◦ 認証情報のSecretsManager移行 ◦ DRテスト環境構築とテスト実施
  7. 改善)アカウント分割 何でも入ってる 闇アカウント ◦ CloudTrailのログ切り出しはFTRでもマスト ◦ その他ベスプラに沿って構築、ControlTower、AWS Config等で統合管理 ◦ 強権限かつ最小権限で管理がシンプルに。クオータ抵触の回避

    ◦ サンドボックス環境の提供で一気に検証ハードルを低下 Audit LogArchive orgadmin user-a user-b user-c dev-a dev-b dev-c prd-a prd-b prd-c core sandbox develop product AWS Organizations
  8. 改善)IAM Identity Center適用(旧AWS SSO) ◦ アカウント単位でのIAM認証→SSOで一括管理+Google認証と連携 ➢ Googleアカウントで強制MFAのためそこに寄せる ◦ もうとにかく快適

    ◦ できるだけデフォルトの許可セットでコントロールできるように IAM User IAM Role IAM Identity Center user-a dev-b prd-b orgadmin console console user-a dev-b prd-b orgadmin
  9. 改善)認証情報のSecretsManager移行 ◦ 各サービスの認証情報をコードに含めない/専用サービスを用いる ➢ コードからの除外は問題無いが、設定ファイル系が厳しい ◦ 地味に手こずったのがTomcat -> MySQLの認証情報 ➢

    コネクションプールを使うために、通常は設定ファイルに直接記載 ➢ 結局専用のDataSourceFactoryを作成 ▪ あまり触れてこなかったこのあたりの動作原理を理解する機会に ◦ こちらも万が一の漏洩、に対して強固に
  10. 改善)DRテスト環境構築とテスト実施 ◦ 「RTO, RPOを満たすことを確認できるテスト」 ➢ 単にAZ障害のノード切り替え検証ではなく、総合的なテストが必要 ◦ CloudFormationで疑似環境を再現 ➢ 定期的にやる必要があるため

    ➢ 復旧時間の検証が目的だと、RDS等のデータサイズも重要 ➢ 実際のテストよりも環境構築に何倍もかかった ◦ 実際確認できた安心感+いつでもテストできる安心感
  11. 得られたもの ◦ 改善によって得られた品質・運用改善 ➢ 前述の   のとおり ◦ 箔 ➢

    バッジ(ちょっとシンプル、、) ◦ MDF(FTR以外にも条件はある) ◦ 「向き合って」得られた知見・自信
  12. MDF (Marketing Development Funds) ◦ (弊社の場合) ◦ AWSパートナー向け資金提供プログラムのひとつ ➢ FTR通過

    → APNソフトウェアパスにて「認定ソフトウェア」となり適用 ◦ 「マーケティングコンシェルジュサービス」 ➢ 対象ソフトウェアの販促活動についての相談/支援窓口 ◦ マーケティングプランを作成→その活動を行うための資金援助 ➢ 割とあらゆる販促活動で適用可能
  13. 「向き合って」得られた知見・自信 ◦ システムはどのような品質上の観点を持つべきか、そしてその観点のため にどのような具体解があるのかを理解できた ➢ 永続的な鍵文字列を持たないためにロールやSecretsManagerがある ➢ 適切な権限付与のためにアカウントを分割する ➢ SessionManagerは適切なログ管理のためでもある

    ◦ これらは、単にFTRを「通過する」だけでなく、きちんと「向き合う」こと で得られる ➢ 単に手法のみに従うだけではもったいない ➢ AWSに限らず汎用的なベストプラクティスとして昇華できる ◦ (結果、担当者はその後SAP、SCSを取得できました)
  14. これからの方につたえたいこと ◦ 通過だけを目指さず、きちんと向き合ってほしい ➢ FTRと、だけでなく、自分たちのシステムと、でもあります。 ➢ このような儀式をきっかけに使わないとなかなか取り組めない内容。 ◦ といいつつ、とりあえず受けておくとよいです ➢

    FTR設問項目自体にも改善の余地は多いように思います。 ➢ 受診が増えるとフィードバックも増え、FTR自体の品質があがると思います。 ◦ あとから対応がしんどいやつに気をつけましょう ➢ S3/RDSの暗号化、ロール徹底、ログの統制(CloudTrail, SessionManager等) ➢ DRテスト対策。環境構築をCloudFormationでやるとよさげ。 ◦ 「必要条件」であり「十分条件」ではない ➢ 問われない観点も多い