Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

transparency section #288

Merged
merged 5 commits into from
Sep 27, 2023
Merged

transparency section #288

merged 5 commits into from
Sep 27, 2023

Conversation

npdoty
Copy link
Collaborator

@npdoty npdoty commented Jun 27, 2023

addresses #263

principles for providing transparency, plain and machine-readable, distinguishable apis

citations to Adding Permissions guide, Unsanctioned Tracking, Fingerprinting

note with links to permissions workshops


Preview | Diff

@jyasskin jyasskin self-requested a review June 28, 2023 16:24
@darobin darobin self-requested a review June 28, 2023 16:24
@torgo torgo self-requested a review June 28, 2023 16:25
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated
Comment on lines 1926 to 1927
[=People=] should be provided relevant information when data is accessed or when permission is
requested.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels vague. Which people? What information is relevant? (That's covered below, but it'd be good if the principle could be read alone.) Should we interrupt people whenever a backend system touches their data?

I think we have a couple goals in this section:

  1. People should be made aware of (or be able to find out?) what actors have their data and how those actors use it.
  2. The above information should be in a form that allows people to automate their reactions to it.
  3. Researchers and regulators should be able to aggregate that information (in privacy-preserving ways) in order to analyze how data is used and abused across society.

Maybe the first one would be covered by:

Suggested change
[=People=] should be provided relevant information when data is accessed or when permission is
requested.
[=People=] should be able to find out which [=actors=] have their data and how they're using it.

On the permissions point, maybe there's something more general about UAs needing to inform users when they give out information about the user, which pushes for designing web APIs that avoid passive fingerprintability and that provide an opportunity to ask the user's permission before disclosing the information.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This text is broad (perhaps still too broad) in part because the intent is to go beyond discoverability about who has data about you, though that is good to call out separately as well.

Sites need to provide, and UAs may need to help present or consume, relevant information about data collection and use when collection is happening. Permissions is a special case of that where the APIs are easier to reason about, but sites also collect data in the course of navigation and in using HTML functionality (forms, etc.).

index.html Outdated
Transparency is a necessary, but insufficient, condition for [=consent=]. Relevant information
includes who may be accessing information, what information may be accessed (including the potential
inferences or combinations of such data) and how information may be used. For transparency to be
meaningful to people, it must be contextual.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does it mean for transparency to be contextual?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made it clear that it's the information that would be contextual, and instead described it as presenting the information in the relevant context (since context is a defined term). But this could still be clarified. And it may not be necessary for this document, even if it seems like generally good advice.

index.html Outdated
Comment on lines 1970 to 1804
Mechanisms that can be used for tracking or identifying [=people=] should be designed so that
their operation is visible and distinguishable, to [=user agents=], researchers and regulators.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a special case of the principles above that data use should be machine-readable? We should probably say that. Should this mention [=recognizing=] people?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If "recognizing" is our preferred defined term, that could just replace "tracking or identifying".

Machine-readable seems distinct to me from mechanisms that are detectable or visible in their operation. Machine-readable is explicit information marked up to provide semantics, while detectable/visible/distinguishable is just about API usage that can be analyzed.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed the terminology here in recent commit. But I'm still describing this distinctly from machine-readable (for the reasons above).

index.html Outdated Show resolved Hide resolved
@npdoty
Copy link
Collaborator Author

npdoty commented Jul 19, 2023

In a few cases here, the text uses passive voice, which was helpful in that it was broad, but reviewers point out that its vague.

I think what we typically mean is: sites should provide, and user agents should help present and consume, information to people

But there are some cases where it might go beyond that typical case. A user agent might collect or share information and should itself provide transparency. Other actors may collect or share information outside of the site-browser interaction. Should we exclude these from the scope of the document? Or just talk about the typical case at the top, and then add a sentence or two about other cases where different actors need to cooperate in providing transparency?

@npdoty
Copy link
Collaborator Author

npdoty commented Jul 19, 2023

Maybe "actors who are processing data (typically, sites) should provide, and user agents should help present and consume,"

@npdoty npdoty added the agenda+ Add to the next call's agenda. label Aug 1, 2023
index.html Outdated Show resolved Hide resolved
index.html Outdated
Comment on lines 1926 to 1927
When accessing data or requesting permission, [=sites=] (and other [=actors=]) should provide
[=people=] with relevant information about its use and [=user agents=] should help present and
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure exactly how to best fix this, but I stumbled over the pairing of "its use" with both "accessing data" and "requesting permission". We could make it "requesting permission to access data". Or "information about the site's plans" if the permission might also be about things like storing data. Or I'm not sure that "requesting permission" belongs here, since transparency is about what the sites do with the thing they got permission for.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tried to clarify this in recent commit, "with relevant explanatory information about the use of data".

index.html Outdated
</span>
</div>

Transparency is a necessary, but insufficient, condition for [=consent=]. Relevant information
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first two sentences in this paragraph don't seem to have much to do with each other.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Relevant explanatory information is an example of providing the transparency necessary for consent.

