LEP/BetterPrivacy

Not logged in - Log In / Register

Revision 7 as of 2010-04-26 14:14:25

Clear message

Better Privacy

Rationale

Canonical's internal business relies more on Launchpad each day. Much of this business must be conducted in private. Launchpad currently provides some of what Canonical needs, but not all. What it does provide is often inconsistent and hard to understand. These inconsistencies increase the chance of privacy leaks, which could do irreparable harm to our business.

Stakeholders

Constraints

What MUST the new behaviour provide?

A way of running projects in total privacy.

A way of running software projects that have public client components and proprietary server components

A way of running projects that do much of their work in private, but do some in public.

A way of sharing access to private projects across other teams

A way that allows anyone to ask a question, but for that question to be kept private initially. (The UX team asked for this, but jml can't recall why)

Need logs of who has accessed private stuff in case of privacy breach

Only people who pay us can get privacy

Security bugs, security branches, security patches etc???

Privacy settings must be easy to change

But making "accidental" mistakes has to be hard

Minimal on-going developer burden

Minimal on-going LOSA burden

An intern should be able to control this

Privacy doesn't matter for almost everything, it should not clutter up the page

Someone needs to be able to see who can access a given thing

Someone needs to be able to see who has accessed a given thing

What MUST it not do?

Subfeatures

Other LaunchpadEnhancementProposals that form a part of this one.

Workflows

What are the workflows for this feature? Provide mockups for each workflow.

You do not have to get the mockups and workflows right at this point. In fact, it is better to have several alternatives, delaying deciding on the final set of workflows until the last responsible moment.

Success

How will we know when we are done?

How will we measure how well we have done?

Release Note

This section should include a paragraph describing the end-user impact of this change. It is meant to be included in the first part of our release change log. It is mandatory.

Thoughts?

Useful to distinguish between containers (e.g. project, distro) and artifacts (e.g. bugs, code)?

We have a bit of a mess right now on hiding completely (e.g. raising a 404) and denying access (e.g. raising a 403).

The "team exists across all projects" thing is going to confuse people

Team privacy and project privacy are orthogonal. Useful for use cases like DX, but less useful of OEM.

Standard way of showing a link to a private object

What are our encryption requirements?

What are our legal requirements?

Probably need to have a "GRANT" permission or something similar

Prior art in web ACLs?

What about projects that go open source?

What about projects that go closed source?

Might be necessary to distinguish between READ access and VIEW ACL accces. Ask OEM how important this is? Really convulated for the bug case.

Hypothesis is that ACL system is distinct from the subscription levels.

References