Атрибут sandbox

Атрибут sandbox позволяет установить ряд ограничений на контент, загружаемый во фрейме, к примеру, блокировать формы и скрипты. Это позволяет повысить безопасность текущего документа, особенно в том случае, когда во фрейм загружается документ из непроверенного источника.

Синтаксис

<iframe src="URL" sandbox="allow-same-origin || allow-top-navigation || 
allow-forms || allow-scripts"></iframe>

Значения

allow-forms
Позволяет содержимому фрейма отправлять формы.
allow-modals
Разрешает открытие модальных окон, вроде тех, которые делаются с помощью функции alert в JavaScript.
allow-orientation-lock
Позволяет отключать возможность блокировки экрана.
allow-pointer-lock
Позволяет фрейму использовать Pointer Lock API.
allow-popups
Разрешает всплывающие окна (такие как window.open, target="_blank", showModalDialog).
allow-presentation
Разрешает фрейму использовать Presentation API.
allow-same-origin
Разрешает загружать содержание фрейма, воспринимая его из того же источника, что и родительский документ. Может использоваться для безопасного открытия контента, блокируя при этом всплывающие окна.
allow-scripts
Разрешает запуск и выполнение скриптов. Создание всплывающих окон при этом запрещено.
allow-top-navigation
Позволяет открывать ссылки фрейма в родительском документе.

Допустимо писать несколько значений в любом порядке через пробел. Если указано пустое значение, то устанавливаются все возможные ограничения.

При одновременном использовании значений allow-scripts и allow-same-origin, когда исходный и загружаемый документ одного происхождения, атрибут sandbox игнорируется.

Значение по умолчанию

Нет.

Пример

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>iframe, атрибут sandbox</title>
 </head>
 <body>
  <iframe src="page/hello.html" sandbox></iframe>
 </body>
</html>

В данном примере во фрейме открывается документ, который через скрипт выводит сообщение. Добавление атрибута sandbox блокирует действие скрипта.

Браузеры ?

Браузеры

В таблице браузеров применяются следующие обозначения.

  •  — элемент полностью поддерживается браузером;
  •  — элемент браузером не воспринимается и игнорируется;
  •  — при работе возможно появление различных ошибок, либо элемент поддерживается с оговорками.

Число указывает версию браузреа, начиная с которой элемент поддерживается.

Автор и редакторы

Автор: Влад Мержевич
Последнее изменение: 18.05.2017
Редакторы: Влад Мержевич