Marketplace/Features/Purchase PIN: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
(added banner)
 
Line 1: Line 1:
{{Marketplace_banner}}
{{FeatureStatus
{{FeatureStatus
|Feature name=Purchase PIN
|Feature name=Purchase PIN

Latest revision as of 02:19, 1 April 2016

Stop (medium size).png
The Marketplace has been placed into maintenance mode. It is no longer under active development. You can read complete details here.
Please use "Edit with form" above to edit this page.

Status

Purchase PIN
Stage Shelved
Status `
Release target Marketplace July
Health OK
Status note `

{{#set:Feature name=Purchase PIN

|Feature stage=Shelved |Feature status=` |Feature version=Marketplace July |Feature health=OK |Feature status note=` }}

Team

Product manager Justin Scott
Directly Responsible Individual Wil Clouser
Lead engineer Unassigned
Security lead Raymond Forbes
Privacy lead `
Localization lead `
Accessibility lead `
QA lead Krupa Raj
UX lead `
Product marketing lead `
Operations lead `
Additional members `

{{#set:Feature product manager=Justin Scott

|Feature feature manager=Wil Clouser |Feature lead engineer=Unassigned |Feature security lead=Raymond Forbes |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=Krupa Raj |Feature ux lead=` |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=` }}

Open issues/risks

`

Stage 1: Definition

1. Feature overview

Allowing users to set a PIN that must be entered prior to every purchase enhances security for those concerned about accidental or fraudulent purchases.

2. Users & use cases

1. A user with kids wants to ensure purchases aren't made without his knowledge.

2. A user hates being prompted to enter his password every time he wants to buy an app on his phone, but is still concerned about his account's security.

3. Dependencies

`

4. Requirements

`

Non-goals

`

Stage 2: Design

5. Functional specification

Users can set a Purchase PIN from their Account Settings page by picking a 4-digit number and confirming it. Prior to every purchase -- up front or in-app, desktop or mobile, the user must correctly enter this PIN.

The PIN is optional, but its existence could be advertised during purchases, e.g. "Security tip: setting up a Purchase PIN only takes a few seconds and guards against accidental purchases."

PayPal pre-auth keys could be encrypted using this PIN such that users would be further protected against any Marketplace compromise.

Security recommendation:

  • Require the PIN for all setup processes of users
  • Use the PIN to encrypt the stored pre-auth key
  • Do not permanently store the PIN, instead use the provided PIN to decrypt the pre-auth key for a point in time use. Then disregard both the PIN and the decrypted pre-auth value
  • May need to investigate increasing the key size
    • This could be accomplished by appending to a static value on the server side (which is stored outside the database)

6. User experience design

`

Stage 3: Planning

7. Implementation plan

`

8. Reviews

Security review

`

Privacy review

`

Localization review

`

Accessibility

`

Quality Assurance review

`

Operations review

`

Stage 4: Development

9. Implementation

`

Stage 5: Release

10. Landing criteria

` {{#set:Feature open issues and risks=` |Feature overview=Allowing users to set a PIN that must be entered prior to every purchase enhances security for those concerned about accidental or fraudulent purchases. |Feature users and use cases=1. A user with kids wants to ensure purchases aren't made without his knowledge.

2. A user hates being prompted to enter his password every time he wants to buy an app on his phone, but is still concerned about his account's security. |Feature dependencies=` |Feature requirements=` |Feature non-goals=` |Feature functional spec=Users can set a Purchase PIN from their Account Settings page by picking a 4-digit number and confirming it. Prior to every purchase -- up front or in-app, desktop or mobile, the user must correctly enter this PIN.

The PIN is optional, but its existence could be advertised during purchases, e.g. "Security tip: setting up a Purchase PIN only takes a few seconds and guards against accidental purchases."

PayPal pre-auth keys could be encrypted using this PIN such that users would be further protected against any Marketplace compromise.

Security recommendation:

  • Require the PIN for all setup processes of users
  • Use the PIN to encrypt the stored pre-auth key
  • Do not permanently store the PIN, instead use the provided PIN to decrypt the pre-auth key for a point in time use. Then disregard both the PIN and the decrypted pre-auth value
  • May need to investigate increasing the key size
    • This could be accomplished by appending to a static value on the server side (which is stored outside the database)

|Feature ux design=` |Feature implementation plan=` |Feature security review=` |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=` |Feature operations review=` |Feature implementation notes=` |Feature landing criteria=` }}

Feature details

Priority P1
Rank 1
Theme / Goal `
Roadmap Marketplace
Secondary roadmap `
Feature list Marketplace
Project `
Engineering team WebDev

{{#set:Feature priority=P1

|Feature rank=1 |Feature theme=` |Feature roadmap=Marketplace |Feature secondary roadmap=` |Feature list=Marketplace |Feature project=` |Feature engineering team=WebDev }}

Team status notes

  status notes
Products ` `
Engineering ` `
Security sec-review-needed Implementation review from rforbes Full Query
ID Summary Priority Status
761812 SecReview: Marketplace/Features/Purchase PIN -- RESOLVED

1 Total; 0 Open (0%); 1 Resolved (100%); 0 Verified (0%);

Privacy ` `
Localization ` `
Accessibility ` `
Quality assurance ` `
User experience ` `
Product marketing ` `
Operations ` `

{{#set:Feature products status=`

|Feature products notes=` |Feature engineering status=` |Feature engineering notes=` |Feature security status=sec-review-needed |Feature security health=Blocked |Feature security notes=Implementation review from rforbes

Full Query
ID Summary Priority Status
761812 SecReview: Marketplace/Features/Purchase PIN -- RESOLVED

1 Total; 0 Open (0%); 1 Resolved (100%); 0 Verified (0%);

|Feature privacy status=` |Feature privacy notes=` |Feature localization status=` |Feature localization notes=` |Feature accessibility status=` |Feature accessibility notes=` |Feature qa status=` |Feature qa notes=` |Feature ux status=` |Feature ux notes=` |Feature product marketing status=` |Feature product marketing notes=` |Feature operations status=` |Feature operations notes=` }}