Xpoint
   [напомнить пароль]

Frame с chrome-привилегиями на веб-странице

2007-02-12 13:16:00 [обр] Данил Иванов [досье]

Как безопасно из расширения вставить объект в веб-страницу, наделив его chrome-привелегиями и возможностью вызова некоторых функций из XPCOM-компоненты?

В идеале - <xul:iframe src="chrome://..."/>, получить доступ к содержимому которого не могут скрипты со страницы и скрипты вроде user.js GreaseMonkey.

Плагины, если я правильно понимаю, не подходят. Или понимаю не правильно?

спустя 1 час 5 минут [обр] Владимир Палант [досье]
var frame = doc.createElement("iframe");
doc.body.appendChild(frame);
frame.contentWindow.location.href = 'chrome://.../';
У страницы доступа к этому фрейму нет. Насчет скриптов GreaseMonkey — не уверен.
спустя 5 минут [обр] Владимир Палант [досье]
PS: Почему это работает — при присваивании location.href загрузка запускается немедленно, соотвественно и при проверке прав решающими оказываются права скрипта, который эту загрузку запустил. А вот при установке атрибута src загрузка ставится в очередь, и тогда для проверки прав проверяется страница, в которой находится фрейм.
спустя 36 минут [обр] Данил Иванов [досье]
То, что нужно. Спасибо. Особенно за объяснение.
Powered by POEM™ Engine Copyright © 2002-2005