index.html Outdated
Comment on lines 1932 to 1933
Transparency is a necessary, but insufficient, condition for [=consent=]. Relevant information
includes who is accessing information, what information is accessed (including the potential
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here we have two different meanings of "information" in the same sentence. First the information/explanation that needs to be given to a user, and second the information whose use the user is being informed about.

Would it help to call this a "helpful explanation" instead of "relevant information"?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree that this was ambiguous over "information". Thinking about phrasing, but "relevant explanation", "explanatory text", something like that.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tried to disambiguate by talking about "relevant explanatory information" (and "explanatory information") and then "data" to describe the personal data that might be accessed. I think that also better aligns with the rest of the document.

index.html Outdated
Comment on lines 1934 to 1935
inferences or combinations of such data) and how information is used. For transparency to be
meaningful to people, information must be provided in the relevant [=context=].
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not completely clear whether the "information" that must be provided in context is 1) the information that gets accessed or 2) the "relevant information" that helps users make informed choices. Contexts are used in the rest of the document to provide principles about information use, which leans toward the first interpretation, but I think you mean the second.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clarified with "explanatory information".

index.html Outdated
Comment on lines 1927 to 1928
[=people=] with relevant information about its use and [=user agents=] should help present and
consume that information.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Browsers have historically shied away from showing a site's explanation of its permission request alongside the permission request, mostly because we can't guarantee that the site is telling the truth and don't want to endorse their claim. I'm worried that this principle is going to argue against that practice.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Help in presenting and consuming information doesn't require any particular UI about permissions requests. I think we're agreed that this wouldn't prohibit any current browser vendor preference about UI.

(Although, also, yes, browsers should change their practices to improve visibility of the site's explanation when permissions are being requested, as the current model of providing no context or explanation whatsoever has proved extremely ineffective.)

Comment on lines +1979 to +1811
user, which undermines user control [[?UNSANCTIONED-TRACKING]]. Designing features that minimize
data and make requests for data explicit can enable detectability, a kind of transparency that is an
important mitigation for <a>browser fingerprinting</a>.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Making the voice more active:

Suggested change
user, which undermines user control [[?UNSANCTIONED-TRACKING]]. Designing features that minimize
data and make requests for data explicit can enable detectability, a kind of transparency that is an
important mitigation for <a>browser fingerprinting</a>.
user, which undermines user control [[?UNSANCTIONED-TRACKING]]. When web features are designed
so that sites explicitly request the [[#data-minimization|minimal]] amount of data that they
need, they make sites' data use "detectable", a kind of transparency that helps
mitigate <a>browser fingerprinting</a>.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No strong preference, but the suggestion here seems to convert to passive voice, not active.

<div class="practice">
<span class="practicelab" id="transparency-distinguishable">
Mechanisms that can be used for [=recognize|recognizing=] [=people=] should be designed so that
their operation is visible and distinguishable, to [=user agents=], researchers and regulators.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
their operation is visible and distinguishable, to [=user agents=], researchers and regulators.
their operation is visible and distinguishable to [=user agents=], researchers, and regulators.

@jyasskin jyasskin requested a review from pes10k September 20, 2023 16:11
@jyasskin
Copy link
Collaborator

We'll merge this once @pes10k and @jyasskin have re-read the text and approved the PR.


Non-transparent methods of [=recognition=] are harmful in part because they are not visible to the
user, which undermines user control [[?UNSANCTIONED-TRACKING]]. Designing features that minimize
data and make requests for data explicit can enable detectability, a kind of transparency that is an
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i dont think its accurate that detectability is a mitigation for browser fingerprinting. Its often easy to detect when scripts are fingerprinting a user; but that doesn't mitigate / prevent the fingerprinting from happening

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Mitigating Browser Fingerprinting doc describes detectability as one mitigation, though clearly not a solution or prevention of fingerprinting altogether. If we want to come up with another word to describe something that can be a useful response to a problem without solving it, I'm open to that, but if so we should (also) file an issue on the fingerprinting-guidance.

Copy link
Collaborator

@pes10k pes10k left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left one substantive comment, but LGTM, and happy to address that in follow up too

npdoty and others added 5 commits September 27, 2023 08:52
principles for providing transparency, plain and machine-readable,
distinguishable apis

citations to Adding Permissions guide, Unsanctioned Tracking,
Fingerprinting

note with links to permissions workshops
(present participles of verbs not auto recognized)
Co-authored-by: Jeffrey Yasskin <[email protected]>
Copy link
Collaborator

@jyasskin jyasskin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could still improve this section's readability, but that doesn't need to block getting the concepts in.

@jyasskin jyasskin merged commit adf2101 into main Sep 27, 2023
1 check passed
@jyasskin jyasskin deleted the transparency branch September 27, 2023 18:23
@jyasskin jyasskin linked an issue Sep 27, 2023 that may be closed by this pull request
github-actions bot added a commit that referenced this pull request Sep 27, 2023
SHA: adf2101
Reason: push, by jyasskin

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
agenda+ Add to the next call's agenda.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

principle and additional context on transparency
4 participants