Файлы, установленные в приложение AIR, имеют доступ к API-интерфейсам AIR. Из соображений безопасности содержимое из других источников не имеет такого доступа. Например, это ограничение не позволяет содержимому с удаленного домена (например, http://example.com) читать содержимое каталога рабочего стола пользователя (и ниже по иерархии).
Из-за брешей в безопасности циклов, которые благодаря функции
eval()
(и связанным API-интерфейсам) могут быть использованы злоумышленником, содержимое, установленное вместе с приложением по умолчанию, не имеет доступа к этим методам. Однако в некоторых инфраструктурах Ajax используется вызов функции
eval()
и связанных API.
Для правильного структурирования содержимого приложения AIR следует учитывать правила безопасности и ограничения, накладываемые на каждый из типов содержимого. Содержимое из различных источников размещается отдельно в соответствии с требованиями безопасности в так называемые изолированные программные среды (см. раздел
Изолированные программные среды
). По умолчанию содержимое, устанавливаемое вместе с приложением, помещается в изолированную программную среду
приложения
, что дает ему доступ к API-интерфейсам AIR. Изолированная программная среда приложения является самой защищенной из всех, так как накладываемые на нее ограничения предотвращают внедрение небезопасного кода.
Среда выполнения позволяет загружать содержимое, установленное вместе с приложением, и в другие изолированные программные среды (вне приложения). Степень безопасности в изолированных программных средах вне приложения схожа со средой веб-обозревателя. Например, код в изолированной программной среде вне приложения может использовать функцию
eval()
и похожие методы (но не имеет доступа к API-интерфейсам AIR). Среда выполнения позволяет содержимому в разных изолированных программных средах взаимодействовать без открытия API-интерфейсов AIR содержимому извне приложения. Дополнительные сведения см. в разделе
Перекрестное выполнение сценариев в содержимом из различных изолированных программных сред безопасности
.
При вызове кода, который из соображений безопасности не может использоваться в изолированной программной среде, среда выполнения отправляет ошибку JavaScript: «Нарушение безопасности среды выполнения Adobe AIR для кода JavaScript в изолированной программной среде приложения».
Чтобы этого не происходило, следуйте рекомендациям в следующем разделе
Избежание ошибок безопасности в JavaScript
.
Дополнительные сведения см. в разделе «
Безопасность HTML в Adobe AIR
.