Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
Search
Itaru Ota
September 25, 2025
Technology
680
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
3-shake SRE Tech Talk #13 オンサイトのLT登壇資料です。
https://3-shake.connpass.com/event/362683/
Itaru Ota
September 25, 2025
More Decks by Itaru Ota
See All by Itaru Ota
OpenTelemetryのメトリクスをCloudWatchに送ってPromQLで見てみた
ota1022
0
120
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
320
ソフトウェアエンジニアリングと向き合い続ける AWS Jr. Champions選出前後で考えたこと
ota1022
0
140
コミットの「なぜ」を読む
ota1022
0
530
Trayce, a Raycast Extension for Tokyo AI Hackathon 2025
ota1022
1
560
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
2.7k
AIコードエディタは開発を変えるか?Cursorをチームに導入して1ヶ月経った本音
ota1022
2
1.2k
放送コンテンツに対する ツイートの<一様率>分析
ota1022
0
97
Twitterを用いたラジオ番組圧縮手法の提案
ota1022
0
81
Other Decks in Technology
See All in Technology
#jawssonic2026 あの時代が悪かった ~動かなかったSageMakerと共に迎えたイベント当日~
ktkn1129
0
140
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
7
7.7k
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
0
1.3k
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
240
Redmine 7.0で私が開発した新機能の狙いと背景
vividtone
1
140
Sigmaで作る業務アプリ
kazushiro_honma
0
110
全員がプロダクトへ向き合う組織を持続成長させるために——組織づくりのフライホイールと4象限 / The Flywheel Model and Four Quadrants for Organizational Design
hiro_torii
4
940
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
3
890
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
230
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
270
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
550
The Agent Builder Loop from Daily Work to OSS
minorun365
PRO
3
120
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
41k
A designer walks into a library…
pauljervisheath
211
25k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Building AI with AI
inesmontani
PRO
1
1.2k
Crafting Experiences
bethany
1
310
Optimising Largest Contentful Paint
csswizardry
37
3.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
680
Balancing Empowerment & Direction
lara
6
1.3k
Designing Powerful Visuals for Engaging Learning
tmiket
1
540
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Transcript
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する 2025/09/25 3-shake SRE Tech Talk
#13 太田 暢 @iorandd Copyright © 3-shake, Inc. All Rights Reserved.
太田 暢 株式会社スリーシェイク Sreake事業部アプリケーション開発支援チーム • バックエンド開発、たまにフロントエンドも • AWSに興味あり、JAWS-UGに参加・登壇 自己紹介 2
🔍 GitHub ActionsとAWSを連携させたい! 3
🤖 それならOIDCでしょ 4
👀 2025年現在のベストプラクティス…? 「GitHub ActionsとAWSを連携する時は OIDCを使う」 5
👀 2025年現在のベストプラクティス 「GitHub ActionsとAWSを連携する時は OIDCを使う」 6 OAuth 2.0 を拡張して ID
トークンによりユーザー認証を標準化し、 認証基盤とアプリケーション間で相互運用可能なシングルサインオンや フェデレーション認証を実現するプロトコル
👀 2025年現在のベストプラクティス 「GitHub ActionsとAWSを連携する時は OIDCを使う」 OAuth 2.0 を拡張して ID トークンによりユーザー認証を標準化し、
認証基盤とアプリケーション間で相互運用可能なシングルサインオンや フェデレーション認証を実現するプロトコル 7 信頼できるIDプロバイダが発行するIDトークン(一時的な認証トークン)を使っ て、サービス間で安全に認証を行うルール つまり
👀 2025年現在のベストプラクティス 「GitHub ActionsとAWSを連携する時は OIDCを使う」 OAuth 2.0 を拡張して ID トークンによりユーザー認証を標準化し、
認証基盤とアプリケーション間で相互運用可能なシングルサインオンや フェデレーション認証を実現するプロトコル GitHubが発行するOpenID Connect (OIDC)トークンを使って AWSにログインするルール 今回のケースで言い換えると 8 信頼できるIDプロバイダが発行するIDトークン(一時的な認証トークン)を使っ て、サービス間で安全に認証を行うルール つまり
OIDC連携の仕組み GitHubが発行するOIDCトークンを使ってAWSにログインするルール 9 https://docs.github.com/en/actions/concepts/security/openid-connect
OIDC連携の仕組み ①IAMで信頼関係を設定 10 https://docs.github.com/en/actions/ concepts/security/openid-connect GitHubのOIDCプロバイダーを IAM IdP(信頼する外部の身元確認 サービス)として登録 token.actions.githubusercontent.com
OIDC連携の仕組み ①IAMで信頼関係を設定 11 https://docs.github.com/en/actions/ concepts/security/openid-connect 指定したIAMロールを 「GitHubからのみ引き受け可能」 にする
OIDC連携の仕組み ②GitHubがOIDCトークンを発行 12 https://docs.github.com/en/actions/ concepts/security/openid-connect ワークフロー実行ごとにGitHubが JWT(署名付きトークン)を生成し、 「このリポジトリ・ブランチから実行された」 という情報を含める。 Github
ActionsのYAML
OIDC連携の仕組み ③STSにトークンを提示 13 ワークフロー内で aws-actions/configure-aws-credentialsを使い、JWTを AWS STS(Security Token Service、 一時的な認証情報を発行するサービス)に
渡してロールを引き受ける。 https://docs.github.com/en/actions/ concepts/security/openid-connect Github Actionsのログ JWTは内部で渡される (ログの表示外 )
OIDC連携の仕組み ④短期クレデンシャルを取得 14 AWS STSが検証後、15分〜1時間有効な 一時的なAWSアクセスキーを発行。 これを使ってS3やECSへデプロイする。 https://docs.github.com/en/actions/ concepts/security/openid-connect ←
一時的なアクセスキー ← 一時的なシークレットキー ← セッショントークン Github Actionsのログ
🕰 OIDCがベストプラクティスになるまで 15 OpenID Connect Standard公表 https://openid.net/the-openid-foundation-laun ches-the-openid-connect-standard/ 2014 2018
2019 CognitoやEKSで OIDC利用が進む GitHub Actions 一般利用開始 https://github.blog/changelog/2019-11-11-github- actions-is-generally-available/ Google、 Microsoft、 Okta などの IDプロバイダーが OIDC対応を進める 2021
IAMユーザーのアクセスキーとシークレットキー を発行 ↓ GitHubリポジトリの「 Secrets」として保存 ↓ GitHub Actionsのワークフローでキーを渡して認証、必要に応じて
STS でロールを引き受ける 🤔 課題 • IAM ユーザーのアクセスキーの漏洩リスク • 秘密鍵の定期的なローテーションの煩雑さ • 複数のワークフローでの共有による、資格情報の追跡の困難 etc. OIDC以前の連携方法(~2021年ごろ) 16
🕰 OIDCがベストプラクティスになるまで 17 OpenID Connect Standard公表 https://openid.net/the-openid-foundation-laun ches-the-openid-connect-standard/ GitHub Actions
一般利用開始 https://github.blog/changelog/2019-11-11-github- actions-is-generally-available/ GitHub Actions OIDCサポート開始 https://github.blog/changelog/2021-11-23-secure- cloud-deployments-with-oidc-is-now-ga/ https://aws.amazon.com/jp/blogs/security/use-iam-roles-to-c onnect-github-actions-to-actions-in-aws/ AWS公式Actionでも OIDC利用を推奨 2014 2018 2019 2021 2022 2023 AWSとGitHubのOIDC統合を支援する Terraformモジュールのリリース CognitoやEKSで OIDC利用が進む OIDC連携で中間 TLS証明書の サムプリント登録が不要になる https://github.blog/changelog/2023-07-13-github- actions-oidc-integration-with-aws-no-longer-requi res-pinning-of-intermediate-tls-certificates/ https://github.com/terraform-module/terr aform-aws-github-oidc-provider Google、 Microsoft、 Okta などの IDプロバイダーが OIDC対応を進める
• IAM ユーザーのアクセスキーの漏洩リスク ◦ 長期キーを保存 → OIDC 経由で一時的なトークンを払い出す
(ワークフロー実行ごとに有効期限付きで自動発行 ) • 秘密鍵の定期的なローテーションの煩雑さ ◦ 手動でキーを更新・配布 → ローテーション不要 (OIDC が都度、新たな短期資格情報を取得 ) • 複数のワークフローでの共有による資格情報の追跡の困難さ ◦ アクセスキーを複数パイプラインで共用 → ワークフローごとに固有のフェデレーション認証 (OIDC のクレームや条件で追跡可能 ) • 権限の過剰付与(過去の残骸キー問題) ◦ 使われていないアクセスキーが放置 → 実行時のみ必要最小限の権限を付与 (STS + OIDC の AssumeRoleWithWebIdentity) 💖 OIDCによる課題の解消 18
最近のアップデート • OIDCトークン権限の厳格化 (2024年6月) ◦ 呼び出し元のワークフローや特定のジョブレベルで id-token: write権限を明示的に設定する ことが必須とな
り、セキュリティが強化 ◦ https://github.blog/changelog/2023-06-15-github-actions-securing-openid-connect-oidc-token-permissions-i n-reusable-workflows/ • SHAピンニングとアクションブロッキングの強制 (2025年8月) ◦ 特定のアクションやバージョンをブロックするポリシーをサポート ◦ バージョンをコミット SHAにピンニングすることを強制する機能 が追加され、サプライチェーン攻撃のリスク低減 ◦ https://github.blog/changelog/2025-08-15-github-actions-policy-now-supports-blocking-and-sha-pinning-acti ons/ 19 Github ActionsのYAML
最近のアップデート • OIDC IdP管理の簡素化 (2024年7月) ◦ IAMでOIDC IdPの管理を簡素化 ◦
以前は手動で必要だった サムプリントの検証が不要に なり、ルート認証局( CA)を信頼するモデルに移行 ◦ https://aws.amazon.com/jp/about-aws/whats-new/2024/07/aws-identity-access-management-open-id-conne ct-identity-providers/ • SAMLアサーションの暗号化サポート (2025年2月) ◦ IAMがSAMLアサーションの暗号化をサポート ◦ IDプロバイダーから IAMへのSAMLアサーションがエンドユーザーのウェブブラウザなどの仲介者を経由する際に 暗号化されるようになり、セキュリティが向上 ◦ https://aws.amazon.com/jp/about-aws/whats-new/2025/02/aws-iam-encrypted-saml-assertions/ • AWS公式の Lambdaデプロイ用 GitHub Action(2025年8月) ◦ aws-actions/aws-lambda-deploy ◦ ワークフロー中でこのアクションを呼び出すだけでデプロイが完了 ◦ https://aws.amazon.com/jp/about-aws/whats-new/2025/08/aws-lambda-github-actions-function-deployment/ • configure‑aws‑credentials v5.0.0 のリリース (2025年9月) ◦ ローカル実行などで OIDC認証をスキップ可能に ◦ アカウントIDの許可リストをサポートし、入力ハンドリングが改善 ◦ https://github.com/aws-actions/configure-aws-credentials/releases 20
✅ まとめ • GitHub ActionsとAWSを連携する時はOIDCがベストプラクティス • OIDCとは、信頼できる IDプロバイダが発行するトークン を使って、別のサービスに安全にログ インできるプロトコル
• GitHubとAWS両サイドで OIDC連携を標準化・強化してきた • セキュリティポリシー (id-token: write や SHAピンニング)の組み合わせで安全性の最大化 が進 んでいる 21