Changes

Jump to: navigation, search

Security/Contextual Identity Project/Containers

1,090 bytes added, 00:03, 6 August 2015
Adding in a problems section and implementation section, both incomplete. Adding in a summary of what is (and isn't separated).
[[File:Containers-side-by-side.png|900px|frameless]]
 
Separated by Containers:
* Cookies
* localStorage
* indexedDB
* HTTP data cache
* Any other areas supported by OriginAttributes [https://bugzilla.mozilla.org/show_bug.cgi?id=1179985 Bug 1179985] (TODO add these in)
 
Not separated by Containers:
* History
* Bookmarks
* Saved Passwords
* Saved Search and Form data
* Image Cache
* HSTS Flags
==Benefits and Use Cases==
At an abstract level, the features seeks to give users more control over their local state (including cookies, localStorage, indexedDB, etc). The current level of control is very coarse, essentially providing an "all or nothing" solution to state management; users can clear everything or accept everything. Cookies can be managed with the Cookie manager, but all other state has no graphical interface for management (see [https://bugzilla.mozilla.org/show_bug.cgi?id=1147820 Bug 1147820]).
The containers project inserts a user-controlled key into storage, which allows users to decide which state to use when interacting with a site. They can choose to send the state from their personal context or work context, and they can choose to create a new, short-lived state to browse in a certain context for a few days until a task is completed. The goal of the project is to create a very customizable experience while including a few suggested uses for users who may not want as much control.
However, we can hook into several user actions and present onboarding messages to encourage container use. We can detect users logging in and out of a service like Twitter that doesn't have support for multiple logins, and offer the feature to them. We can also offer the feature to users when they first try to access their online banking after the feature has been enabled.
 
==Potential Difficulties==
 
There are several open questions and problems related to how users will understand the feature. We will need to determine the best way to prevent these misunderstandings.
 
* A user may open in account in one container and not understand why they are not logged into the account on other containers.
* A user may browse in their Home container for a bit and not understand why their browsing history shows up in their Work container.
==Alternative Features==
* The website I signed into saves a whole bunch of cookies that are outside of its origin. How will the browser know that these out-of-origin cookies are associated with a specific site container?
* Some sites may require that the user interact with multiple top-level origins during a session, or may require cookies from multiple origins.
 
==Implementation Details==
 
You can find more information on the implementation of the project by looking through the Contextual Identity / Containers meta-bug, [https://bugzilla.mozilla.org/show_bug.cgi?id=1191418 Bug 1191418].
==Related work==
 
* Firefox add-ons:
** [https://addons.mozilla.org/en-US/firefox/addon/switchy/ Switchy]
Confirm
25
edits

Navigation menu