New security model for widgets, Opera 10 and network="public"
By Hans S. Tømmerholt. Wednesday, 14. January 2009, 13:47:58
For Opera 10, we're introducing a new security model which among other things means that widgets don't have network access on by default. In order to enable network access for non-intranet sites, add a network attribute to the widget element in the config.xml of your widget with the value public.
This will make your widget work as intended in Opera 10, but will not affect previous versions. Older browsers will simply ignore the network attribute and give your widget access as per the existing security model. We'll update the documentation with more details as we get closer to a release of Opera 10.
Note that this affects http://widgets.opera.com. If you submit a widget to us without the network attribute, the widget will probably not work in Opera 10. Consequently, your widget will not be approved for that version, and wont show up in the lists of widgets when people browse the site.
<widget network="public"> ... </widget>
This will make your widget work as intended in Opera 10, but will not affect previous versions. Older browsers will simply ignore the network attribute and give your widget access as per the existing security model. We'll update the documentation with more details as we get closer to a release of Opera 10.
Note that this affects http://widgets.opera.com. If you submit a widget to us without the network attribute, the widget will probably not work in Opera 10. Consequently, your widget will not be approved for that version, and wont show up in the lists of widgets when people browse the site.



Aux # 14. January 2009, 14:06
Aux # 14. January 2009, 14:09
For_d # 14. January 2009, 15:25
http://dev.opera.com/articles/view/opera-widgets-security-model/
In the new model, https will be allowed as a protocol by default.
Aux # 14. January 2009, 15:34
mabdul # 14. January 2009, 15:51
For_d # 15. January 2009, 12:01
mabdul # 15. January 2009, 16:59
so what for is that?
I mean i hope you understand me: if the developer want the access he get the access, if he doesn't want, he won't build anything in...
_Grey_ # 15. January 2009, 20:12
For_d # 16. January 2009, 11:26
The reason for the change is primarily to align ourselves better with the W3C, which are using an opt-in network model in their upcomming widgets spec.
Then, yes, the idea is to remove unnecessary access from those widgets that don't actually require it, reducing the risks from exploiting errors in these widgets. More so than trying to stop harmful widgets. The idea is that by requiring users to write network="public" to actually get access, devs will be lazy when they don't actually want that and omit it.
The change in architecture also allows us to develop some features down the line, which we'll get back to.