OAuth2-Token wegen PostgreSQL nicht möglich?

Allgemein Fragen, deutsche News, Ankündigungen & Events zum OTRS
Post Reply
SIGjo
Znuny newbie
Posts: 19
Joined: 06 Apr 2016, 16:00
Znuny Version: 6.4.2
Real Name: Johannes

OAuth2-Token wegen PostgreSQL nicht möglich?

Post by SIGjo »

Tach zusammen,

ich bin aktuell dabei unsere bisherige OTRS 6 CE -Installation auf Znuny umzustellen und habe bereits einige Hürden hinter mir.

Alle Tickets sind vorhanden, FAQs funktionieren usw. Nur OAuth2 macht mir einige Probleme.

Ich bin soweit, dass ich die Schaltfläche "Neues Token anfordern" betätigen kann und ich werde auf die interne Seite https://FQDN/otrs/get-oauth2-token-by-a ... e.pl?code=..... umgeleitet.

Und dann kommt das:
2022-09-07 10_04_16-Fehler - AdminOAuth2TokenManagement - Znuny - Geschäftlich – Microsoft​ Edge.png
In der error.log springt mich jetzt folgendes an:
2022-09-07 10_07_17-var_log_apache2.png
Message: ERROR: value too long for type character varying(2000), SQL: 'UPDATE oauth2_token SET change_by = ?, change_time = '2022-09-07 09:54:19', refresh_token = ?, token = ?, token_expiration_date = ? WHERE id = ?'

Heißt für mich, dass das Token nicht in der DB gespeichert werden kann?

Kann ich das Thema mit PostgreSQL komplett vergessen?
You do not have the required permissions to view the files attached to this post.
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by root »

SIGjo wrote: 07 Sep 2022, 10:19 Kann ich das Thema mit PostgreSQL komplett vergessen?
Hi,

nein, Hilfe ist unterwegs. Ich suche schon nach einer Lösung

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by root »

SIGjo wrote: 07 Sep 2022, 10:19 Heißt für mich, dass das Token nicht in der DB gespeichert werden kann?
Hi,

also aktuell nicht, aber mit dieser Änderung am Datenbankschema:

Code: Select all

ALTER TABLE oauth2_token ALTER  COLUMN token TYPE  VARCHAR(8192);
ALTER TABLE oauth2_token ALTER  COLUMN refresh_token TYPE  VARCHAR(8192);
Ich erstelle dazu noch ein Issue auf GitHub

EDIT: https://github.com/znuny/Znuny/issues/289

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
SIGjo
Znuny newbie
Posts: 19
Joined: 06 Apr 2016, 16:00
Znuny Version: 6.4.2
Real Name: Johannes

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by SIGjo »

Wow! Vielen Dank für die sehr schnelle Hilfe.

Jetzt komme ich definitiv einen Schritt weiter - beim Anfordern kommt jetzt eine andere Fehlermeldung :lol:

Message: Error requesting token for token config ID 2 with authorization code '....': invalid_grant.

Denke aber, da muss ich die App nochmal komplett neu anlegen.
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by root »

SIGjo wrote: 07 Sep 2022, 16:50
Message: Error requesting token for token config ID 2 with authorization code '....': invalid_grant.

Denke aber, da muss ich die App nochmal komplett neu anlegen.
Hi,

Ja, das dürfte helfen. Schau mal in die DB mit SELECT * FROM oauth2_token, da steht ggf. mehr zu dem Fehler. Ich habe eine Anpassung der Fehleranzeige auch schon angetriggert.
Vermutlich sind die Permission der App nicht passend/ausreichend. Ich nehme für den Mailabruf (ja, die Token kann man ab der 6.4.3 auch anders nutzen) diese Permissions:
Screen Shot 2022-09-07 at 5.17.17 PM.png
- Roy
You do not have the required permissions to view the files attached to this post.
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
SIGjo
Znuny newbie
Posts: 19
Joined: 06 Apr 2016, 16:00
Znuny Version: 6.4.2
Real Name: Johannes

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by SIGjo »

Guten Morgen,

in der Datenbank ist eine deutlich aussagekräftigere Fehlermeldung zu sehen:

AADSTS54005: OAuth2 Authorization code was already redeemed, please retry with a new valid code or use an existing refresh token.

Bei den ersten Versuchen wurde also erfolgreich ein Token angefordert, aber konnte wegen der maximal 2000 Zeichen im Feld nicht abgespeichert. Jetzt wird gemeckert, dass man doch bitte das Refresh-Token nehmen soll - was ja nicht in der der DB vorhanden ist.

-> Neuanlage, dann sollte es passen. Ich bin gespannt! 8)
root
Administrator
Posts: 3934
Joined: 18 Dec 2007, 12:23
Znuny Version: Znuny and Znuny LTS
Real Name: Roy Kaldung
Company: Znuny
Contact:

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by root »

SIGjo wrote: 08 Sep 2022, 07:57 in der Datenbank ist eine deutlich aussagekräftigere Fehlermeldung zu sehen:

AADSTS54005: OAuth2 Authorization code was already redeemed, please retry with a new valid code or use an existing refresh token.
Hi,

