<a id="home"></a>

# JAAS documentation

JAAS is an enterprise layer on top of [Juju](https://documentation.ubuntu.com/juju/).

JAAS provides JIMM (the Juju Infinite Model Manager), a Juju enterprise-level controller, as well as JIMM-specific extensions to the [`juju` CLI](https://canonical.com/juju/docs/juju-cli/3.6/reference/juju-cli/), the [Juju dashboard](https://canonical.com/juju/docs/juju-cli/3.6/reference/juju-dashboard/), and the [Terraform Provider for Juju](https://documentation.ubuntu.com/terraform-provider-juju/).

When you use an existing Juju controller to deploy JIMM and its dependencies, and then connect your Juju controllers to JIMM, you gain the ability to use [OIDC](https://openid.net/developers/how-connect-works/) to authenticate with your Juju controller, use [ReBAC](https://auth0.com/blog/relationship-based-access-control-rebac/) for authorization, and interact with multiple Juju controllers from a single point of contact.

If you are a site reliability engineer looking to take Juju to the enterprise level, you need JAAS.

## In this documentation

- **Learn more about JAAS:** [Get started with JAAS](https://documentation.ubuntu.com/jaas/latest/tutorial.md#tutorial) • [Architecture](https://documentation.ubuntu.com/jaas/latest/explanation/jaas-architecture.md#jaas-architecture) • [Security](https://documentation.ubuntu.com/jaas/latest/explanation/jaas-security.md#jaas-security-overview)
- **Set up JAAS:** [Deploy JIMM](https://documentation.ubuntu.com/jaas/latest/tutorial.md#tutorial) • [Add a Juju controller](https://documentation.ubuntu.com/jaas/latest/howto/manage-juju-controllers.md#add-a-juju-controller)
- **Handle authentication and authorization:** [Add a user](https://documentation.ubuntu.com/jaas/latest/howto/manage-users.md#add-a-user) • [Manage user access](https://documentation.ubuntu.com/jaas/latest/howto/manage-users.md#control-user-access)
- **Deploy infrastructure and applications:** Use [the juju CLI](https://canonical.com/juju/docs/juju-cli/3.6/reference/juju-cli/#juju-cli) or [the Terraform Provider for Juju](https://canonical-terraform-provider-juju.readthedocs-hosted.com).

## How this documentation is organised

This documentation uses the [Diátaxis documentation structure](https://diataxis.fr/).

- The [Tutorial](https://documentation.ubuntu.com/jaas/latest/tutorial.md#tutorial) takes you step-by-step through setting up JAAS, connecting controllers, and managing permissions.
- [How-to guides](https://documentation.ubuntu.com/jaas/latest/howto.md#howtos) assume you have basic familiarity with JAAS and Juju.
- [Reference](https://documentation.ubuntu.com/jaas/latest/reference.md#reference) provides technical specifications and command references.
- [Explanation](https://documentation.ubuntu.com/jaas/latest/explanation.md#explanation) includes architecture overviews, security models, and detailed discussions.

## Project and community

JAAS is a member of the Ubuntu family. It’s an open source project that warmly welcomes community contributions, suggestions, fixes and constructive feedback.

### Get involved

* [Join our chat](https://matrix.to/#/#jimm:ubuntu.com)
* [Join our forum](https://discourse.charmhub.io/)
* [Report a bug](https://github.com/canonical/jimm/issues)
* [Contribute](https://github.com/canonical/jimm/blob/v3/CONTRIBUTING.md)

### Releases

* [Release notes](https://github.com/canonical/jimm/releases)

### Governance and policies

* [Code of conduct](https://ubuntu.com/community/ethos/code-of-conduct)
* [Visit our careers page](https://canonical.com/careers/engineering)

Thinking about using Juju for your next project? [Get in touch!](https://canonical.com/contact-us)
