Univention Bugzilla – Bug 56335
Self-Service forwarding to Primary doesn't work
Last modified: 2024-02-23 13:48:27 CET
Since UCS 5.0-4 the forwarding of self-service requests from DC Backups to DC Primary doesn't work anymore due to a error in the matched request path. The requests from DC backup to DC Primary are done with the URL: "/univention/command//univention/command/"…. ==> /var/log/apache2/access.log <== 10.0.215.100 - - [18/Jul/2023:15:40:35 +0200] "POST /univention/command//univention/command/passwordreset/get_user_attributes_descriptions HTTP/1.1" 403 4569 "-" "UCS/5.0 (univention.lib.umc/4-errata726)" The symtpoms are error messages with HTTP 403 Forbidden errors saying: { "status": 403, "message": "Es wurde kein Modul für diese Anfrage gefunden.", } Patch: --- /usr/lib/python3/dist-packages/univention/management/console/modserver.py 2023-07-18 15:57:01.761613961 +0200 +++ /usr/lib/python3/dist-packages/univention/management/console/modserver.pyfixed 2023-07-18 15:56:46.829549015 +0200 @@ -130,7 +130,7 @@ routes = self.__handler.tornado_routes if self.__handler else [] application = Application(routes + [ (r'/exit', Exit), - (r'(.*)', Handler, {'server': self, 'handler': self.__handler}), + (r'/univention/(?:command|upload)/(.*)', Handler, {'server': self, 'handler': self.__handler}), ], serve_traceback=ucr.is_true('umc/http/show_tracebacks', True)) signal.signal(signal.SIGALRM, self.signal_handler_alarm)
The whole request path was part of request.arguments[0] which is used here: management/univention-self-service/umc/python/passwordreset/__init__.py 100 client = Client(SELFSERVICE_MASTER, language=language) 101 client.authenticate_with_machine_account() 102 response = client.umc_command(request.arguments[0], request.options)
Reported in Forum: https://help.univention.com/t/problem-with-self-service-after-update-5-0-4/21677
Patch applied. univention-management-console.yaml 607496b76420 | fix(umc-modules): fix HTTP path in request.arguments univention-management-console (12.0.31-8) 607496b76420 | fix(umc-modules): fix HTTP path in request.arguments
QA: request paths are fixed: OK advisories: OK no related traceback/errors in logfiles: OK
<https://errata.software-univention.de/#/?erratum=5.0x742>