Feature Wiki

Information about planned and released features

Tabs

IRSS: Migrate HTML-Learning-Modules to ContainerResources

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

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]