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
OPA for policy enforcement
Search
Sibi
April 29, 2020
Technology
88
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OPA for policy enforcement
Sibi
April 29, 2020
More Decks by Sibi
See All by Sibi
Just
psibi
0
110
Nix/NixOS
psibi
0
140
Rust
psibi
2
340
Rust + Credstash
psibi
0
98
ASG and lifecycle hooks
psibi
0
75
Haskell + Azure Pipelines
psibi
0
98
Web programming in Haskell using Yesod
psibi
0
190
Monad
psibi
1
190
Science behind Quantum Computing
psibi
0
320
Other Decks in Technology
See All in Technology
Kiro Crewをはじめよう
kizawa2020
1
160
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
6
4.9k
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
230
Benchmarking Disaggregated Serving on vLLM + Dynamo with a Real Coding-Agent Workload
nttcom
1
190
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
760
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
190
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
1
140
スプシの手作業からの解脱 ~更新はClaude Codeに、見せ方と使い方はGASアプリに任せる~
kentarofujii
0
150
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
450
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
130
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
290
Featured
See All Featured
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
600
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
460
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Speed Design
sergeychernyshev
33
2.2k
How to Talk to Developers About Accessibility
jct
2
580
Design in an AI World
tapps
1
350
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
580
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
OPA for policy OPA for policy enforcement enforcement Sibi Prabakaran
April 29, 2020
Agenda Agenda Overview of OPA Rego Usecases/Integra ons Example integra
on of OPA + Python web service
OPA OPA Project started in a company named Styra at
2016 Currently an incubator project at Linux founda on (CNCF) Goal: Unify policy enforcement
Overview Overview
Rego Rego Language for wri ng policy Expresssions, Variables, Rules
Itera on Tooling
Expressions Expressions > input.servers[0].protocols[0] "https" > input.servers[0].protocols[0] undefined decision input.servers[0].id
== "app" input.servers[0].protocols[0] == "https"
Rego Variables Rego Variables hello := "world"
Iteration Iteration networks = [{ "id": "net1", "public": false}, {
"id": "net2", "public": false}] > networks[x] +---+------------------------------+ | x | networks[x] | +---+------------------------------+ | 0 | {"id":"net1","public":false} | | 1 | {"id":"net2","public":false} | +---+------------------------------+
Rules Rules any_public_networks = true { # is true if...
net := networks[_] # some network exists and.. net.public # it is public. }
API Integration API Integration Python code Rego code
Experience Experience Policies Error messages aren’t nice Community Tooling
OPA OPA Integrations Integrations
Comparision Comparision with Sentinel with Sentinel Open Source Applicable more
generally Language differences
Other Stu Other Stu WASM Support Editor integra ons h
ps:/ /play.openpolicyagent.org/
Haskell Haskell - Fugue Rego Toolkit h ps:/ /github.com/fugue/fregot
Questions Questions