KQMATH / moodle-mod_capquiz

:mushroom: Computer adaptive practice activity module for Moodle
https://moodle.org/plugins/mod_capquiz
GNU General Public License v3.0
4 stars 5 forks source link

GDPR compliance. #76

Closed hgeorgsch closed 5 years ago

hgeorgsch commented 6 years ago

Employ the Privacy document and assess privacy compliance. Address the issue in README/doc's.

skrede commented 6 years ago

I'm not familiar with GDPR other than it exists and govern privacy, but the little I've picked up, shouldn't this be an issue within Moodle itself?

The only information about the user that Capquiz accumulate is answers for questions and an overall rating on how well they are answered. It's not using any cookies, except the ones Moodle is using without Capquiz being aware.

The information Capquiz gathers, question results and rating, is available in the database, and this might be further processed and used by the Moodle host / provider, it is really the service provider that must be compliant.

Looking at the bigger picture, it would be cumbersome for every plugin to implement a dialog gathering permissions / acknowledgements on how the information is used.

Quizzes and questionaires are at the core of Moodle, and as such, and I think it should be Moodle itself that must provide compliance.

TL;DR https://expresswriters.com/tldr-what-is-gdpr/

andstor commented 6 years ago

Moodle solves most of the GDPR compliancy within the Moodle core itself. However, all 3rd party plugins have to implement the Privacy API. It is therefore up to the plugin developer(s) to implement this API correctly. This also applies if the plugin doesn't store any user data. When the implementation is done correctly, Moodle provides the necessary tools for ensuring GDPR compliance. This is mainly the ability to read all personal stored user data, and also being able to delete it.

To my understanding, if the plugin creates any new DB tables/fields and they do contain anything that can be classified as user specific data, these should be handled with the correct implementation of the Privacy API.

The definition of user specific data is, however, a bit ambiguous. It is therefore, to some degree, up to the plugin developer(s) to define what user specific data means to the specific plugin. It does though seem to be quite strict. An example taken from the Privacy API is: "any free text field which allows the user to enter information must be considered to be the, personal data of that user".

It is the decision (among other things) on what is considered personal user data, that should be further discussed.

skrede commented 6 years ago

Aah, I should probably have done some research first :)

danmarsden commented 5 years ago

Please note - Moodle's core unit tests fail when a plugin is installed that does not comply with the privacy api so organisations that rely on Continuous Integration to deploy their site will also not be able to use your plugin until this is fixed.

This is not currently a blocker for approval in the plugins db - but in 6 months time this policy may change and if you have not managed to get your plugin approved by then, you may be required to implement it prior to approval.

sebastsg commented 5 years ago

This should be solved now. Tested with the export/delete scripts provided by Moodle docs, and also via the frontend by making requests.

No unit tests are made yet, however.