0Pricing
Clojure Functional Programming & JVM Backend Development · Lesson

Authentication & Authorization

Secure your Clojure backend with token-based authentication and role-based authorization using Ring middleware.

AuthN vs AuthZ

Two distinct concerns:

  • Authentication (AuthN): who are you?
  • Authorization (AuthZ): what are you allowed to do?

You must verify identity before checking permissions.

Hashing Passwords

Never store plain passwords. Use a slow, salted hash like bcrypt via the buddy library.

(require '[buddy.hashers :as hashers])

(def stored (hashers/derive "secret123"))
(hashers/check "secret123" stored) ; => true

All lessons in this course

  1. Building a RESTful API
  2. Event-Driven Architectures
  3. System Design & Scalability Patterns
  4. Authentication & Authorization
← Back to Clojure Functional Programming & JVM Backend Development