У меня есть ненадежный код, отправленный пользователем, и мне нужно выполнить его в изолированной среде в браузере.
Мне сообщили, что Web-Workers не может быть достаточно безопасным для этого, и что лучше использовать изолированный iframe. Эта страница:
https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet#Web_Workers
также говорит, что рабочие процессы не подходят для ненадежного кода.
Но если я создам работника из BLOB-объекта, его URL-адрес даже будет иметь другой протокол (blob://
). Применяется ли в этом случае отдельная политика происхождения к рабочему коду?
Если есть дополнительные причины, почему воркер (по умолчанию) менее ограничен по сравнению с изолированным iframe (доступ к IndexedDB или что-то еще), есть ли возможность как-то настроить воркер, чтобы он был достаточно ограничен, или должен Я все еще использую iframe в песочнице?