SlideShare a Scribd company logo
Patryk Królikowski
ForgeRock Deployment
for Cloud Readiness
Generics
Copyright © 2017 ForgeRock, all rights reserved. 3
VS
Copyright © 2017 ForgeRock, all rights reserved. 4
Copyright © 2017 ForgeRock, all rights reserved. 5
Configuration as an artefact
Copyright © 2017 ForgeRock, all rights reserved. 6
GUI as config editor
Copyright © 2017 ForgeRock, all rights reserved. 7
Container friendliness
Copyright © 2017 ForgeRock, all rights reserved. 8
12 Factor
Container friendly
Config as an artefact
(Infrastructure as Code)
Copyright © 2017 ForgeRock, all rights reserved.
Lingo
9
helm install stable/mysql
images containersdocker files
K8s manifests helm / charts
yaml
Copyright © 2017 ForgeRock, all rights reserved.
what we support DevOps with?
Sample Dockerfiles:
★ backstage account needed
★ NO images
Sample Kubernetes Manifests
★ for dev/test
Support for deployments using Docker Images
10
Copyright © 2017 ForgeRock, all rights reserved.
DevOps Examples
Minikube / Kubernetes on Google Container Engine:
★ OpenAM / DJ
★ OpenIDM
★ OpenIG
11
Copyright © 2017 ForgeRock, all rights reserved.
something more for Cloud?
ForgeRock Service Broker
★ for Cloud Foundry
★ allows Cloud Foundry apps to access OAuth2 features of our stack
★ automates OAuth2 client profile creation
★ package for installation in Cloud Foundry
12
DIRECTORY SERVICES
IDENTITYGATEWAY
IDENTITYMANAGEMENT
USERMANAGEDACCESS
ACCESSMANAGEMENT
COMMONAUDIT&IDENTITYSERVICES
What about products?
The ForgeRock Deployment for Cloud Readiness
Copyright © 2017 ForgeRock, all rights reserved.
Autonomous Server
★ No crosstalk, no special servers
★ CTS - sole source of state for all tokens
★ Throw me more servers
15
Copyright © 2017 ForgeRock, all rights reserved.
amster
★ realizes configuration as an artefact approach
What is it?
★ interacts with OpenAM via REST based API
★ lightweight OpenAM configurator
★ export/import configs as JSON
16
connect http://www.example.com:8080/openam -k /Users/demo/
keyfile
import-config --path /Users/demo/am-config
:exit
Copyright © 2017 ForgeRock, all rights reserved.
is that all?
… well … no
★ bootstrap - boot.json
★ Agents 5
- no more callbacks
- websocket channel based communications
17
The ForgeRock Deployment for Cloud Readiness
Copyright © 2017 ForgeRock, all rights reserved.
I was (almost) born for DevOps
★ JSON/REST friendly
★ export/import config
but….
★ I still require cluster aware persistence layer
but my parents love me …
★ dynamic cluster handling
★ Immutable Server Configuration
★ config read on startup and stored in memory (not repo)
‣ read only config for PROD and r/w for DEV
19
The ForgeRock Deployment for Cloud Readiness
Copyright © 2017 ForgeRock, all rights reserved.
… me too …
★ stateless
★ I scale easily
★ configs / scripts as an artefact
but….
★ JWT session tokens must use the same key:
‣ same keystore across nodes
‣ distribution via Kubernetes secret volumes
21
The ForgeRock Deployment for Cloud Readiness
Copyright © 2017 ForgeRock, all rights reserved.
… well, I’m a pet
★ stable network identity
★ stable storage
★ sharding- all tokens with same ID go to
same DJ backend
★ in samples we base on Kubernetes
StatefulSet feature.
23
SOURCE: https://www.pinterest.com/pin/539095017866111126/
Copyright © 2017 ForgeRock, all rights reserved.
Caveats
OpenAM
★ browser AuthN is stateful = sticky sessions on LB
★ no direct config export to GIT
★ still some of the OpenAM settings require restart = redeploy
container
OpenIDM
★ JDBC repo available as pre-requirement
★ clusters - node list not modified = may grow fast
24
Copyright © 2017 ForgeRock, all rights reserved.
Configurations
Immutable vs mutable:
★ Config baked into docker image
★ Difficult for OpenAM - shared config store
★ OpenIDM easier and even easier with 5.5
★ OpenIG - well supported
25
Toolkit
Copyright © 2017 ForgeRock, all rights reserved.
OpenAM / OpenDJ example
27
Copyright © 2017 ForgeRock, all rights reserved.
Sample setup
28
kubctl
docker
minikube
helm
fretes
tiller pod
Pod
Docker EngineKubernetes
Minikube
VM
Copyright © 2017 ForgeRock, all rights reserved.
Resources
Docker build files:
https://stash.forgerock.org/scm/docker/docker.git
Kubernetes deployment examples:
https://stash.forgerock.org/scm/docker/fretes.git
Scripts and JSON configs for configuring the AM/DJ/IDM/IG:
https://stash.forgerock.org/scm/cloud/forgeops-init.git
Samples for OpenIG:
https://github.com/ForgeRock/openig-devops-guide
29
Deploy AM/DJ in 5 :)

