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
IAMロールでTerraformのCI/CDを構築してみた
Search
YouYou
October 14, 2021
Programming
5.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
IAMロールでTerraformのCI/CDを構築してみた
詳細ブログ↓
https://zenn.dev/yuta28/articles/terraform-gha
YouYou
October 14, 2021
More Decks by YouYou
See All by YouYou
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
290
今インフラ技術をイチから学び直すなら
yuhta28
1
310
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
3
680
Datadog外形監視基盤をEC2から ECSへ移行してみた
yuhta28
0
1.8k
アウトプット頑張ったら企業からLT登壇の依頼がきた話
yuhta28
1
1.9k
小さなことから始めるAWSコスト最適入門
yuhta28
1
1.4k
Datadogのコストも監視しよう
yuhta28
1
1.1k
Rcloneを使った定期的なストレージ同期
yuhta28
0
850
Pulumiを触ってみよう
yuhta28
1
2.7k
Other Decks in Programming
See All in Programming
霧の中の代数的エフェクト
funnyycat
1
220
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.7k
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
830
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
200
エージェンティックRAGにAWSで入門しよう!
har1101
9
1.9k
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
140
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
340
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
270
1B+ /day規模のログを管理する技術
broadleaf
0
130
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.3k
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
410
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
450
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
1.9k
We Have a Design System, Now What?
morganepeng
55
8.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
A Soul's Torment
seathinner
6
3k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.2k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
270
Transcript
IAMロールでTerraformの CI/CDを構築してみた クレデンシャル情報からさようなら
Name:ユータ Occupation:SRE Twitter:@Y0u281 (オーでなくゼロです) ブログ:https://zenn.dev/yuta28 自己紹介 Twitter
目次 • 従来のCI/CDの課題点 • GitHub Actionsの新機能 • 実装 • ワークフロー作成
• 実行結果 • まとめ
従来のCI/CDの課題点
従来のCI/CDの課題点 - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id:
${{ secrets.AWS_ACCESS_KEY_ID }} #アクセスキー aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} #シークレットキー
従来のCI/CDの課題点
GitHub Actionsの新機能 • OpenID Connect(OIDC)プロバイダーをGitHub Actions提供 • Assume RoleとしてOIDCにIAM権限を付与 OIDC経由でGitHubに
クレデンシャル提供が可能 !
実装 • sts:GetCallerIdentity • ec2:* • s3:*
実装 OIDC作成 IAMロールにOIDCを関連付ける
ワークフロー作成 - name: Setup Terraform uses: aws-actions/configure-aws-credentials@master with: role-to-assume: "${{
env.AWS_ROLE_ARN }}" web-identity-token-file: "curl -H "Authorization: bearer $ACTIONS_ID_TOKEN_REQUEST_TOKEN" "$ACTIONS_ID_TOKEN_REQUEST_URL&audience=sigstore" | jq -r '.value'" aws-region: "${{ env.AWS_DEFAULT_REGION }}" role-duration-seconds: 900 role-session-name: GitHubActionsTerraformCICD
実行結果
実行結果
まとめ アクセスキーとシークレットキーは使わ ない! AWSでも使わないことを推奨 べスプラはこちら↓
ありがとうございました より詳しい内容は以下のブログで↓ GitHub ActionsにAWSクレデン シャル情報を渡さずに Terraformで CI/CDをやってみた