Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20250913_AWS アカウント 150 超の組織で取り組む Lambda EoL 対応
Search
tsunojun
September 08, 2025
Business
390
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20250913_AWS アカウント 150 超の組織で取り組む Lambda EoL 対応
JAWS-UG情シス支部 第32回 神戸支部コラボ会
https://jawsug-sysad.connpass.com/event/366235/
tsunojun
September 08, 2025
More Decks by tsunojun
See All by tsunojun
製造業 R&D の情シスが CBs になって感じたこと & AWS WorkSpaces Secure BrowserでPoC前夜に難を逃れた話
tsunojun
2
230
日本居残り組の情シス/セキュリティ担当が、去年のre:Inventの心残りを晴らした話 ~AWS Security Incident Responseをかじってみた~
tsunojun
0
230
20250509_AWSアカウント管理担当者が、Security Hub活用のためにQuickSightに手を出したら大変だった話
tsunojun
0
360
20241012_社内セキュリティチェックリストのAWS前提での書き直しと、リストに準拠した自動チェックの実装
tsunojun
0
49
Other Decks in Business
See All in Business
開発時間2時間!gemma 4で動くローカルAIマルチエージェント構築(Python標準ライブラリ縛り)
hideyuki_ogawa
0
240
コミュニケーション術を強化するのにオススメな本9冊
zashii
0
440
情報を集める時間を チームを進める時間へ-Backlog AIアシスタントで変わった時間の使い方-
yasuhirox
0
340
【簡易版】パーソルクロステクノロジー_システムインテグレーション領域のご紹介 / Introduction_of_persol-xtech_gs_es_dx_short
pxt_gs_ssol
0
160k
CMB.TECH earnings call Q1 2026
cmbtech
PRO
0
1.5k
サムコ株式会社 第47期第3四半期決算概要
tsuchihashi
0
150
【詳細版】パーソルクロステクノロジー_システムインテグレーション領域のご紹介 / Introduction_of_persol-xtech_gs_es_dx_all
pxt_gs_ssol
1
25k
パーソルクロステクノロジー_エンタープライズソリューション統括本部のご紹介 / Introduction_of_es
pxt_gs_ssol
0
2.9k
アッテル会社紹介資料/culture deck
attelu
11
17k
クラウド人材バンク 会社説明資料
cloudhrbank
0
170
株式会社アシスト_会社紹介資料
ashisuto_career
3
180k
Eight Career Recruiting Pitch_2605
sredoa
0
690
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.3k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
200
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
350
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Faster Mobile Websites
deanohume
310
31k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
A designer walks into a library…
pauljervisheath
211
24k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
150
The Invisible Side of Design
smashingmag
302
52k
Unsuck your backbone
ammeep
672
58k
Chasing Engaging Ingredients in Design
codingconduct
0
210
Transcript
AWS アカウント 150 超の組織で 取り組む Lambda EoL 対応 QuickSight でのダッシュボード構築と社内展開
Step Functions 活用事例 tsunojun @tsunojun2451821 ダイキン工業株式会社 1 / 19
はじめに 今回の資料は EoL 対応の 仕組み作りの途中経過について説明します 当方も試行錯誤しながら進めており、ご意見を頂きたいです! ダイキン工業株式会社 2 / 19
自己紹介 ダイキン工業株式会社 7 年目 創業 101 年・社内人材育成制度「ダイキン情報技術大学」 主務:AWS・GitHub などのプラットフォーム提供 Organization
からアカウントの払い出し・棚卸 ↑ の延長で、セキュリティレビューをすることも AWS インフラ 手動レビュー レビュー自動化(Security Hub/カスタムルール) EoL を迎えるリソースについて、各開発者に対応依頼 ダイキン工業株式会社 3 / 19
目次 長年使われている環境が抱える課題 元々ある Lambda EoL 確認機能 当方がとった手段:QuickSight で自作 苦労したケース 管理者から全環境に共通配布している
Lambda をどうするか Lambda レスな Step Functions ダイキン工業株式会社 4 / 19
長年使われている環境が抱える課題 弊社 R&D 組織では、5 年ほど前から 試行用の AWS 砂場環境を用意 現在アカウントが 150
を超え、 特に Lambda の EoL 対応が問題に NodeJS 18 (2025/9/1) Python 3.9 (2025/12/15) Provided.al2 (2026/6/30) Python 3.10/11, Java8.al2/11, Ruby3.2 (2026/6/30) ↑OS が Amazon Linux2、言語側の EoL を待たずに要対応に ※日付は「廃止日」で、その後「関数の作成をブロックする」「関数の更新をブロックす る」と段階的に対応される ダイキン工業株式会社 5 / 19
元々ある Lambda EoL 確認機能 機能 メリット 不満点 メールで通知 ・特に設定不要 ・あとから一覧不可
・直前でないとメールが 来ない AWS Trusted Advisor ・特に設定不要 ・直前(180 日)でない と表示されない Amazon Inspector v2 ・ライブラリ脆弱性も可 視化 ・EC2/ECS にも対応 ・機能が多く見づらい ダイキン工業株式会社 6 / 19
当方がとった手段:QuickSight で自作 社内のセキュリティダッシュボードを拡張 元々は AWS インフラ周りの指摘を表示(JAWS 名古屋で発表) ダイキン工業株式会社 7 /
19
当方がとった手段:QuickSight で自作 EoL が近い Lambda を一覧表示する画面を追加 自作のメリット:アカウント跨ぎで表示/表示内容を当方で調整可能 ダイキン工業株式会社 8 /
19
Lambda のランタイム取得 AWS Config カスタムルールを使用し、柔軟な表示を実現 let eol_runtime = [ #
←EoLになるランタイムを変数として定義 "python3.10", "python3.11", ] configuration{ # when ZIP Lambda when packageType == "Zip" { # ←コンテナLambdaは別で考える runtime !in %eol_runtime # ←変数を参照 } } OR configuration.tags.TICAWS_ADMIN_SUPPRESSED_EOL_LAMBDA EXISTS # ↑タグ付与で対象外に出来るように ダイキン工業株式会社 9 / 19
各アカウントの結果を Security Lake で集約 ※AWS ブログ「Create security observability using generative
AI with Security Lake and Amazon Q in QuickSight」を参考に実装 ダイキン工業株式会社 10 / 19
苦労したケース 1: 利用者側が EoL 期限や対応必要性を把握していない メールでの対応依頼だけでは不十分 必要に応じて打ち合わせ・教育資料の配布を行う 2: 利用者以外に EoL
対応の責任があるケース 管理者から全環境に共通配布している Lambda Control Tower から配布されるもの ← AWS の対応を待てばよい VPC 設定などの自作 Lambda ← 次ページ以降詳細説明 ダイキン工業株式会社 11 / 19
管理者から配布する Lambda の対応 通常は ランタイムのバージョンをこまめに上げるで終わる話 が、 AWS SDK を叩くなどのシンプルなユースケース であれば、
Lambda レスな Step Functions も一考できる メリット デメリット AWS が実行環境を管理しているた め、(今のところ)EoL がない AWS にベンダーロックされる 処理の流れが視覚的に確認できるた め、内容把握しやすい ダイキン工業株式会社 12 / 19
Step Functions と は? GUI(マネコン or VS Code)で ドラッグ&ドロップ構築 とっつきやすい
複数環境へのデプロイは CDK/CloudFormation で 内部では ASL(JSON)で記述 = Amazon Q で書ける ダイキン工業株式会社 13 / 19
Lambda レスな Step Functions まずは公式ブログ「AWS Step Functions の機能を活用して、Lambda 関数無しで実 現できることを確認してみよう
!」を見てみる 注意:ブログ内の以下注意をよく検討した上で利用すること (注) このブログは、必ずしも Lambda 関数をなくすべきだという主張ではありません。 AWS Step Functions には、ワークフローに条件付きロジックを追加できる Choice や組み込み関数、 エラー処理などの機能が備わっており、Lambda 関数のプログラミングを置き換えやすいパターンがあります。 今回は、そのパターンのうち 3 つのパターンを紹介します。 ダイキン工業株式会社 14 / 19
ケース 1: ロジック入力値に evil が含まれるか Step Functions のフロー → ↓
分岐の条件 {"isInValid.$": "States.ArrayContains( States.StringSplit($.sentence, ' '), 'evil' )"} Lambda(Python) だと isValid = 'evil' not in sentence.split(" ") return {'statusCode': 200, 'isValid': isValid} ダイキン工業株式会社 15 / 19
ケース 2: 他の AWS サービ スを呼び出す Step Functions のワークフローか ら
AWS API を叩く際は、 以下の 2 種類のブロックで実装可能 API を叩く Lambda を書く AWS SDK 統合 対応サービスは 35O 以上 後者を用い、Lambda 管理を省略 ダイキン工業株式会社 16 / 19
ケース 3: SaaS を呼び出す ために Lambda 関数を使っ ている場合 Step Functions
のワークフローか ら外部 API を叩く際は、 以下の 2 種類のブロックで実装可能 API を叩く Lambda を書く HTTPS エンドポイント統合 後者を用い、Lambda 管理を省略 ダイキン工業株式会社 17 / 19
実務で何を代替したか VPC 構築 CFn (社内配布)にて NAT Gateway (約$30/月)を使わ ない時に削除する Lambda
を代替 余談 AmazonQ に Lambda コードを読 ませ、 Step Functions を作らせた ダイキン工業株式会社 18 / 19
所感・今後の課題 「利用者側が EoL 期限や対応必要性を把握していない」ケース 今はケースバイケースで対応、社内の運用フローとして定着させたい 社内 EoL 対応の標準化 例えば、バージョンアップ時のテスト周りの整備 ダイキン工業株式会社
19 / 19