Es wäre schön, wenn man sich mit dem Codeberg Account auch bei uns gleich anmelden könnte.
Denn dieser würde auch für unsere Weblate-Seite gehen gehen
Registrierung mit Codeberg/Gitea (OAuth2) ermöglichen #152
Oftmals wird eine http://www.passportjs.org/ Strategie in Express.js genutzt.
Und das würde konkret...?
Passport.js ist eine Bibliothek, die verschiedene Auth-Strategien implementiert. Somit muss das Rad nicht neu erfunden werden.
Ich denke hier etwa an http://www.passportjs.org/packages/passport-oauth2/ sofern Codeberg OAuth anbietet.
Codeberg beruht auf Gitea, wird also https://docs.gitea.io/en-us/oauth2-provider/ gelten...
Bestätigt.
https://codeberg.org/.well-known/openid-configuration ist zumindest valide, was auf die anderen hoffen lässt.
Wäre wohl angemessen, Codeberg e.V. ein FYI zukommen zu lassen, wenn dieses Ticket umgesetzt wird.
Spannend könnte auch noch Integration von LTI sein, um die Lerntools in Moodle einzubinden:
https://cvmcosta.me/ltijs/#/
Codeberg beruht auf Gitea, wird also https://docs.gitea.io/en-us/oauth2-provider/ gelten...
Bin beim Gitea-Soft-Fork namens Forgejo involviert. Könnte sein, dass Codeberg dahin wechselt (dauert sicher aber noch einige Monate). Siehe auch Open Letter Updates. Hintergrund ist Gitea Ltd.
Spannend könnte auch noch Integration von LTI sein, um die Lerntools in Moodle einzubinden:
https://cvmcosta.me/ltijs/#/
Hättest du Lust da mal was zu basteln bzw. das weiter auszuarbeiten?
Codeberg beruht auf Gitea, wird also https://docs.gitea.io/en-us/oauth2-provider/ gelten...
Bin beim Gitea-Soft-Fork namens Forgejo involviert. Könnte sein, dass Codeberg dahin wechselt (dauert sicher aber noch einige Monate). Siehe auch Open Letter Updates. Hintergrund ist Gitea Ltd.
das heißt in Bezug darauf wäre dein Rat: Erstmal abwarten?
Japp.
Vielleicht eine Woche noch.
Wobei für OIDC-Integration brauchen wir eigentlich nicht auf Codeberg zu warten. Das sollte ja einstellbar sein, welche OIDC-Provider unterstützt werden sollen (können ja 0..N sein).
Der viel größerer Punkt ist hierbei die Berechtigungssteuerung. Die erfolgt ja weiterhin im Lerntools selbst und erfordert heute lokale Konten. Wer sich also anmeldet und keine Berechtigung hat - darf natürlich nichts tun dürfen. Auf der anderen Seite steht die Frage: soll dann automatisch ein "verknüpftes Konto" in Lerntools angelegt werden (Gefahr durch Flut an unberechtigten Kontos) oder muss jemand dennoch händisch die Mailadressen / Nutzerkonten anlegen, damit diese hinterher sofort greifen bei Login?
Das sind ernstgemeinte Fragen, über die wir uns im Klaren sein müssen, bevor überhaupt Hand im Code angelegt wird.
Händisch ist immer schlecht. Wie groß wäre die Gefahr der Flut an Konten, wenn sie bei Inaktivität eh gelöscht werden?
Bei Überflutung könnte man es ja wieder abschalten, oder?
Bei OIDC wird vom Provider ein Context übergeben, in dem zB. die Emailadresse, Gruppenzugehörigkeiten etc. mit übertragen wird. Ggf. müssen also die Namen dieser Variablen spezifiziert werden. Am Ende entscheidet aber immer der einzelne Lerntool-Hoster, welchen Provider er einbindet bzw. vertrauen kann.
Wobei für OIDC-Integration brauchen wir eigentlich nicht auf Codeberg zu warten. Das sollte ja einstellbar sein, welche OIDC-Provider unterstützt werden sollen (können ja 0..N sein).
Der viel größerer Punkt ist hierbei die Berechtigungssteuerung. Die erfolgt ja weiterhin im Lerntools selbst und erfordert heute lokale Konten. Wer sich also anmeldet und keine Berechtigung hat - darf natürlich nichts tun dürfen. Auf der anderen Seite steht die Frage: soll dann automatisch ein "verknüpftes Konto" in Lerntools angelegt werden (Gefahr durch Flut an unberechtigten Kontos) oder muss jemand dennoch händisch die Mailadressen / Nutzerkonten anlegen, damit diese hinterher sofort greifen bei Login?
Das sind ernstgemeinte Fragen, über die wir uns im Klaren sein müssen, bevor überhaupt Hand im Code angelegt wird.
The next Forgejo/Codeberg release might be interesting here:
No due date set.
No dependencies set.
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?