Open Bug 2036733 Opened 1 month ago Updated 26 days ago

Consider dealing with implicitly shared permissions between google.com and google.com/maps

Categories

(Core :: Privacy: Anti-Tracking, defect)

defect

Tracking

()

People

(Reporter: saschanaz, Unassigned)

References

Details

Google seems to ping geolocation permission silently since around April 2026:

https://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/ck=xjs.hd.JKCh_BIZCW4.L.W.O/am=AAABAgAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAIAABAAgACABliACABAAAAAAAEDoAAIADQAAAAAAAAAQAAAAQAgIAAAAIAAAAAAAACAAgAAAIAAAACAAAABgAEAAQAAREAAAgwIAAAAAAEAAAAAAAAAAAAAgAgAAABAAAP4BABgAAAAAhiQMAAIAAAAAhAELAACgAAAAAAQQAAAAAACAAAkSAEDAACAAAAABAAAAAAABAEIIAgIUQAAAACAAAAEAAAAAAAAAABAAAAAAQIAAQEAgBBAAAACAgAIEAAEAgQAEBACAETQAAIkAAQBA6AAAAAgBAAAEAAAAAAAAAAAAAABOAAACAQAAEAAfRBgBAEAAAAAAAB0AAg8YUlMAAAAAAAAAAAAAAAAAAAAAAAAQgADmQgIFARAAAAAAAAAAAAAAAAAAAAAAAAAAAAChTQEAAAAAABYD/d=0/dg=0/ujg=1/rs=ACT90oGWCntHIPUQNWQrfVnhYYVc4UAQ4w/m=syfc,sycq,syfb,sydo,syfa,syf9,syf8,syf5,syf3,syf1,syez,sybc,syb1,syb3,syb2,syb8,syar,syap,syf0,syey,syew,sydk,syev,syeu,syej,syes,sye9,sye0,sye1,syer,sycj,syeh,syeq,sye4,sye5,syeo,sye3,syen,sydl,sydm,sye6,sydy,syeg,syel,syef,syek,syee,syed,sye2,syeb,syea,sye8,sye7,syei,sydz,syds,sydn,syao,sy8i,zbML3c,gskBEc,sy1ep,s980lf,syxc,B2qlPe,sy13g,NzU6V,sy16k,sy16i,zGLm3b,sy1rn,sy1rm,sy1rl,sy1rk,sy1f1,sy1f2,DhPYme,sy44p,sy3ux,sy3uv,syhj,sy3v2,sy3uw,sy3v4,sy3us,sy44o,KHourd,sy45l,sy12b,syyv,oQfbDd,sy45s,sy1pp,sy1gq,sy1gm,syyn,syyl,syym,syyk,sy45q,sy45r,sy45o,sy1pg,syyu,sy45p,qmjr3?xjs=s3

        yMi = class {
          async Umb() {
            var a = (0, _.Ef) (),
            b = a();
            a = a(1);
            try {
              let d,
              e;
              if (!((d = navigator) == null ? 0 : (e = d.permissions) == null ? 0 : e.query)) throw new _.ZW(1, 'HTML5 permissions API missing');
              try {
                const f = a(await b(navigator.permissions.query({
                  name: 'geolocation'
                })));
                if (!f) throw new _.ZW(
                  2,
                  'HTML5 geolocation permissions API returned null or undefined.'
                );
                var c = new _.nLi;
                return _.bi(c, 4, xMi(f.state))
              } catch (f) {
                throw a(),
                f instanceof TypeError ? new _.ZW(1, 'HTML5 geolocation permissions API missing') : f instanceof _.ZW ? f : new _.ZW(
                  4,
                  `The HTML5 geolocation permissions API returned an unknown error: ${ f }`
                );
              }
            } finally {
              b()
            }
          }
        };
        _.Un(_.mMi, class {
          create() {
            return new yMi
          }
        });
Umb (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19621)
wa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19265)
jKa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19293)
jKa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19452)
Yxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20111)
prompt (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20164)
Wxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20061)
start (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20147)
Oxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19930)
<anonymous> (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20274)
Pxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19939)
FIa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17153)
EIa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17156)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17092)
addEventListener (https://web-static.archive.org/_static/js/wombat.js?v=txqj7nKC#21)
addEventListener (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#10995)
AIa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17082)
je (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17066)
Pxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19934)
<anonymous> (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20273)
f (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22851)
f (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22857)
xpa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#6486)
f (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22845)
flatMap (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22265)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
Pf (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22105)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
Pf (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22105)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
apply (https://web-static.archive.org/_static/js/wombat.js?v=txqj7nKC#21)
IAa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#10717)

And then:

        var byj = function (a) {
          return new Promise((b, c) => {
            navigator.geolocation.getCurrentPosition(b, c, a)
          })
        },
byj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20283)
byj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20282)
getCurrentPosition (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20309)
getCurrentPosition (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19114)
prompt (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20160)
Wxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20061)
start (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20147)
Oxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19930)
<anonymous> (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20274)
Pxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19939)
FIa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17153)
EIa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17156)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17092)
addEventListener (https://web-static.archive.org/_static/js/wombat.js?v=txqj7nKC#21)
addEventListener (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#10995)
AIa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17082)
je (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#17066)
Pxj (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#19934)
<anonymous> (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/(...skipped...),qmjr3?xjs=s3:formatted#20273)
f (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22851)
f (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22857)
xpa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#6486)
f (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22845)
flatMap (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22265)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
Pf (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22105)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
Pf (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22105)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
map (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22222)
b (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#22151)
apply (https://web-static.archive.org/_static/js/wombat.js?v=txqj7nKC#21)
IAa (http://web.archive.org/web/20260411004726js_/https://www.google.com/xjs/_/js/k=xjs.hd.en.MnQWgILN6NQ.2019.O/am=AA(...skipped...)eHDfl,YV5bee,d,csi:formatted#10717)

(You have to run Object.defineProperty(f, "state", { value: "granted" }) to work around Wayback Machine's geolocation override)

This means permanently giving geolocation permission to Google Maps also gives the Google Search the user location for every visit, without any in-page visual cue. This is concerning for privacy and we should consider doing something with it.

You can use container tabs and flip a pref to enable permission isolation between containers. One container for Google search and another for maps. But it requires manual setup. I’m considering building an extension similar to Facebook container that sets this up for you automatically. The permission isolation between containers unfortunately isn’t enabled by default yet.

flip a pref to enable permission isolation between containers.

Hi Emma, which pref are you referring to here?

Flags: needinfo?(emz)

It's permissions.isolateBy.userContext. Sorry I was on my phone earlier so I didn't have it.

Flags: needinfo?(emz)

Probably a bit off-topic here, but may I ask why it isn't enabled by default and isn't surfaced in the UI? Should we mention the pref in our support articles (I bet some number of users will definitely benefit from that)?

Flags: needinfo?(emz)

See https://bugzilla.mozilla.org/show_bug.cgi?id=1641584#c2 for more context and the bug to enable it. We should not recommend it to users because we don't have good UI for managing these permissions.

Flags: needinfo?(emz)
See Also: → 1641584

For context: In Slack there was also some ideas:

  • Make it more visible that geolocation is being observed in browser UI
  • Force every second-level Google path to have separate permission storage

For the container approach:
I have a prototype extension that, assuming permissions.isolateBy.userContext=true, puts google.com/maps and google.com into separate containers. Works great! I did hack together a webextension API that allows extensions to enable permissions.isolateBy.userContext but I don't think that's the right solution. We should just enable this by default and figure out the remaining UX issues.

See Also: → 2038194
You need to log in before you can comment on or make changes to this bug.