OpenID Connect parent repository for local development
Find a file
2022-11-25 06:59:45 +00:00
cacert_resources@ad14916ba5 Add Makefile based build process 2022-08-17 20:30:03 +02:00
deployment Finish IDP setup 2022-08-22 18:52:47 +02:00
hydra_config@4d3f908958 Reference new hydra_config commit 2022-08-09 18:20:30 +02:00
oidc_app@f980c1acc3 Update submodule versions 2022-11-21 17:15:10 +01:00
oidc_idp@2ccbb5dd10 Update submodule versions 2022-11-21 17:15:10 +01:00
oidc_registration@be9006546d Add Makefile based build process 2022-08-17 20:30:03 +02:00
.gitignore Add local preconditions and Vagrantfile 2022-08-18 11:58:24 +02:00
.gitmodules Switch submodule URLs to code.cacert.org 2022-07-28 18:03:06 +02:00
Makefile Add Makefile based build process 2022-08-17 20:30:03 +02:00
README.md Remove double "setup" 2022-11-25 06:59:45 +00:00
Vagrantfile Add local preconditions and Vagrantfile 2022-08-18 11:58:24 +02:00

CAcert OpenID connect parent project

This repository references several repositories for the CAcert OpenID connect setup.

Clone the repository

git clone --recurse-submodules https://code.cacert.org/cacert/oidc-parent.git
cd oidc-parent
# cause pull, fetch and other git commands to consider submodules
git config submodule.recurse true

Get started

  • setup Hydra
  • build CAcert web application resources
  • setup IDP (provides login and consent screens)
  • setup demo application
  • setup OpenID Connect client registration application

Local development setup

Make sure you have the necessary prerequisites installed (tested on Debian 11 Bullseye) and ~/.local/bin is in your $PATH variable:

sudo apt update
sudo apt install make python3-pip python3-psycopg2 golang-go yarnpkg
python3 -m pip install --user -U pip
python3 -m pip install --user ansible
export PATH=$HOME/.local/bin:$PATH

Note: It is a good idea to put the PATH export line into your .bashrc or .zshenv.

Use make to build the web app resources and applications:

go install github.com/nicksnyder/go-i18n/v2/goi18n@latest
make

Use ansible-playbook to deploy Hydra, IDP, Client registration and the demo application:

cd deployment
ansible-playbook 01_install_cacert_oidc.yml

Vagrant setup

sudo apt install vagrant-libvirt virt-manager libvirt-clients
vagrant up
vagrant ssh -- cat .local/share/mkcert/rootCA.pem | sudo tee /usr/local/share/ca-certificates/mkcert-vagrant-oidc.crt
sudo update ca-certificates