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
インフラ側からみた PostgreSQL の Row Level Security (RLS)...
Search
nabeo
July 22, 2026
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
インフラ側からみた PostgreSQL の Row Level Security (RLS) ~ オーロラ (Aurora) ソースを添えて ~ / Henry Engineer Meetup #8
Henry Engineer Meetup #8
https://henry.connpass.com/event/398315/
nabeo
July 22, 2026
More Decks by nabeo
See All by nabeo
組織とプロダクトの変化に合わせたクラウド選択 / Henry Engineer Meetup #5
nabeo
0
140
kotlin-lsp の開発開始に触発されて、Emacs で Kotlin 開発に挑戦した記録 / kotlin‑lsp as a Catalyst: My Journey to Kotlin Development in Emacs
nabeo
3
1.3k
SRE 文化の醸成: stream-aligned チームに Enabling するために実施した事例の解説 / Cloud Operator Days Tokyo 2025
nabeo
0
370
kotlin-lsp を Emacs で使えるようにしてみた / use kotlin-lsp in Emacs
nabeo
0
600
Docker Compose で手軽に手元環境を実現する / Simplifying Local Environments with Docker Compose #CinemaDeLT
nabeo
0
700
OpenTelemetry Collector 自身のモニタリング / Monitoring the OpenTelemetry Collector itself
nabeo
0
680
ヘンリーにおける可観測性獲得への取り組み
nabeo
2
2.5k
AWS CDK (TypeScript) を継続的にメンテ可能にするために取り入れているノウハウ集
nabeo
0
1.5k
AWS Organizations 組織を移動する時に 考えること 100 連発 (AWS Control Tower への組み込みを添えて) / Hatena Engineer Seminar #20
nabeo
2
3.6k
Other Decks in Technology
See All in Technology
生き様としてのSRE
hokkai7go
0
140
1週間、Opus封印でお願いします
kintotechdev
0
400
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
1.1k
Vue.jsのGitHubから学ぶ意思決定
yut0naga1_fa
1
340
GitHub、使う?使わない?
happysamurai294
0
120
AX時代の自治体支援リソース再配分と役割分担の再構成:戦略とロードマップ(概要)
sishi2026
0
140
正解のない研修に放り出されて / Being thrown into a training program with no right answers
ohnoeight
1
170
Flutter Webを「SDK」として配る — 50以上のゲームを支える埋め込みアーキテクチャ
masayukisuda
0
160
OneLakeをデータソースにした AI Search(Foundry IQ)の ライフサイクル管理
ryuseiiida
0
200
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
130
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
190
自律的なチームを作るためにTechPMがやらないこと
ny7760
0
300
Featured
See All Featured
Side Projects
sachag
456
43k
エンジニアに許された特別な時間の終わり
watany
109
250k
We Are The Robots
honzajavorek
0
410
Code Reviewing Like a Champion
maltzj
529
40k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
340
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
660
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
770
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Mobile First: as difficult as doing things right
swwweet
225
10k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
230
Building the Perfect Custom Keyboard
takai
2
930
Designing for humans not robots
tammielis
254
26k
Transcript
Henry Engineer Meetup Vol.8 インフラ側からみた PostgreSQL の Row Level Security
オーロラソースを添えて 株式会社ヘンリー SRE 渡辺 道和 (nabeo) Copyright © Henry, Inc. All rights reserved.
自己紹介 • nabeo ◦ ◦ ◦ ◦ 2023年6月にヘンリーに SRE としてジョイン
元はオンプレのインフラエンジニアだったけど、徐々 にクラウド側にシフトした 好きな AWS サービスは AWS Transit Gateway 最近は Google Cloud から AWS への引越しにかかわ るあれこれをやっている X: @nabeo Blog: https://nabeop.hatenablog.com/ Copyright © Henry, Inc. All rights reserved. 2
今日のお題: PostgreSQL の Row Level Security • テーブルにポリシーを設定することで、行レベルで権限を分離できる ◦ ◦
• マルチテナントのデータ分離という文脈でよく使われている Henry でも導入を検討している PostgreSQL 固有の機能 Copyright © Henry, Inc. All rights reserved. 3
こんな感じで設定する Copyright © Henry, Inc. All rights reserved. 4
RLS を扱う時に意識するべきロールの種類 • RLS の管理者ロール ◦ ◦ • RLS のユーザロール
◦ ◦ • BYPASSRLS 属性をもち、RLS ポリシーを無視できる ▪ FORCE ROW LEVEL SECURITY を無視できる schema migration や RLS のポリシー設定をおこなう RLS ポリシーの影響をうける アプリケーションなどはユーザロールを使う テーブルのオーナー ◦ ◦ RLS 向けのロールではない テーブルオーナーは ENABLE ROW LEVEL SECURITY で作成されたポリシーを無視できる Copyright © Henry, Inc. All rights reserved. 5
ところで、Aurora には最初から強そうなロールがあるよね...? • • 初期構築時にデフォルトで作られるロール rds_superuser といういかにもな名前がついている ◦ Cloud SQL
にも同じように cloudsqlsuperuser がある 以後は rds_superuser ロールや cloudsqlsuperuser ロールを便宜上「マス ターロール」と記述します Copyright © Henry, Inc. All rights reserved. 6
rds_superuser でいいじゃん!! Copyright © Henry, Inc. All rights reserved. 7
現実 is 厳しい • 結論: マスターロールは RLS の管理者ロールとして使わないほうが無難 ◦ ◦
• BYPASSRLS を持たない ▪ というか、SUPERUSER も持っていない マスターロールをテーブルのオーナーロールとして運用している場合はポリシーをバイパス できるが、FORCE ROW LEVEL SECURITY なテーブルはバイパスできない ALTER ROLE で BYPASSRLS を明示的に付与することで管理者ロールとして 振る舞わせることは可能だが、やめておいたほうが無難 ◦ 最小権限の原則を狙うなら個別に作っておくべき Copyright © Henry, Inc. All rights reserved. 8
まとめ • • PostgreSQL で RLS を扱う場合は2つのロールを意識することがある Aurora にはいかにも強そうなロールがあるが実はいうほど強くない ◦
今回の場合は pg_roles の rolbypassrls カラムの値を確認しておく Copyright © Henry, Inc. All rights reserved. 9
採用情報や事業や技術について、積極的に発信しています! 採用情報 会社公式ブログ 採用募集ページ note 募集中の採用ポジションや募集要項 がご確認いただけます。 オープンポジションのカジュアル面 談も募集していますので、お気軽に お申し込みください。
ヘンリーで働く人や医療業界や事業 のことが幅広くしれる公式ブログで す。 CEO の逆瀬川も個人で NOTE を発 信しているのでぜひ! 技術ブログ 理想駆動ラジオ はてなブログ Spotify ヘンリー製品開発チームが運営する 技術ブログです。 プロダクト開発・運営の様子をお届 けするポッドキャストです。 Copyright © Henry, Inc. All rights reserved. 10