Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Zero trust architecture with Keycloak

Zero trust architecture with Keycloak

In this talk we will look at how we used Keycloak with other open-source tools like Kubernetes, Istio, OPA and Vault to establish a zero-trust architecture for a large developer platform running hundreds of applications.

Avatar for Posedio

Posedio PRO

June 12, 2024
Tweet

More Decks by Posedio

Other Decks in Programming

Transcript

  1. WHAT’S IN IT FOR ME 1. Conventional vs. zero trust

    architecture 2. User identity vs. machine identity 3. Platform example vs. application example 4.What should I use in my project?
  2. 3 HI • Damjan Gjurovski • Software all-rounder J •

    Set up Keycloak and zero trust in a large developer platform, worked on some Keycloak plugins
  3. 5 PERIMETER- BASED SECURITY • Network perimeter • DMZ and

    internal zone • Trust those inside the zone • Check all entry points
  4. 6 ZERO TRUST • Push security controls down • Always

    verify authentication and authorization • Follow the principle of least privilege
  5. 7 THE ROOT OF TRUST PROBLEM • Turtles all the

    way down • Who compiles the compiler https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf
  6. 9 USER IDENTITY • User accounts • Groups, roles, permissions

    bound to work roles • Least privilege according to current task/role https://gist.github.com/angelo-v/e0208a18d455e2e6ea3c40ad637aac53
  7. 10 MACHINE IDENTITY • Service accounts • Groups and permissions

    bound to use-case, type or network perimeter • Least privilege is difficult
  8. 12 THE PLATFORM • Keycloak • JWTs • Identity federation

    • Istio • OAuth proxy • OPA • Vault • Kubernetes • GCP
  9. 16 THIS IS THE WAY • Use Keycloak J •

    Use zero trust • Reconsider JWTs • Prioritize user identities