# Add Openid Authentication via Keycloak

**URL:** <https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396>\
**Category:** Installing my Dolibarr\
**Tags:** Question, Help, Linux\
**Created:** [June 4, 2024, 10:36am UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396 "2024-06-04T10:36:30Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![Adriendtz](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/a/958977/32.png) [@Adriendtz](https://www.dolibarr.org/forum/u/Adriendtz)\
**Post date:** [June 4, 2024, 10:36am UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/1 "2024-06-04T10:36:30Z")

</div>

Hello there,

I recently tried to set up openid authentication for keycloak authentification on my dolibarr but the links to create by hand in “MAIN\_AUTHENTICATION\_OPENID\_URL” do not work and mark me after signin in with keycloak “You requested a website or a page that does not exist. »  
My link seems well configured looks like :

[https://MYKEYCLOAKURL/realms/MYREALM/protocol/openid-connect/auth?client\_id=MYCLIENT&redirect\_uri=http%3A%2F%2FMYDOLIBARR%2Fauth%2Fopenid%2Fcallback&response\_type=code&scope=openid%20email&response\_type=code](https://MYKEYCLOAKURL/realms/MYREALM/protocol/openid-connect/auth?client_id=MYCLIENT&redirect_uri=http%3A%2F%2FMYDOLIBARR%2Fauth%2Fopenid%2Fcallback&response_type=code&scope=openid%20email&response_type=code)

=\> Has anyone succeeded?

Yours sincerely

---

<div class="post-metadata">

**Author:** ![mwelters](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/m/ce7236/32.png) [@mwelters](https://www.dolibarr.org/forum/u/mwelters)\
**Post date:** [June 8, 2024, 2:13pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/2 "2024-06-08T14:13:43Z")

</div>

Hi,

I am trying Openid against authentik, but also had no luck.

I wonder if urlencoding is needed, the documentation looks like only the redirect\_uri needs to be urlencoded and the following paramters not.  
But, tried nearly every combination without success

---

<div class="post-metadata">

**Author:** ![plp050452](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/p/839c29/32.png) [@plp050452](https://www.dolibarr.org/forum/u/plp050452)\
**Post date:** [October 24, 2024, 12:31am UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/3 "2024-10-24T00:31:16Z")

</div>

Did you have any luck im trying to get it to work with authentik but am getting a redirect uri mismatch error

---

<div class="post-metadata">

**Author:** ![Tetras-Libre-Anthony](https://www.dolibarr.org/forum/user_avatar/www.dolibarr.org/tetras-libre-anthony/32/8121_2.png) [@Tetras-Libre-Anthony](https://www.dolibarr.org/forum/u/Tetras-Libre-Anthony)\
**Post date:** [December 10, 2024, 12:56pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/4 "2024-12-10T12:56:19Z")

</div>

I have sucessed to connect Keycloak to Dolibarr

I’m currently working on a Doli plugin. Features :

- Setting OpenId related Dolibarr config variable from infos like Keycloak domain, realm name etc
- Trigger on user creation → create user in Keycloak realm
- Trigger on user update → update user in Keycloak realm
- Trigger on user deletion → delete user in Keycloak realm

---

<div class="post-metadata">

**Author:** ![jonbendtsen](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/977dab/32.png) [@jonbendtsen](https://www.dolibarr.org/forum/u/jonbendtsen)\
**Post date:** [December 10, 2024, 5:10pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/5 "2024-12-10T17:10:40Z")

</div>

@Adriendtz which dolibarr version?

---

<div class="post-metadata">

**Author:** ![jonbendtsen](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/977dab/32.png) [@jonbendtsen](https://www.dolibarr.org/forum/u/jonbendtsen)\
**Post date:** [December 10, 2024, 5:11pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/6 "2024-12-10T17:11:04Z")

</div>

> [@Tetras-Libre-Anthony](#):
>
> I have sucessed to connect Keycloak to Dolibarr

in which dolibarr version?

---

<div class="post-metadata">

**Author:** ![Tetras-Libre-Anthony](https://www.dolibarr.org/forum/user_avatar/www.dolibarr.org/tetras-libre-anthony/32/8121_2.png) [@Tetras-Libre-Anthony](https://www.dolibarr.org/forum/u/Tetras-Libre-Anthony)\
**Post date:** [December 10, 2024, 7:28pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/7 "2024-12-10T19:28:25Z")

</div>

Dolibarr 19.0.3.

I use it with multicompany module activated.  
To perform that I have tweak a bit the function\_open\_id\_connect in core.

We forget to send it upstream, but we are not sure if it’s working in any scenario

Note : How can I publish a link to a Github Commit ?

---

<div class="post-metadata">

**Author:** ![jonbendtsen](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/977dab/32.png) [@jonbendtsen](https://www.dolibarr.org/forum/u/jonbendtsen)\
**Post date:** [December 11, 2024, 6:24pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/8 "2024-12-11T18:24:22Z")

</div>

> [@Tetras-Libre-Anthony](#):
>
> Note : How can I publish a link to a Github Commit ?

I’d say that you just find the commit on github, copy the URL and then post that?

---

<div class="post-metadata">

**Author:** ![Tetras-Libre-Anthony](https://www.dolibarr.org/forum/user_avatar/www.dolibarr.org/tetras-libre-anthony/32/8121_2.png) [@Tetras-Libre-Anthony](https://www.dolibarr.org/forum/u/Tetras-Libre-Anthony)\
**Post date:** [December 11, 2024, 6:41pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/9 "2024-12-11T18:41:02Z")

</div>

Weird, yesterday I tried just to copy and paste my link and it was not working.

Anymay :

> **[Comparing Dolibarr:develop...Tetras-Libre:ffcu-19 · Dolibarr/dolibarr](https://github.com/Dolibarr/dolibarr/compare/develop...Tetras-Libre:dolibarr:ffcu-19)**
>
> Dolibarr ERP CRM is a modern software package to manage your company or foundation's activity (contacts, suppliers, invoices, orders, stocks, agenda, accounting, ...). it's an open source W...

---

<div class="post-metadata">

**Author:** ![jonbendtsen](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/977dab/32.png) [@jonbendtsen](https://www.dolibarr.org/forum/u/jonbendtsen)\
**Post date:** [December 12, 2024, 4:41pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/10 "2024-12-12T16:41:07Z")

</div>

thanks @Tetras-Libre-Anthony, have you created a merge request with this?

---

<div class="post-metadata">

**Author:** ![Thulkash](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@Thulkash](https://www.dolibarr.org/forum/u/Thulkash)\
**Post date:** [December 23, 2024, 10:35pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/11 "2024-12-23T22:35:32Z")

</div>

Hi,  
Did you succeed to make it work with Authentik?

---

<div class="post-metadata">

**Author:** ![sheldonbernstein](https://www.dolibarr.org/forum/user_avatar/www.dolibarr.org/sheldonbernstein/32/8031_2.png) [@sheldonbernstein](https://www.dolibarr.org/forum/u/sheldonbernstein)\
**Post date:** [January 17, 2025, 5:48pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/12 "2025-01-17T17:48:15Z")

</div>

How is the module coming along?

---

<div class="post-metadata">

**Author:** ![jafernandez.martin](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/b4bc9f/32.png) [@jafernandez.martin](https://www.dolibarr.org/forum/u/jafernandez.martin)\
**Post date:** [February 4, 2025, 10:54am UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/13 "2025-02-04T10:54:10Z")

</div>

Did you get the authentication to work?

Recently, I got this integration successfully in version 19.0.3

---

<div class="post-metadata">

**Author:** ![sheldonbernstein](https://www.dolibarr.org/forum/user_avatar/www.dolibarr.org/sheldonbernstein/32/8031_2.png) [@sheldonbernstein](https://www.dolibarr.org/forum/u/sheldonbernstein)\
**Post date:** [February 5, 2025, 8:09pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/14 "2025-02-05T20:09:27Z")

</div>

Hi all, can you share how you got it working?

---

<div class="post-metadata">

**Author:** ![jafernandez.martin](https://www.dolibarr.org/forum/letter_avatar_proxy/v4/letter/j/b4bc9f/32.png) [@jafernandez.martin](https://www.dolibarr.org/forum/u/jafernandez.martin)\
**Post date:** [February 20, 2025, 10:37pm UTC](https://www.dolibarr.org/forum/t/add-openid-authentication-via-keycloak/25396/16 "2025-02-20T22:37:22Z")

</div>

Sorry I’m late.

You need to set the expected authentication in config/conf.php:

```auto
$dolibarr_main_authentication='openid_connect,dolibarr'

```

Add the following global variables in Home \> Setup \> Others:

```auto
MAIN_AUTHENTICATION_OIDC_CLIENT_ID:
your-keycloack-client-id

MAIN_AUTHENTICATION_OIDC_CLIENT_SECRET
your client secret

MAIN_AUTHENTICATION_OIDC_LOGIN_CLAIM (I had to add it because in my version the matching is done through the user name instead of the email address)	
preferred_username

MAIN_AUTHENTICATION_OIDC_REDIRECT_URL	
https://your-dolibarr-url-web/?openid_mode=true

MAIN_AUTHENTICATION_OIDC_TOKEN_URL
https://your-keycloack-url/auth/realms/your-keycloack-realm/protocol/openid-connect/token

MAIN_AUTHENTICATION_OIDC_USERINFO_URL	
https://your-keycloack-url/auth/realms/your-keycloack-realm/protocol/openid-connect/userinfo

MAIN_AUTHENTICATION_OPENID_URL	
https://your-keycloack-url/auth/realms/your-keycloack-realm/protocol/openid-connect/auth/?client_id=your-keycloack-client-id&redirect_uri=https%3A%2F%2Fyour-dolibarr-url-web%2F%3Fopenid_mode%3Dtrue&scope=openid+profile+email&response_type=code&tz=1

MAIN_LOGOUT_GOTO_URL	
https://your-keycloack-url/auth/realms/your-keycloack-realm/protocol/openid-connect/logout?client_id=your-keycloack-client-id&post_logout_redirect_uri=https%3A%2F%2Fyour-dolibarr-url-web

```

I guess, that the Keycloack part is well configured.

You will have to create a user in keycloack whose username matches the username in Dolibarr.

PD: My dolibarr runs on Apache (Nginx was giving me problems)

Let me know your feedback.
