Linux Foundation Janssen Project is a collaboration hub for digital identity infrastructure software. It is also the home of Agama, a domain specific language and archive format for interoperable identity orchestration.
Janssen software is used by domains to self-host a modern digital authentication service. It provides a common control plane for infrastructure that is comprised of many open source software components. It plays well with existing IAM infrastructure like KeyCloak and Microsoft Active Directory, as well as cloud identity solutions like Okta. By design, Janssen also enables domains to select ala carte which identity services to run.
We've proud to say that we've been recognized as a Digital Public Good.
Get Help: Discussions | Chat
Get Started: Documentation | Quick Start | User Guides
Contribute: Contribution Guide | Community Docs | Developer Guides
Table of Contents
- Janssen Components
- Getting Started
- Users and Community
- Contributing
- Security
- Documentation
- Design
- Governance
- Support
- More about Janssen Project
A partial list of software in this project:
-
jans-auth-server: A very complete Java OAuth Authorization Server and an OIDF certified OpenID Connect Provider. It's the upstream open source used in Gluu Flex.
-
jans-fido2: A FIDO Server that enables people to authenticate with USB, NFC, BT or platform FIDO devices.
-
jans-scim: SCIM JSON/REST API for identity provisioning automation for users and fido devices persisted in the Janssen database.
-
jans-config-api: Java Config API Server: service provides single control plane for all Janssen services.
-
jans-cli-tui: Text-only tools for interactive and single-line configuration for those who don't like long curl commands.
-
Agama: Language reference and Java implementation. Agama offers an interoperable way to design authentication flows, coded in a DSL purpose built for writing identity journeys.
-
Jans Tarp: A fun test browser plugin for invoking OpenID Connect authentication flows (i.e. a "test RP").
You can install Janssen in a Kubernetes cluster or as a single VM. Check out they Janssen Documentation for all the details.
A BIG thanks to all the amazing contributors!! π π
There are many ways you can contribute. Of course, you can contribute code. But we also need people to write documentation and guides, to help us with testing, to answer questions on the forums and chat, to review PRs, to help us with devops and CI/CD, to provide feedback on usability, and to promote the project through outreach. Also, by sharing metrics with us, we can gain valuable insights into how the software performs in the wild.
The Janssen Project community takes immense pride in the fact that Janssen Project is recognized as a digital public good (DPG) by Digital Public Good Alliance. This is a validation of our social and global impact on millions of people. Today, countries and communities globally use Janssen Project to create affordable and accessible digital identity infrastructure. Please read the announcement to know more.
Building a large community is our number one goal. Please let us know what we can do to make you feel more welcome, no matter what you want to contribute.
Janssen code of conduct ensures that the Janssen community is a welcoming place for everyone.
Contribution guide will give you all the necessary information and howto
to get started. Janssen community welcomes all types of contributions. Be it an interesting comment on an open issue or implementing a feature. Welcome aboard!
If you think you found a security vulnerability, please refrain from posting it publicly on the forums, the chat, or GitHub. Instead, email us at security@jans.io.
Refer to Janssen Security Policy
Visit Janssen Documentation Site for documentation around current as well as previous versions.
The Janssen Project is aligned with the goals of cloud native infrastructure to enable:
-
High Concurrency: For digital identity infrastructure, the number of users is not necessarily related to performance. If you have a billion users who never login, you can do this with a monolithic platform. Concurrency is hard. Janssen is designed to scale horizontally--enabling hypothetically any concurrency by adding more compute and memory.
-
Highly Available: Digital identity infrastructure is mission critical. For many applications, if you can't login, you're dead in the water. Robustness is a fundamental consideration.
-
Flexible while Upgradable: Open source gives you the freedom to modify the code. But having your own fork of the code might make it hard to upgrade--you'll have to merge changes. Janssen provides standard interfaces that make it possible to implement custom business logic in an upgrade-friendly manner.
Janssen is a Linux Foundation project, governed according to the charter. Technical oversight of the project is the responsibility of the Technical Steering Committee ("TSC"). Day to day decision-making is in the hands of the Contributors. The TSC helps to guide the direction of the project and to improve the quality and security of the development process.
If you find a bug in a Janssen project, would like to suggest a new feature, have a "howto" or "usage" question, GitHub Discussions is the main channel for community support. There is also a community chat on Gitter.
Below is the list of current mega releases that hold information about every single release of our services and modules:
- v1.0.14
- v1.0.13
- v1.0.12
- v1.0.11
- v1.0.10
- v1.0.9
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v1.0.0-beta.16
- v1.0.0-beta.15
In 2020, Gluu decided to give contributors a role in the governance of its core open source software, and collaborated with the Linux Foundation to charter a new project, called the Janssen Project. The Gluu team believed the Janssen Project would provide a vendor neutral home for the code which would help us build a bigger community.
Much of the initial software for the Janssen Project is a fork of Gluu Server 4, which has many OpenID self-certifications, going back around ten years.
After this initial contribution, the Janssen Project developers added a new configuration control plane, tools, documentation, packaging and deployment assets.
Pigeons (or doves if you like...) are universally regarded as a symbol of peace. But they are also fast. Powered by a handful of seeds, a well-trained racing pigeon can fly 1000 kilometers in a day. The Janssen brothers of Arendonk in Belgium bred the world's fastest family of racing pigeons. Like competitive animal husbandry, building a complex open source infrastructure requires tenacity, and a long-term commitment to incremental improvement. Janssen racing pigeons revolutionized the sport. The Janssen Project seeks to revolutionize open source identity and access management infrastructure.