- Introduction
- How to Build & Install
- Changes Introduced in 7.x
- API Overview
- Advanced Documentation
- License
This project is part of FIWARE. You will find more information about this FIWARE GE here.
- You will find the source code of this project in GitHub here
- You will find the documentation of this project in Read the Docs here
Welcome to the main repository for the UPM's implementation of the FIWARE Identity Management Generic Enabler. Thanks to this component and together with PEP Proxy and Authorization PDP GEs, you will add authentication and authorization security to your services and applications.
This GE is based on a javascript environment and SQL databases. In order to run the identity manager the following requirements must be installed:
- node.js
- npm
- mysql-server (^5.7)
- build-essential
- Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
- Install the dependencies:
cd fiware-idm/
npm install
- Duplicate config.template in config.js:
cp config.js.template config.js
- Configure data base access credentials:
config.database = {
host: 'localhost', // default: 'localhost'
password: 'idm', // default: 'idm'
username: 'root', // default: 'root'
database: 'idm', // default: 'idm'
dialect: 'mysql' // default: 'mysql'
}
- To configure the server to listen HTTPs requests, generate certificates OpenSSL and configure config.js:
./generate_openssl_keys.sh
config.https = {
enabled: true, //default: 'false'
cert_file: 'certs/idm-2018-cert.pem',
key_file: 'certs/idm-2018-key.pem',
port: 443
}
- Create database, run migrations and seeders:
npm run-script create_db
npm run-script migrate_db
npm run-script seed_db
- Start server with admin rights (server listens in 3000 port by default or in 443 if HTTPs is enabled).
sudo npm start
You can test the Identity manager using the default user:
- Email:
admin@test.com
- Password:
1234
We also provide a Docker image to facilitate you the building of this GE.
- Here you will find the Dockerfile and the documentation explaining how to use it.
- In Docker Hub you will find the public image.
They biggest change introduced in 7.x is that the identity manager no longer depends on Openstack components Keystone and Horizon. Now is fully implemented in Node JS. Another remarkable changes have been made:
- A driver has been implemented in order to make authentication against another database different from the default one.+
- The appearance of the web portal can be easily modified though configurable themes.
- Now users don't need to switch session in order to create an application that will belong to an organization.
- Permissions of an application can be edited or deleted.
Several resources could be managed through the API like users, applications or organizations. Further information could be found in the API section.
Finally, one of the main uses of this Generic Enabler is to allow developers to add identity management (authentication and authorization) to their applications based on FIWARE identity. This is posible thanks to OAuth2 protocol. For more information check the OAuth2 API.
- How to run tests
- User & Programmers Manual
- Installation & Administration Guide
- Connecting IdM to a eIDAS node
MIT © 2018 Universidad Politécnica de Madrid.