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
re:Inventで気になったサービスを10分でいけるところまでお話しします
yama3133
1
120
re:Invent 2025 ふりかえり 生成AI版
takaakikakei
1
200
eBPFとwaruiBPF
sat
PRO
4
2.6k
re:Invent 2025 ~何をする者であり、どこへいくのか~
tetutetu214
0
210
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
430
直接メモリアクセス
koba789
0
300
評価駆動開発で不確実性を制御する - MLflow 3が支えるエージェント開発
databricksjapan
1
140
[JAWS-UG 横浜支部 #91]DevOps Agent vs CloudWatch Investigations -比較と実践-
sh_fk2
2
250
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
110
第4回 「メタデータ通り」 リアル開催
datayokocho
0
130
CARTAのAI CoE が挑む「事業を進化させる AI エンジニアリング」 / carta ai coe evolution business ai engineering
carta_engineering
0
680
Ruby で作る大規模イベントネットワーク構築・運用支援システム TTDB
taketo1113
1
280
Featured
See All Featured
KATA
mclloyd
PRO
32
15k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Done Done
chrislema
186
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Building Applications with DynamoDB
mza
96
6.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
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 みたいなやつ 最高便利、導入不可避