Feature Wiki
Tabs
IRSS: Migrate HTML-Learning-Modules to ContainerResources
Page Overview
[Hide]1 Initial Problem
HTML learning modules are currently directories (files and folders) in the public data directory. The calls to this content must all pass through the WebAccessCecker and are generally also a popular attack vector for path traversal bugs. Furthermore, the management of HTML modules uses the now deprecated ilFileSystemGUI, which is to be removed with ILIAS 10.
2 Conceptual Summary
The contents of the learning modules are migrated to container resources in a migration on the data directory. The files will now be managed via the IRSS: Container-Resource User-interface, which has been accepted in the meantime. The files are now delivered via the Signed-Delivery mechanism.
3 User Interface Modifications
3.1 List of Affected Views
- Tab "List Files" in a HTML-Learning-Module
3.2 User Interface Details
3.3 New User Interface Concepts
No new concepts, see also IRSS: Container-Resource User-interface
3.4 Accessibility Implications
See IRSS: Container-Resource User-interface
4 Technical Information
For details of the services and functions used, see:
- Signed Delivery: https://github.com/ILIAS-eLearning/ILIAS/tree/trunk/components/ILIAS/FileDelivery#signed-delivery
- Migration: https://github.com/ILIAS-eLearning/ILIAS/blob/trunk/components/ILIAS/ResourceStorage/README.md#migration
- IRSS: Container-Storage
5 Privacy
No change to the data that is collected or processed. See also
6 Security
Files from learning modules are now delivered using the TokenDelivery mechanism, for details see:
A token URL to a learning module is valid for at least 8 hours.
7 Contact
- Author of the Request: Schmid, Fabian [fschmid]
- Maintainer:
- Implementation of the feature is done by: Schmid, Fabian [fschmid]
8 Funding
If you are interest in funding this feature, please add your name and institution to this list.
9 Discussion
10 Implementation
{ The maintainer has to give a description of the final implementation and add screenshots if possible. }
Test Cases
Test cases completed at {date} by {user}
- {Test case number linked to Testrail} : {test case title}
Privacy
Information in privacy.md of component: updated on {date} by {user} | no change required
Approval
Approved at {date} by {user}.
Last edited: 21. Mar 2024, 08:49, Schmid, Fabian [fschmid]