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

Redirect opt-out per website #633

Closed
swedneck opened this issue Dec 6, 2018 · 9 comments · Fixed by #687
Closed

Redirect opt-out per website #633

swedneck opened this issue Dec 6, 2018 · 9 comments · Fixed by #687
Assignees
Labels
exp/novice Someone with a little familiarity can pick up kind/enhancement A net-new feature or improvement to an existing feature

Comments

@swedneck
Copy link

swedneck commented Dec 6, 2018

When using things such as riot (matrix client) that rely on the domain to separate logins it gets very annoying to have to turn off ipfs-companion to avoid redirection to the local gateway (which would cause riot to use a completely different account than when it's served from the intitial domain).
It would be nice to be able to blacklist certain domains from being redirected to the local gateway.

@lidel lidel added kind/enhancement A net-new feature or improvement to an existing feature UX labels Dec 7, 2018
@lidel
Copy link
Member

lidel commented Dec 7, 2018

This sounds useful and easy to add.
Would appreciate some feedback:

  • What would be the intuitive UI for adding a website to redirect opt-out list?
    • A list of hostnames on Preferences screen?
    • A button in browser action?
    • How to name this feature? ("Redirect opt-out"?)

@lidel lidel added help wanted Seeking public contribution on this issue exp/novice Someone with a little familiarity can pick up labels Dec 7, 2018
@swedneck
Copy link
Author

swedneck commented Dec 7, 2018

I think the preferences screen is suitable, and maybe "Gateway redirect blacklist"?

Maybe while you're at it add an option for whitelist as well? The user would then have radio buttons for choosing between "Filter: None, Blacklist, Whitelist".

@fiatjaf
Copy link

fiatjaf commented Dec 7, 2018

I think a button in the popup saying "Don't use local gateway" that when toggled adds a line to a textarea in the Preferences screen. i think this is somewhat like what uBlock Origin does.

@lidel lidel added the status/ready Ready to be worked label Dec 13, 2018
@da2x
Copy link

da2x commented Jan 3, 2019

When IPFS times out, the user should be prompted to temporarily disable it for the current domain (24 hours?) and be redirected back to the web version.

@da2x
Copy link

da2x commented Jan 3, 2019

Some websites should possibly be on the blacklist by default …

  • *.neocities.org (public; but their nodes have been broken since 2017-11; hosts large number of websites)
  • *.shiftproject.com (private network; source)
  • *.mrh.io (private network; source)

@lidel
Copy link
Member

lidel commented Jan 20, 2019

Privacy Badger as a prior art:

2019-01-20--23-01-17

I think the second button is quite valuable. We could enable it on Beta channel only, and make it open https://github.com/ipfs/ipfs-companion/issues/new with site URL pre-filled in description.

@lidel
Copy link
Member

lidel commented Jan 25, 2019

Note to self:

  • As noted in Add an indicator to show that resources have been loaded over IPFS #662, subresources are easy to detect, and can be linked to specific "parent URL". We can apply rules of the root document to all sub-resources, even if those are loaded from different Origins. For example, if we disable redirect for d.tube, it should be disabled for d.tube but also iframes loaded from emb.d.tube and third party hostnames foo.bar.buzz.tld, solving the problem of "breaking DTube".

  • Research how feasible is an experiment to make global exception for image, audio and video sub-resources by looking at ResourceType

@lidel lidel pinned this issue Feb 7, 2019
@lidel lidel changed the title Feature request: option to blacklist domains from being redirected to gateway Redirect opt-out per website Feb 7, 2019
@lidel lidel added status/in-progress In progress and removed status/ready Ready to be worked labels Feb 15, 2019
@lidel lidel self-assigned this Feb 15, 2019
@lidel lidel removed the help wanted Seeking public contribution on this issue label Feb 15, 2019
@lidel lidel mentioned this issue Feb 20, 2019
6 tasks
@lidel
Copy link
Member

lidel commented Feb 20, 2019

WIP in #687 – just pushed the first stab at UX, would appreciate feedback, thanks!

@lidel lidel closed this as completed in #687 Mar 5, 2019
@ghost ghost removed the status/in-progress In progress label Mar 5, 2019
@lidel
Copy link
Member

lidel commented Mar 5, 2019

Ready for testing: v2.7.5.748 (Beta)

@lidel lidel unpinned this issue Mar 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
exp/novice Someone with a little familiarity can pick up kind/enhancement A net-new feature or improvement to an existing feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants