Security/Contextual Identity Project/User Profiles

From MozillaWiki
Jump to: navigation, search

enhancing existing browser profiles to make sharing a browser between different people easier

Warning signWarning: This is just a draft proposal of how contextual identities might be implemented in Firefox
Mock-up of what this might look like


Firefox already supports multiple browser profiles. They can be created and started using firefox -ProfileManager.

This work is about exposing that functionality to users and extending it so that it satisfies more use cases. It also optionally ties these local profiles to Firefox Accounts.

User stories

The family’s ‘IT expert’

At home, I share the house computer with my dad, my brother, my mum and my cousin. The problem is, everybody has their own Facebook, Twitter and Gmail. And there are five users here, so I can’t just use IE, Firefox and Chrome (that’s just three browsers). Everybody wants to log into those websites quickly, but nobody wants to share the information on the websites they open with each other, except on certain occasion. And when a friend comes by, I want them to sign into their Facebook, Twitter and Gmail without me having to sign out, because that’s a pain.

What I want:

  • Not too many profiles (this is a house computer, not for everybody in the neighbourhood!), not necessarily running in parallel, but can be
  • A way to customise each profile visually: everybody wants a theme, background, icon and name that fits their personalities – especially my brother and cousin. It’s also so everybody won’t get confused. Dad would know when he’s in his Firefox.
  • A way to secure each account – and not secure it if I choose to. It would be nice if the same password I use to sign in is also the same password that would unlock all my passwords, so I won’t have to type the same thing twice (let’s be honest, I don’t keep multiple passwords around).
  • An easy way to send informations around. For example: “Oh. I think my brother would enjoy this song”. Of course, a really easy way to do this is to just send them an email or a direct message. They’ll receive it and click on whatever URL I send them.
  • A way to import information from dad’s old browser (it was IE) to his new profile.

The BYOD office worker

I own my own computer and work at a place where I’m expected to bring my own device to work. It’s pricey to buy another laptop, so I simply take my computer home and use it for non-work activities. At work, I open my work-related sites. But at home, I have all my personal stuff: the sites I like to visit, my social networks, the online store I run, etc. I hate it when work bothers me at home, but my boss hates it when their employees check personal stuff when not on lunch break. (On lunch break, I like to open my personal sites).

What I want:

  • A few profiles (2–3)
  • A way to customise each profile visually. At home, I want fun. At work, it’s got to look professional.
  • To not bother with securing each profile. I’m the only user of this laptop, after all. Nobody else sees it. I only want life and work to not mix information!
  • To sync my home profile (because I have Firefox on my cellphone), but not sync my work profile

The web developer

I design, write and debug websites and apps. To do my job, I need to test how well my sites run. Practically every site today allows one to user to talk to another, whether it’s through posting, mentioning, messaging privately, etc. My job would be made so much easier if I could automate some of the repetitive tasks of this testing and debugging process. I want to quickly open a few instances (at least two) of the same site under very specific settings. I want each instance to be automatically signed into the same web app but under two different users. I want the Web Developer tools to be open automatically, so I don’t have to invoke the shortcut for it or reload the page to start monitoring it. After I’m done testing, I want to close and save each instance so they will reopen under the same specific settings I had set up originally. Lastly, I want to clear the cookies and cache of each instance, so the next time I opened it, it opens as if it’s a fresh instance.

What I want:

  • Many profiles (think 5–10, or more) running all at the same time
  • A way to set each profile exactly the way I like it to be set
  • A way to mirror the behaviour I’ve set up in one profile into all the other ones (for example, I want to always open this bookmark link), so I don’t have to do too many copy-pasting
  • A way to not just switch profile (this is easy), but compare and contrast between profiles so I can isolate which variable is causing problem, and fix it

Related implementations

Common problems with user profiles