Marcos, All,

I agree the main follow-up is that we need to do some additional work, particularly regarding fleshing out related requirements.

The minutes indicate there are some requirements that aren't explicitly captured in the October 20 version of R6:

 <http://dev.w3.org/2006/waf/widgets-reqs/#r6.-addressing>

Perhaps some of these should be more explicit:

[[
<http://www.w3.org/2008/10/20-wam-minutes.html#item12>

Marcos: We don't want the URI scheme to have the ability to reference things outside the resource

Marcos: the real use case for this is resolving the DOM nodes. For example, images, iframes, they all need to resolve to something.

Arve: it [widget: scheme] is only a convenience for resolving resources

Josh: For these things, the general expectation is that the names are local. They're just so that widget can introspect itself. Josh: It shouldn't be able to be remotely readable. It's a privacy violation if you can see what else is running.

DanC: did the requirements list the security policy, e.g. same origin, details?

Arve: it also establishes a security model for accessing things as the browser can reuse the cross domain security module. We're using an identifier because it's an incredibly convenient way to establish a same origin policy.
]]

Also, some related suggestions and questions were raised:

* Transparency: Can the scheme be modeled such that it is an implementation detail (i.e. names are private to the UA) and thus never [publicly] exposed? What are the consequences if the scheme leaks? If the scheme will be public, is there a need for a registry?

* Update scenarios: How would the widget scheme fit into various update scenarios?

* Extensibility: What, if any, extensibility mechanism is required for the widget scheme? What are the related use cases?

-Regards, Art Barstow


On Oct 24, 2008, at 6:51 AM, ext Marcos Caceres wrote:


Hi Mark,
Please see [1] for TAG discussion about WebApps proposal of widget URI
scheme. From what I got from the discussion, the TAG seems to agree
that we likely do need our own URI scheme. We just need to flesh out
our technical argument a little more. We are also going to try to
coordinate with the Open Document Format people as they also need
something very similar.

I again ask for your help in defining the scheme correctly, rather
than arguing against it.

[1] http://www.w3.org/2008/10/20-wam-minutes.html#item11

Kind regards,
Marcos

On Mon, Oct 13, 2008 at 4:59 PM, Mark Baker <[EMAIL PROTECTED]> wrote:
On Mon, Oct 13, 2008 at 10:31 AM, Marcos Caceres
<[EMAIL PROTECTED]> wrote:
On Mon, Oct 13, 2008 at 5:08 AM, Mark Baker <[EMAIL PROTECTED]> wrote:
On Fri, Oct 10, 2008 at 4:00 PM, Marcos Caceres
<[EMAIL PROTECTED]> wrote:
Ok, In one of my previous emails I said that this was a potential
privacy/security issue:

"The reason we don't
want to allow vendors to mint their own is that there are potential security and privacy issues related to URI schemes such as file:. For
instance, because Dashboard uses "file:" it is very easy for me to
work out what the username and home directory of a user on MacOsX by simply picking up any DOM node that contains a dereferenced URI (eg.
by examining an img's src, I get something like
"file:///Users/marcos/Library/widget/Default.png")."

I'm no security/privacy expert, but this seems like an easy way to at least get someone's username (from which I may be able to derive who
they are, etc).  Also, if the implementation is crap and does not
restrict file:// to the scope of the widget package (thankfully Apple does), then widgets could basically read any files on the hard drive.

Sure, but standardizing on a URI scheme won't fix this, because one
can guess URIs in any scheme. Less opaque schemes like hierarchical ones are a little more susceptible of course, but it's a problem for
all schemes.

In the case of widgets, it's not a problem at all for the structure of
the package to be guessed (as anyone can just decompress the widget
locally anyway and take a look at it's directory structure; that is
not the issue). What we don't want is a situation where the underlying
operating system is also exposed.

That is why we proposed the new scheme. I don't see how a scheme like
"widget://myWidget.wgt/path/to/file" exposes anything about the
underlying file system (apart from the name of the widget package)?
Instead, file: exposes way too much IMO (i.e.
"file:///Users/marcos/Library/..."! my username is exposed in the
path, which  everyone can acknowledge is pretty a bad thing, no?).

file:, despite the name, doesn't have to be mapped to the file system.
 Its scope could be limited in exactly the same way you've limited
widget: there.  Similarly, ftp or http - even part of the space -
*could* be mapped to the file system.  So the issue you're worried
about has little to do with the URI scheme.

I suspect implementors are familiar with this issue already, but if
you like, you could point out that implementations should ensure that widgets can't access local resources that the implementation doesn't
want them to access.

We will of course point out that implementations should ensure that
widgets can't access local resources. That is explicitly part of the
requirement for the URI scheme.

Good.

Mark.




--
Marcos Caceres
http://datadriven.com.au



Reply via email to