Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
mairuでつくるクレデンシャルレス開発環境 / Credential-less develo...
Search
Issei Naruta
December 16, 2025
Technology
1
160
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
2025/12/16 IVRyエンジニア大忘年会LT
Issei Naruta
December 16, 2025
Tweet
Share
More Decks by Issei Naruta
See All by Issei Naruta
インフラからSREへ
mirakui
32
13k
データパイプラインをなんとかした話 / Improving the Data Pipeline in IVRy
mirakui
1
600
Cookpad TechConf 2022 Keynote
mirakui
0
3.9k
ドライイーストを使わずにパンを焼けるか? 〜天然酵母のパン作りを支える技術〜
mirakui
0
3.5k
関東積みについて/How to build Kanto-stacking
mirakui
0
730
先折りGTRについて/How to build left-GTR transitions
mirakui
3
1.1k
サービス開発速度に着目したソフトウェアアーキテクチャ/Software architecture for effective service development at Cookpad
mirakui
5
7.2k
Beyond the Boundaries
mirakui
1
1.4k
Cookpad Under a Microscope
mirakui
6
8.7k
Other Decks in Technology
See All in Technology
今からでも間に合う!速習Devin入門とその活用方法
ismk
1
670
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
830
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
350
ブロックテーマとこれからの WordPress サイト制作 / Toyama WordPress Meetup Vol.81
torounit
0
570
AIと二人三脚で育てた、個人開発アプリグロース術
zozotech
PRO
1
720
MapKitとオープンデータで実現する地図情報の拡張と可視化
zozotech
PRO
1
140
チーリンについて
hirotomotaguchi
6
1.9k
eBPFとwaruiBPF
sat
PRO
4
2.6k
因果AIへの招待
sshimizu2006
0
960
【AWS re:Invent 2025速報】AIビルダー向けアップデートをまとめて解説!
minorun365
4
510
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
190
AWS CLIの新しい認証情報設定方法aws loginコマンドの実態
wkm2
6
710
Featured
See All Featured
Building Adaptive Systems
keathley
44
2.9k
Why Our Code Smells
bkeepers
PRO
340
57k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Become a Pro
speakerdeck
PRO
31
5.7k
Speed Design
sergeychernyshev
33
1.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
BBQ
matthewcrist
89
9.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Mobile First: as difficult as doing things right
swwweet
225
10k
Building Applications with DynamoDB
mza
96
6.8k
Transcript
mairuでつくるクレデンシャルレス開発環境 Issei Naruta (mirakui) Principal Engineer / IVRy Inc. 2025/12/16
IVRyエンジニア大忘年会LT
Issei Naruta (mirakui) IVRy Inc. 2024/2- Principal Engineer Platform Engineering:
SRE, Data ex: Cookpad Inc. 2010-2023 CTO (2016-2022) 趣味 パン作り ルービックキューブ 深夜アニメ
最近作っているもの
最近作っているもの
mairuでつくるクレデンシャルレス開発環境 ローカル環境から AWS 上の開発環境へのアクセスの話
IVRy における AWS SSO 構成
開発者間の権限の差異問題
SRE にはできて他の開発者にはできないほうがいいことがある (破壊など)
Embedded SRE が Admin 権限で開発に参画すること の問題点 他の開発者にも Allow すべき権限を見逃しがち 自分は何でもできて困らないため
普段の開発 (ローカル開発環境の起動) に Admin 権限はそもそも必要無いはず 他プロジェクトのリソースすら破壊できてしまう
sorah/mairu https://github.com/sorah/mairu AWS SSO と連携し、指定した Role でスクリプト等を実行できるコマンドラインツー ル
mairuを使わない場合 Identity Center で Admin ロールが assume role されているユーザで AWS
CLI を使う例 $ aws sso login --session ... (ブラウザでログイン) $ aws ... # => Admin Role で実行 mairuを使う場合 mairu exec で指定した Role になれる (Identity Center で許可されたもののみ) $ mairu exec 123456/Developer aws ... (セッションがなければブラウザでログイン) # => Developer Role で実行
開発者間で Role を統一する Foo プロジェクトの開発者は FooDeveloper を使って開発をする # ~/projects/foo/.mairu.json {
"server": "ivry", "role": "123456/FooDeveloper" } .mairu.json をプロジェクトで共有しておくと mairu exec auto で参照される $ cd ~/projects/foo/ $ mairu exec auto aws ... # => FooDeveloper で実行
before mairu
after mairu
mairu で達成できたこと 開発に参画するメンバーは (たとえAdminを持っていても) プロジェクトの開発に必 要な Role に絞って開発できるようになった 環境変数にも ~/.aws/credentials
にもクレデンシャルを保存する必要が無い mairu agent プロセスが認証セッションを維持する 公式 AWS_PROFILE でも Role 切り替えはできるが? あくまで個人設定なので開発者間での統一が面倒、用途別の切り替えも面倒
まって
mairuでつくる クレデンシャルレス 開発環境
データベースへの接続にパスワードいるのでは? 開発用のパスワードをどうやって保存・共有するか? 1Password Environments? AWS Secrets Manager / Parameter Store?
RDS には IAM 認証がある! (1/2) PostgreSQL の場合 CREATE ROLE developer
WITH LOGIN; -- PASSWORD不要! GRANT ROLE rds_iam TO developer; Developer IAM Role の Policy に以下を追加 { "Action": "rds-db:connect", "Effect": "Allow", "Resource": "arn:aws:rds-db:<region>:<account>:dbuser:<cluster_name>/developer" }
RDS には IAM 認証がある! (2/2) rds generate-db-auth-token で15分間有効な one time
password が生成されるので それを使ってログイン $ PGPASSWORD=$(mairu exec auto rds generate-db-auth-token --username developer ...) \ psql -U developer ...
まって
DB は VPC 内にあるよね? どうやって到達するの? ssh 踏み台のためのクレデンシャル要るんじゃないの?
Twingate https://www.twingate.com/ L7 で動作する、名前解決ベースの VPN Alternative VPC 内に置いた Connector (EC2等)
経由でリソースにアクセスする "SSO 認証したユーザに VPC 内の特定リソースへ疎通させる" ができる 要は自宅や外出先からでもこれができる (要 Twingate アプリ) $ psql \ -h my-aurora.cluster-XXXXX.ap-northeast-1.rds.amazonaws.com \ ... これも Entra ID の認証で SSO できるためローカルにクレデンシャル必要無し
まとめ 1回の SSO 認証だけで VPC 内の DB アクセスまでできるのは 開発者体験としてもセキュリティとしても気持ちいい トークンや秘密鍵をファイルや環境変数に保持する必要がない
クレデンシャルを開発者に共有する手間もないので開発環境の展開が楽ちん
まとめ sorah/mairu 指定した Role に絞って AWS を使えるやつ Agentic Coding 向けのガードレールとしても◎
仕組みについては端折ったけど結構面白い設計なので見てみてほしい (宣伝) RDS IAM 認証 WiTH PASSWORD してない PostgreSQL ユーザに SSO 由来の認証でログインで きるの、新鮮な感覚 これが気持ちよかったので LT したいと思った流れ Twingate SSO できる VPN みたいなやつ 最高便利、導入不可避