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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
310
今インフラ技術をイチから学び直すなら
yuhta28
1
310
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
3
680
Datadog外形監視基盤をEC2から ECSへ移行してみた
yuhta28
0
1.8k
アウトプット頑張ったら企業からLT登壇の依頼がきた話
yuhta28
1
1.9k
小さなことから始めるAWSコスト最適入門
yuhta28
1
1.5k
Datadogのコストも監視しよう
yuhta28
1
1.1k
Rcloneを使った定期的なストレージ同期
yuhta28
0
870
Pulumiを触ってみよう
yuhta28
1
2.8k
Other Decks in Programming
See All in Programming
不幸な GC
chencmd
0
300
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
240
AIと壁打ちしながら進めるコスト管理
fufuhu
1
1.1k
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
250
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
210
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
160
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
1
150
FDEが実現するAI駆動経営の現在地
gonta
2
290
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
170
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
19k
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
530
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
120
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.8k
Between Models and Reality
mayunak
4
400
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
950
The Language of Interfaces
destraynor
162
27k
The Cult of Friendly URLs
andyhume
79
7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Designing for Performance
lara
611
70k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
270
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Ruling the World: When Life Gets Gamed
codingconduct
0
300
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
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をやってみた