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

API for browser extensions? #25

Closed
dmarti opened this issue Jan 27, 2022 · 4 comments
Closed

API for browser extensions? #25

dmarti opened this issue Jan 27, 2022 · 4 comments

Comments

@dmarti
Copy link
Contributor

dmarti commented Jan 27, 2022

As a browser user, I might choose to install an extension that will

  • add a topic to my top 5 topics
  • remove a topic from my local topic information store, if that topic is present (otherwise do nothing)

It looks like the extension API should prevent extensions from seeing the user's topics or deducing any information about them, to limit incentives to submit malicious extensions.

Related: #78

@jkarlin
Copy link
Collaborator

jkarlin commented Jun 5, 2023

Thanks for the question. In terms of disabling topics, that's certainly possible with extensions. In terms of modifying topics via javascript, that's something extensions (save for manifest v3) have the capability to do since they can inject arbitrary script. Which means that topics returned via js may have been modified by an extension (or some other script on the document). Topics sent via request headers are unmodified (due to the sec- prefix) so those should be preferred.

@jkarlin jkarlin closed this as completed Jun 5, 2023
@dmarti
Copy link
Contributor Author

dmarti commented Jun 9, 2023

Preferred by who? Why enable users to filter topics passed by one method but not another?

@jkarlin
Copy link
Collaborator

jkarlin commented Jun 22, 2023

It's not that we're "enabling" it in the javascript case, it's that javascript isn't 100% trustworthy when there are extensions involved.

@dmarti
Copy link
Contributor Author

dmarti commented Jun 22, 2023

A user would want to be able to use a trusted extension to filter topics (as they can do with cookie manager extensions), but would not want an untrusted extension to modify topics to track them.

But an untrusted extension could modify other headers to conceal a tracking identifier, so just preventing extensions from modifying topics doesn't seem like it provides any extra protection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants