quarto-dev / quarto-dev/quarto-cli

Embedded YouTube video probably not GDPR compliant

Open
#8,212 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug video
Dominant language
JavaScript
Stars
6k
Forks
458
Avg merge
1d 9h
Merged PRs (30d)
41

Description

Bug description

I embedded a YouTube video on a website using the following code:

{{< video https://www.youtube.com/embed/bRFHyI6hnNk >}}

I also set the cookie-consent policy in _quarto.yml to the most restrictive level:

website:
    cookie-consent:
        type: express

What I then discovered was that it was possible to interact with the YouTube video even if I had not consented to non-essential cookies. As I understand the situation, YouTube will process my personal data as soon as I interact with the embedded video (see for example https://axbom.com/embed-youtube-videos-without-cookies/). If the cookie-consent type is set to "express" I don't think that this should be possible, unless I have explicitly given the consent.

Steps to reproduce

See the bug description above.

Expected behavior

If the cookie consent-type for the website is set to "express", the user should not be able to interact directly with the embedded YouTube video, unless first accepting YouTube's terms and conditions.

Actual behavior

A user can interact with the embedded YouTube video even if all cookie types except "strictly necessary cookies" are set to "Inactive".

Your environment
  • MacOS Sonoma 14.2
  • Safari 17.2.1
Quarto check output
[✓] Checking versions of quarto binary dependencies...
      Pandoc version 3.1.1: OK
      Dart Sass version 1.55.0: OK
[✓] Checking versions of quarto dependencies......OK
[✓] Checking Quarto installation......OK
      Version: 1.3.450
      Path: /Applications/quarto/bin

[✓] Checking basic markdown render....OK

[✓] Checking Python 3 installation....OK
      Version: 3.10.12 (Conda)
      Path: /opt/homebrew/Caskroom/miniforge/base/bin/python
      Jupyter: (None)

      Jupyter is not available in this Python installation.
      Install with conda install jupyter

[✓] Checking R installation...........OK
      Version: 4.3.2
      Path: /Library/Frameworks/R.framework/Resources
      LibPaths:
        - /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library
      knitr: 1.45
      rmarkdown: 2.25

[✓] Checking Knitr engine render......OK

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the embedded video from the issue using the shortcode and the cookie-consent setting in _quarto.yml, with non-essential cookies inactive. Check whether the video remains interactive before consent. Done means an express-consent site prevents direct YouTube interaction until the user accepts the relevant terms.

Written by the indexing model from the issue text.

Assessment

Domain
security, web-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.