~/talk

Clojail: Life in a Clojure Prison

Talkat Clojure/conj 2011 · 2011-11-10..11-12· [security, ruby]
links:none on file
slides:none on file

Library Clojail (v0.5.0) combines the JVM SecurityManager with Clojure-side checks to sandbox evaluated code: it macro-expands and inspects forms, replaces the dot special form, enforces a per-user namespace model, limits defs (default max 5) and uses a 10 seconds timeout via a thunk that cancels thread groups (but not thread pools, so it disallows futures/agents). It ships with secure-tester and a no-death variant, supports init code, jvm false to disable JVM sandbox, and powers try-clojure, lazybot and 4clojure in production while admitting occasional holes that require updates.

AI-written summary · about

  1. 0:00Start
  2. 5:15Code is dangerous!
  3. 5:31How often do you think of it like that?
  4. 7:04A sandbox can prevent...
  5. 7:23The JVM sandbox
  6. 8:53What if they rebind things?
  7. 9:09Facing these problems
  8. 9:58Rip apart code
  9. 12:15Extensibility
  10. 15:42Security Blanket
  11. 22:52Laying The Foundation
  12. 23:55A Simple Binding Spell
  13. 25:01Check ALL The Things!
  14. 28:00Clojail sandboxes in two stages.
  15. 31:07Sandboxing threads
  16. 32:05Finally, An Eval!
  17. 41:26Try Clojure
  18. 42:12Approach
  19. 44:59Guidelines for using Clojail in your own code •If you avoid sharing the
  20. 46:01Further reading
~/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.