Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

36 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Identity Manager - Keyrock

FIWARE SecurityLicense: MITDocker badgeSupport badge
DocumentationBuild StatusCoverage StatusStatusCodacy Badge

Keyrock is the FIWARE component responsible for Identity Management. Using Keyrock (in conjunction with other security components such as PEP Proxy and Authzforce) enables you to add OAuth2-based authentication and authorization security to your services and applications.

This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Security.

📚 Documentation🎓 Academy🐳 Docker Hub🎯 Roadmap

Content


Background

The main identity management concepts within Keyrock are:

  • Users
    • Have a registered account in Keyrock.
    • Can manage organizations and register applications.
  • Organizations
    • Are group of users that share resources of an application (roles and permissions).
    • Users can be members or owners (manage the organization).
  • Applications
    • has the client role in the OAuth 2.0 architecture and will request protected user data.
    • Are able to authenticate users using their Oauth credentials (ID and secret) which unequivocally identify the application
    • Define roles and permissions to manage authorization of users and organizations
    • Can register Pep Proxy to protect backends.
    • Can register IoT Agents.

Keyrock provides both a GUI and an API interface.

Software requirements

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

Install

  1. Clone Proxy repository:
git clone https://github.com/ging/fiware-idm.git
  1. Install the dependencies:
cd fiware-idm/npm install
  1. Duplicate config.template in config.js:
cp config.js.template config.js
  1. 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'};
  1. 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};
  1. Create database, run migrations and seeders:
npm run-script create_dbnpm run-script migrate_dbnpm run-script seed_db
  1. 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

Docker

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.

Usage

Information about how to use the Keyrock GUI can be found in the User & Programmers Manual.

API

Resources can be managed through the API (e.g. Users, applications and organizations). Further information can 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.

Tests

For performing a basic end-to-end test, you have to follow the next steps. A detailed description about how to run tests can be found here.

  1. Verify that the host address of IdM can be reached. By default, web access will show a Login Page.
  2. Acquire a valid username and password and access with those credentials. The resulting web page is the landing page of the IdM KeyRock Portal.
  3. Verify that you can view the list of applications, organizations, etc.

Advanced Documentation

Changes Introduced in 7.x

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:

  1. A driver has been implemented in order to make authentication against another database different from the default one.
  2. The appearance of the web portal can be easily modified though configurable themes.
  3. Now users don't need to switch session in order to create an application that will belong to an organization.
  4. Permissions of an application can be edited or deleted.
  5. IdM could play the role of gateway between services and eDIAS Node in order to allow users authentication with their national eID.
  6. OAuth Refresh Token Supported.
  7. Configurable OAuth token types (Permanent tokens and Json Web Tokens).
  8. OAuth Revoke Token endpoint enable.
  9. Internazionalization od UI (Spanish and English supported).
  10. User Admin Panel.
  11. Trusted application for OAuth token validation.
  12. IdM could play the role as PDP for basic authorization.
  13. Complete Sign out. Delete session in services as well as in Keyrock.

Quality Assurance

This project is part of FIWARE and has been rated as follows:

  • Version Tested:
  • Documentation:
  • Responsiveness:
  • FIWARE Testing:

License

Keyrock is licensed under the MIT License.

© 2018 Universidad Politécnica de Madrid.

About

Keyrock is the FIWARE component responsible for Identity Management.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages