Authentication Service Installation

Then, the Keyrock code can be installed from the corresponding Git repositories.

$ sudo apt-get install -y python-dev python-virtualenv libssl-dev libffi-dev libjpeg8-dev libxml2-dev libxslt1-dev libsasl2-dev libssl-dev libldap2-dev libffi-dev libsqlite3-dev libmysqlclient-dev python-mysqldb
$ git clone https://github.com/ging/keystone
$ cd keystone && git checkout tags/keyrock-6.0.0
$ cd $HOME
$ git clone https://github.com/ging/horizon
$ cd horizon && git checkout tags/keyrock-6.0.0
$ cd $HOME

The next step is to configure the Keyrock Identity Manager. This version uses the configuration samples provided in the source code below.

$ cp keystone/etc/keystone.conf.sample keystone/etc/keystone.conf
$ cp horizon/openstack_dashboard/local/local_settings.py.example horizon/openstack_dashboard/local/local_settings.py
$ sed -i s/\$\$IDM_PASS/${IDM_PASS}/idm/g horizon/openstack_dashboard/local/local_settings.py

Once that Keyrock is configured, it is necessary to install the Python dependencies, as highlighted below.

$ sudo horizon/tools/with_venv.sh pip install six==1.9.0
$ sudo python keystone/tools/install_venv.py
$ sudo python horizon/tools/install_venv.py

Then, it is possible to synchronise the Identity Management Service database.

$ sudo keystone/tools/with_venv.sh keystone/bin/keystone-manage db_sync && \
$ sudo keystone/tools/with_venv.sh keystone/bin/keystone-manage db_sync --extension=endpoint_filter && \
$ sudo keystone/tools/with_venv.sh keystone/bin/keystone-manage db_sync --extension=oauth2 && \
$ sudo keystone/tools/with_venv.sh keystone/bin/keystone-manage db_sync --extension=roles && \
$ sudo keystone/tools/with_venv.sh keystone/bin/keystone-manage db_sync --extension=user_registration && \
$ sudo keystone/tools/with_venv.sh keystone/bin/keystone-manage db_sync --extension=two_factor_auth 

Authentication Service Execution

To activate and run Keystone, it is necessary to run the commands as below.

$ sudo ./keystone/tools/with_venv.sh ./keystone/bin/keystone-all -v & sudo ./horizon/tools/with_venv.sh python ./horizon/manage.py runserver 0.0.0.0:8000