More Related Content

PDF
Dockers zero to hero
PDF
Digital Forensics and Incident Response in The Cloud
PPTX
NGINX Basics and Best Practices Workshop
PPTX
API Workloads on Kubernetes | Show Code Part 4
PDF
Andrea Di Persio
PPTX
NGINX Basics: Ask Me Anything – EMEA
PDF
Security Tips to run Docker in Production
PDF
Scaling and Orchestrating Microservices with OSGi - N Bartlett
Dockers zero to hero
Digital Forensics and Incident Response in The Cloud
NGINX Basics and Best Practices Workshop
API Workloads on Kubernetes | Show Code Part 4
Andrea Di Persio
NGINX Basics: Ask Me Anything – EMEA
Security Tips to run Docker in Production
Scaling and Orchestrating Microservices with OSGi - N Bartlett

What's hot (20)

ODP
Openshift presentation
PPTX
Yet Another Session about Docker and Containers​
PDF
Containers in depth – Understanding how containers work to better work with c...
PDF
Digital Forensics and Incident Response in The Cloud Part 3
PPTX
Octopus Deploy and Biztalk
PPTX
Artifacts management with DevOps
PDF
Docker Dhahran Nov 2016 meetup
PDF
NGINX Plus R19 : EMEA
PDF
Running and Scaling Docker Containers with Kontena
PDF
Crikeycon 2019 Velociraptor Workshop
PDF
Javantura v4 - Self-service app deployment with Kubernetes and OpenShift - Ma...
PPTX
La importancia de versionar el código: GitHub, portafolio y recursos para est...
PPT
Docker pipelines
PDF
利用K8S實現高可靠應用
PPTX
Thriving in the cloud: Going beyond the 12 factors
PDF
Securing the Software Supply Chain with TUF and Docker - Justin Cappos and Sa...
PDF
Velociraptor - SANS Summit 2019
PDF
The Twelve Factor App - Pivotal Tracker
PPTX
Vault Agent and Vault 0.11 features
PDF
DockerCon EU 2015: What is it we want in containers anyway?
Openshift presentation
Yet Another Session about Docker and Containers​
Containers in depth – Understanding how containers work to better work with c...
Digital Forensics and Incident Response in The Cloud Part 3
Octopus Deploy and Biztalk
Artifacts management with DevOps
Docker Dhahran Nov 2016 meetup
NGINX Plus R19 : EMEA
Running and Scaling Docker Containers with Kontena
Crikeycon 2019 Velociraptor Workshop
Javantura v4 - Self-service app deployment with Kubernetes and OpenShift - Ma...
La importancia de versionar el código: GitHub, portafolio y recursos para est...
Docker pipelines
利用K8S實現高可靠應用
Thriving in the cloud: Going beyond the 12 factors
Securing the Software Supply Chain with TUF and Docker - Justin Cappos and Sa...
Velociraptor - SANS Summit 2019
The Twelve Factor App - Pivotal Tracker
Vault Agent and Vault 0.11 features
DockerCon EU 2015: What is it we want in containers anyway?
Ad

Similar to The ForgeRock Deployment for Cloud Readiness (20)

PPTX
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
PDF
OSDC 2017 | VMware's (Open Source) way of Container by Dr. Udo Seidel
PDF
OSDC 2017 - Dr. Udo Seidel - VMwares (open source) Way of Container
PDF
OpenStack Days Krakow
PDF
Taking Docker to Production: What You Need to Know and Decide
PDF
Taking Docker to Production: What You Need to Know and Decide
PPTX
Настройка окружения для кросскомпиляции проектов на основе docker'a
PDF
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
PDF
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
PDF
Down by the Docker
PDF
Kubernetes basics and hands on exercise
PDF
Setting Up a Cloud Server - Part 2 - Transcript.pdf
PDF
Heroku to Kubernetes & Gihub to Gitlab success story
ODP
Why Docker? Dayton PHP, April 2017
PPTX
Instant developer onboarding with self contained repositories
PDF
Core OS
PDF
Containerizing MongoDB with kubernetes
PPTX
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
PDF
A vision of persistence
PDF
Continuous integration is not a solved problem
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
OSDC 2017 | VMware's (Open Source) way of Container by Dr. Udo Seidel
OSDC 2017 - Dr. Udo Seidel - VMwares (open source) Way of Container
OpenStack Days Krakow
Taking Docker to Production: What You Need to Know and Decide
Taking Docker to Production: What You Need to Know and Decide
Настройка окружения для кросскомпиляции проектов на основе docker'a
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
Down by the Docker
Kubernetes basics and hands on exercise
Setting Up a Cloud Server - Part 2 - Transcript.pdf
Heroku to Kubernetes & Gihub to Gitlab success story
Why Docker? Dayton PHP, April 2017
Instant developer onboarding with self contained repositories
Core OS
Containerizing MongoDB with kubernetes
Deep Dive on REX-Ray, libStorage and the Container Storage Interface - Clinto...
A vision of persistence
Continuous integration is not a solved problem
Ad

