mirror of https://github.com/authelia/authelia.git
3.6 KiB
3.6 KiB
title | description | summary | date | draft | images | weight | toc | support | seo | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Incus | Integrating Incus with the Authelia OpenID Connect 1.0 Provider. | 2024-08-13T18:39:00+10:00 | false | 620 | true |
|
|
Tested Versions
{{% oidc-common %}}
Assumptions
This example makes the following assumptions:
- Application Root URL:
https://incus.{{< sitevar name="domain" nojs="example.com" >}}/
- Authelia Root URL:
https://{{< sitevar name="subdomain-authelia" nojs="auth" >}}.{{< sitevar name="domain" nojs="example.com" >}}/
- Client ID:
incus
Some of the values presented in this guide can automatically be replaced with documentation variables.
{{< sitevar-preferences >}}
Authelia
The following YAML configuration is an example Authelia client configuration for use with Incus which will operate with the application example:
identity_providers:
oidc:
## The other portions of the mandatory OpenID Connect 1.0 configuration go here.
## See: https://www.authelia.com/c/oidc
clients:
- client_id: 'incus'
client_name: 'Incus'
public: true
authorization_policy: 'two_factor'
redirect_uris:
- 'https://incus.{{< sitevar name="domain" nojs="example.com" >}}/iodc/callback'
audience:
- 'https://incus.{{< sitevar name="domain" nojs="example.com" >}}'
scopes:
- 'openid'
- 'offline_access'
grant_types:
- 'refresh_token'
- 'authorization_code'
access_token_signed_response_alg: 'RS256'
userinfo_signed_response_alg: 'none'
Application
To configure Incus to utilize Authelia as an OpenID Connect 1.0 Provider:
- Make sure Web Interface is configured and accessible from
https://incus.{{< sitevar name="domain" nojs="example.com" >}}/
. - Set the following configuration options, either via individual commands as shown below or via the
incus config edit
command:- Set
oidc.issuer
to match the Authelia Root URL:incus config set oidc.issuer https://{{< sitevar name="subdomain-authelia" nojs="auth" >}}.{{< sitevar name="domain" nojs="example.com" >}}
. - Set
oidc.client.id
to match theclient_id
in the Authelia configuration:incus config set oidc.client.id incus
. - Set
oidc.audience
to match the Application Root URL:incus config set oidc.audience https://incus.{{< sitevar name="domain" nojs="example.com" >}}
.
- Set
- You should now see a
Login with SSO
button when you access Incus Web Interface.
Example finalized config which can be viewed using incus config show
:
config:
oidc.issuer: https://{{< sitevar name="subdomain-authelia" nojs="auth" >}}.{{< sitevar name="domain" nojs="example.com" >}}
oidc.client.id: incus
oidc.audience: https://incus.{{< sitevar name="domain" nojs="example.com" >}}