Paul Theriault
unread,Sep 10, 2014, 7:32:40 PM9/10/14You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Rob Hudson, Adam Muntner, Fabrice Desré, Christiane Ruetten, Marketplace Development
I am concerned about this proposal and it sounds like there is a disconnect between FxOS and Marketplace on the security constraints of app origin fields.
On 11 Sep 2014, at 5:39 am, Rob Hudson <
chu...@mozilla.com> wrote:
> Hi,
>
> There have been a few bugs filed:
>
> Marketplace origin cannot change for 1.1
>
https://bugzilla.mozilla.org/show_bug.cgi?id=962524
>
> Cannot set app_domain for webapp that originally had no app_domain
>
https://bugzilla.mozilla.org/show_bug.cgi?id=1063149
>
> Relax app origin validation to be less domain oriented
>
https://bugzilla.mozilla.org/show_bug.cgi?id=1065181
>
> App validation is successful even there's no origin specified in the manifest file
>
https://bugzilla.mozilla.org/show_bug.cgi?id=1065328
>
>
> Here’s what I know:
>
> Prior to FxOS 1.1 the platform (FxOS) didn’t look at the “origin” defined in the manifest and during install generated one for the app. I believe this origin looks like ‘app://<UUID>’.
>
> If you are a packaged app developer and you change your “origin” defined in the manifest, you break upgrades to your app. The platform does not allow origin changes so the end-user sees an error. Unfortunately the end-user will also continue to get update notifications that they can’t install.
>
> On Marketplace we currently do not enforce either having an origin or not changing the origin. We verify an origin if one exists but require it to look like a domain.
>
>
> To fix the bugs I propose the following:
>
> Require the “origin” to be defined for packaged apps. If the app wants to ever do server-less payments the “origin” will be important. Alternatively we could strongly suggest that an origin exists and explain why.
Origin is ONLY safe for privileged apps and ONLY if the marketplace review team ensure thats the app is not claiming an origin which could belong to another app.
Origin is prohibited on regular packaged apps since you could use it claim another apps origin. (Noting that this packaged apps might not be installed through the marketplace). The bottom line is that origin is a hack, and one that was hoping would disappear once hosted packaged apps lands (bug 1033360), though I note this has been pushed to 2.2 so thats a while away.
If the solution is we need to give an app an origin, can I suggest that they be marketplace assigned instead. Maybe the developer can start the submission process prior to submitting the app, and have the marketplace “pre-reserve" an origin to the app, and something which could be a real domain that the marketplace controls. IE something like: app://
appid1234.firefox-marketplace-apps.com. (i.e. marketplace controlled but NOT same-origin with marketplace) We should also consider if/how these can upgrade to hosted packaged (bug 1033660) apps once they land.
>
> Do not allow “origin” changes between packaged app versions as they break upgrades. Alternatively we could allow origin changes but explain that it will break app upgrades — users will have to uninstall and re-install their app.
>
> Allow the “origin” to look like something other than a domain. E.g. “app://facebook”.
Why is this needed, doesn’t it just make it harder to verify the ownership?