More from ForgeRock (20)

PDF
Digital Identities in the Internet of Things - Securely Manage Devices at Scale
PPTX
Get the Exact Identity Solution You Need - In the Cloud - AWS and Beyond
PDF
Identity Live Sydney: Identity Management - A Strategic Opportunity
PDF
Identity Live Singapore: Transform Your Cybersecurity Capability
PDF
Identity Live Singapore 2018 Keynote Presentation
PDF
Identity Live Sydney 2018 Keynote Presentation
PDF
Identity Live Singapore: Just Ask 'Em
PDF
Identity Live Singapore: Building Trust & Privacy in a Connected Society
PDF
Identity Live Sydney: Intelligent Authentication
PDF
Identity Live Sydney: Building Trust and Privacy in a Connected Society
PDF
Get the Exact Identity Solution you Need in the Cloud - Deep Dive
PPTX
Get the Exact Identity Solution You Need - In the Cloud - Overview
PDF
ForgeRock and Trusona - Simplifying the Multi-factor User Experience
PDF
Opening Keynote (Identity Live Berlin 2018)
PDF
Steinberg - Customer identity as the cornerstone of our approach to digitaliz...
PDF
BMW Group - Identity Enables the Next 100 Years.. (Identity Live Berlin 2018)
PDF
Trust is Everything - The Future of Identity and the ForgeRock Platform (Iden...
PDF
Silo Busters- The Value of User and Data Centricity beyond IoT Devices (Ident...
PDF
Shift from GDPR readiness to sustained compliance to improve your business an...
PDF
Intelligent Authentication (Identity Live Berlin 2018)
Digital Identities in the Internet of Things - Securely Manage Devices at Scale
Get the Exact Identity Solution You Need - In the Cloud - AWS and Beyond
Identity Live Sydney: Identity Management - A Strategic Opportunity
Identity Live Singapore: Transform Your Cybersecurity Capability
Identity Live Singapore 2018 Keynote Presentation
Identity Live Sydney 2018 Keynote Presentation
Identity Live Singapore: Just Ask 'Em
Identity Live Singapore: Building Trust & Privacy in a Connected Society
Identity Live Sydney: Intelligent Authentication
Identity Live Sydney: Building Trust and Privacy in a Connected Society
Get the Exact Identity Solution you Need in the Cloud - Deep Dive
Get the Exact Identity Solution You Need - In the Cloud - Overview
ForgeRock and Trusona - Simplifying the Multi-factor User Experience
Opening Keynote (Identity Live Berlin 2018)
Steinberg - Customer identity as the cornerstone of our approach to digitaliz...
BMW Group - Identity Enables the Next 100 Years.. (Identity Live Berlin 2018)
Trust is Everything - The Future of Identity and the ForgeRock Platform (Iden...
Silo Busters- The Value of User and Data Centricity beyond IoT Devices (Ident...
Shift from GDPR readiness to sustained compliance to improve your business an...
Intelligent Authentication (Identity Live Berlin 2018)

Recently uploaded (20)

PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
A Presentation on Artificial Intelligence
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Approach and Philosophy of On baking technology
PPTX
OMC Textile Division Presentation 2021.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Encapsulation_ Review paper, used for researhc scholars
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
A comparative analysis of optical character recognition models for extracting...
A Presentation on Artificial Intelligence
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Heart disease approach using modified random forest and particle swarm optimi...
DP Operators-handbook-extract for the Mautical Institute
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Group 1 Presentation -Planning and Decision Making .pptx
Approach and Philosophy of On baking technology
OMC Textile Division Presentation 2021.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Enhancing emotion recognition model for a student engagement use case through...
MIND Revenue Release Quarter 2 2025 Press Release
SOPHOS-XG Firewall Administrator PPT.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Accuracy of neural networks in brain wave diagnosis of schizophrenia

The ForgeRock Deployment for Cloud Readiness

  • 3. Copyright © 2017 ForgeRock, all rights reserved. 3 VS
  • 4. Copyright © 2017 ForgeRock, all rights reserved. 4
  • 5. Copyright © 2017 ForgeRock, all rights reserved. 5 Configuration as an artefact
  • 6. Copyright © 2017 ForgeRock, all rights reserved. 6 GUI as config editor
  • 7. Copyright © 2017 ForgeRock, all rights reserved. 7 Container friendliness
  • 8. Copyright © 2017 ForgeRock, all rights reserved. 8 12 Factor Container friendly Config as an artefact (Infrastructure as Code)
  • 9. Copyright © 2017 ForgeRock, all rights reserved. Lingo 9 helm install stable/mysql images containersdocker files K8s manifests helm / charts yaml
  • 10. Copyright © 2017 ForgeRock, all rights reserved. what we support DevOps with? Sample Dockerfiles: ★ backstage account needed ★ NO images Sample Kubernetes Manifests ★ for dev/test Support for deployments using Docker Images 10
  • 11. Copyright © 2017 ForgeRock, all rights reserved. DevOps Examples Minikube / Kubernetes on Google Container Engine: ★ OpenAM / DJ ★ OpenIDM ★ OpenIG 11
  • 12. Copyright © 2017 ForgeRock, all rights reserved. something more for Cloud? ForgeRock Service Broker ★ for Cloud Foundry ★ allows Cloud Foundry apps to access OAuth2 features of our stack ★ automates OAuth2 client profile creation ★ package for installation in Cloud Foundry 12
  • 15. Copyright © 2017 ForgeRock, all rights reserved. Autonomous Server ★ No crosstalk, no special servers ★ CTS - sole source of state for all tokens ★ Throw me more servers 15
  • 16. Copyright © 2017 ForgeRock, all rights reserved. amster ★ realizes configuration as an artefact approach What is it? ★ interacts with OpenAM via REST based API ★ lightweight OpenAM configurator ★ export/import configs as JSON 16 connect http://www.example.com:8080/openam -k /Users/demo/ keyfile import-config --path /Users/demo/am-config :exit
  • 17. Copyright © 2017 ForgeRock, all rights reserved. is that all? … well … no ★ bootstrap - boot.json ★ Agents 5 - no more callbacks - websocket channel based communications 17
  • 19. Copyright © 2017 ForgeRock, all rights reserved. I was (almost) born for DevOps ★ JSON/REST friendly ★ export/import config but…. ★ I still require cluster aware persistence layer but my parents love me … ★ dynamic cluster handling ★ Immutable Server Configuration ★ config read on startup and stored in memory (not repo) ‣ read only config for PROD and r/w for DEV 19
  • 21. Copyright © 2017 ForgeRock, all rights reserved. … me too … ★ stateless ★ I scale easily ★ configs / scripts as an artefact but…. ★ JWT session tokens must use the same key: ‣ same keystore across nodes ‣ distribution via Kubernetes secret volumes 21
  • 23. Copyright © 2017 ForgeRock, all rights reserved. … well, I’m a pet ★ stable network identity ★ stable storage ★ sharding- all tokens with same ID go to same DJ backend ★ in samples we base on Kubernetes StatefulSet feature. 23 SOURCE: https://www.pinterest.com/pin/539095017866111126/
  • 24. Copyright © 2017 ForgeRock, all rights reserved. Caveats OpenAM ★ browser AuthN is stateful = sticky sessions on LB ★ no direct config export to GIT ★ still some of the OpenAM settings require restart = redeploy container OpenIDM ★ JDBC repo available as pre-requirement ★ clusters - node list not modified = may grow fast 24
  • 25. Copyright © 2017 ForgeRock, all rights reserved. Configurations Immutable vs mutable: ★ Config baked into docker image ★ Difficult for OpenAM - shared config store ★ OpenIDM easier and even easier with 5.5 ★ OpenIG - well supported 25
  • 27. Copyright © 2017 ForgeRock, all rights reserved. OpenAM / OpenDJ example 27
  • 28. Copyright © 2017 ForgeRock, all rights reserved. Sample setup 28 kubctl docker minikube helm fretes tiller pod Pod Docker EngineKubernetes Minikube VM
  • 29. Copyright © 2017 ForgeRock, all rights reserved. Resources Docker build files: https://stash.forgerock.org/scm/docker/docker.git Kubernetes deployment examples: https://stash.forgerock.org/scm/docker/fretes.git Scripts and JSON configs for configuring the AM/DJ/IDM/IG: https://stash.forgerock.org/scm/cloud/forgeops-init.git Samples for OpenIG: https://github.com/ForgeRock/openig-devops-guide 29