Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-61901

Require user to log in before being allowed to download the exported data

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 3.3.5, 3.4.2, 3.5
    • Fix Version/s: 3.3.6, 3.4.3, 3.5
    • Component/s: Privacy
    • Labels:
    • Testing Instructions:
      Hide
      Prerequisites:
      1. Outgoing mail server setup (using Mailcatcher would be alright).
      2. Setup Parent role. In addition to the other capabilities, set "tool/dataprivacy:makedatarequestsforchildren" to allow.
      3. Create users p1, s1, s2.
      4. Assign p1 as the parent of s1.
      Test
      1. Login as s2.
      2. Go to your profile page and create a data request to export your user data.
      3. Login as p1.
      4. Go to your profile page and create a data request on behalf of s1.
      5. Run cron: php admin/cli/cron.php
      6. Login as admin (or a user with a DPO role if it's already set up)
      7. Approve the data requests for s1 and s2
      8. Run cron again.
      9. Check the email you received for s1.
      10. Copy the Download link.
      11. Open a different browser (or use incognito mode).
      12. Paste the download link into your browser.
      13. Confirm that you are being asked to log in.
      14. Log in as s2.
      15. Confirm that you get an error that you don't have the capability to download s1's data.
      16. Log out.
      17. Paste the download link again on your browser, but this time, log in as s1.
      18. Confirm that you are able to download the exported user data archive.
      19. Log out.
      20. Paste the download link again on your browser, but this time, log in as s1.
      21. Confirm that you are able to download the exported user data archive for s1.
      22. Check the email for s2 and copy the download link.
      23. Still logged in as p1, paste the download link into your browser.
      24. Confirm that you get an error that you don't have the capability to download s2's data.
      Show
      Prerequisites: Outgoing mail server setup (using Mailcatcher would be alright). Setup Parent role . In addition to the other capabilities, set " tool/dataprivacy:makedatarequestsforchildren " to allow. Create users p1, s1, s2. Assign p1 as the parent of s1. Test Login as s2. Go to your profile page and create a data request to export your user data. Login as p1. Go to your profile page and create a data request on behalf of s1. Run cron: php admin/cli/cron.php Login as admin (or a user with a DPO role if it's already set up) Approve the data requests for s1 and s2 Run cron again. Check the email you received for s1. Copy the Download link. Open a different browser (or use incognito mode). Paste the download link into your browser. Confirm that you are being asked to log in. Log in as s2. Confirm that you get an error that you don't have the capability to download s1's data. Log out. Paste the download link again on your browser, but this time, log in as s1. Confirm that you are able to download the exported user data archive. Log out. Paste the download link again on your browser, but this time, log in as s1. Confirm that you are able to download the exported user data archive for s1. Check the email for s2 and copy the download link. Still logged in as p1, paste the download link into your browser. Confirm that you get an error that you don't have the capability to download s2's data.
    • Affected Branches:
      MOODLE_33_STABLE, MOODLE_34_STABLE, MOODLE_35_STABLE
    • Fixed Branches:
      MOODLE_33_STABLE, MOODLE_34_STABLE, MOODLE_35_STABLE
    • Pull Master Branch:
      MDL-61901-master

      Description

      tool_dataprivacy_pluginfile() currently does not validate the user downloading an exported user data archive. So anyone who's got the download link will be able to download the user's data. We need to fix this.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                jpataleta Jun Pataleta
                Reporter:
                jpataleta Jun Pataleta
                Peer reviewer:
                Frédéric Massart
                Participants:
                Component watchers:
                Andrew Nicols, Mathew May, Michael Hawkins, Shamim Rezaie, Simey Lameze
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Fix Release Date:
                  17/May/18