~/talk

GraphQL Authorization with Open Policy Agent

Talkat GraphQL Summit 2023 · 2023-10-09..10-13· [security]
links:none on file
slides:none on file

Indeed centralizes field-level GraphQL authorization using Open Policy Agent and Rego policies deployed as sidecars, with about 200 subgraphs each owning a policy package. The Apollo Router calls an Apollo Router external co-processor (TypeScript) which posts input like mutation name and user roles to OPA at path subgraph.jobs.allow; OPA returns JSON allow=true/false. If true the router proceeds, if false the co-processor replaces control to break and returns a 403. This setup yields low-latency, versioned, centralized authorization that works in production.

AI-written summary · about

  1. 0:00Introduction and speaker intro
  2. 2:38Why authorization needs improvement
  3. 5:04Open Policy Agent overview
  4. 6:30Rego policy language basics
  5. 9:23Benefits of policy as code
  6. 10:27Getting policy decisions from OPA
  7. 12:35Deploying OPA for performance
  8. 15:03Apollo router external coprocessing
  9. 16:53Coprocessor integration code
  10. 19:43Summary and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.