das wird demnächst such angezeigt, wie gestern schon geschrieben.
SIGjo wrote: 08 Sep 2022, 07:57 -> Neuanlage, dann sollte es passen. Ich bin gespannt! 8)
Das hat bei mir i.d.R> so gut wie immer geholfen.

- Roy
Znuny and Znuny LTS running on CentOS / RHEL / Debian / SLES / MySQL / PostgreSQL / Oracle / OpenLDAP / Active Directory / SSO

Use a test system - always.

Do you need professional services? Check out https://www.znuny.com/

Do you want to contribute or want to know where it goes ?
SIGjo
Znuny newbie
Posts: 19
Joined: 06 Apr 2016, 16:00
Znuny Version: 6.4.2
Real Name: Johannes

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by SIGjo »

Dann melde ich mich doch nochmal in einem Erfolg zurück! Ich habe die App nochmal neu angelegt und schon bekomme ich das Token!



Für die Nachwelt noch ein paar Infos und Bildchen:

- Reply-URL (Umleitungs-URL) muss in der App auf https://znuny.interne.domain/otrs/get-o ... on-code.pl gesetzt werden (FQDN-Wert aus System-Konfig)
- Unterstützte Kontotypen wurde auf "Konten in einem beliebigen Organisationsverzeichnis..." gesetzt (alternativ das Spielchen mit Token-Export/Import und URL-Anpassung)
umleitungs-url.png
- Innerhalb Znuny/OTRS wurde als Token-Konfiguration "Microsoft Outlook (organization)" gewählt.

Dort muss nur die Client-ID (in Azure-AD "Anwendungs-ID (Client)") und Client-Secret (in Azure-AD unter "Clientanmeldeinformationen" anlegen) eingegeben werden.


Beim ersten Klick auf "Token anfordern" erscheint folgendes Fenster:
erste-anforderung.png
Innerhalb der App sind dann folgende "API-Berechtigungen" automatisch gesetzt:
api-berechtigungen.png
//EDIT:
Zu früh gefreut.

Message: Error while retrieving the messages 'IMAPS': Could not select:

//EDIT2:
In einem anderen Thread wurde erwähnt, dass der Nutzer, welcher das Token innerhalb Znuny/OTRS anlegt auch Vollzugriff auf das Postfach benötigt. Vollzugriff hinterlegt -> Mailabruf funktioniert! :shock:

Jetzt gilt es nur noch das Token nochmals anzulegen.... aber mit dem Nutzer des Postfachs. Schöne Herausforderung mit Single-Sign-On und Co 8)
You do not have the required permissions to view the files attached to this post.
SIGjo
Znuny newbie
Posts: 19
Joined: 06 Apr 2016, 16:00
Znuny Version: 6.4.2
Real Name: Johannes

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by SIGjo »

So - ich habe jetzt alle meine Postmaster-Konten auf OAuth2.0 umgestellt und alles funktioniert soweit. Mich nervt nur das im letzten Post erwähnte "Problem", dass ich meinem persönlichen Nutzer, unter welchem die Anwendung registriert wurde, Vollzugriff auf die Postfächer geben muss.

Geht das nicht irgendwie eleganter?
Johannes
Moderator
Posts: 391
Joined: 30 Jan 2008, 02:26
Znuny Version: All of them ^^
Real Name: Hannes
Company: Znuny|OTTERHUB

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by Johannes »

Hi,

na klar.
Du musst ja nur einen anderen User zur Freigabe des Zugriffs nehmen, der dann auch Zugang auf die Postfächer hat.
Das passiert dann ja in dem Moment in dem Du den Token anforderst.
Wenn dein Browser einen Wechsel nicht zulässt, dann musst du ein "Privates" Fenster nutzen.

Gruß
SIGjo
Znuny newbie
Posts: 19
Joined: 06 Apr 2016, 16:00
Znuny Version: 6.4.2
Real Name: Johannes

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by SIGjo »

Tach,

genau das hatte ich schon probiert. Nachdem ich das Konto eingegeben habe kommt noch ein separates Fenster mit "Administratorgenehmigung nötig" oder sowas. Da gebe ich dann eben meinen Nutzer zur Genehmigung ein, aber dann läuft alles wieder unter meinem Nutzer.

Kann man diese Berechtigungen usw. nicht irgendwie auch in Znuny/AzureAD direkt anpassen?
Johannes
Moderator
Posts: 391
Joined: 30 Jan 2008, 02:26
Znuny Version: All of them ^^
Real Name: Hannes
Company: Znuny|OTTERHUB

Re: OAuth2-Token wegen PostgreSQL nicht möglich?

Post by Johannes »

Hi,

das liegt sehr wahrscheinlich an deinen Domänen Settings.
Je nach Konfiguration auf der Azure Seite, muss dort ein Admin zustimmen.
Screenshot_azure.png 2022-10-04 11-09-27.png
Aber eben im Portal. Wenn Du Admin bist und deinen Account nimmst, fragt er nicht weil Du schon Admin bist.

Danach werden die Token auch geholt ohne das Du deinen Account nutzen musst.
Das können wir auch nicht in Znuny selbst lösen, da es nicht in unserer "Sphäre" passiert.
You do not have the required permissions to view the files attached to this post.
Post Reply