Логика сначала, безопасность WCF позже?

Смежные символы </script> не могут существовать во встроенном теге Javascript. Разметка HTML анализируется перед Javascript, и </script> в разметке HTML после начала тега <script> указывает конец этого тега.

Вместо этого вы можете объединить, так что, например, ваш текст приведет к

var x = '"><script>alert(\'hi\')</scr' + 'ipt>';

с помощью str_replace:

$withSlashes = addcslashes(

Смежные символы </script> не могут существовать во встроенном теге Javascript. Разметка HTML анализируется перед Javascript, и </script> в разметке HTML после начала тега <script> указывает конец этого тега.

Вместо этого вы можете объединить, так что, например, ваш текст приведет к

[110]

с помощью str_replace:

[111]

Но было бы предпочтительно не динамически создавать код Javascript. Попробуйте вместо этого использовать атрибуты данных и разделить Javascript на отдельный файл, например,

<script
  src="script.js"
  data-x="<?php echo addcslashes(

Смежные символы </script> не могут существовать во встроенном теге Javascript. Разметка HTML анализируется перед Javascript, и </script> в разметке HTML после начала тега <script> указывает конец этого тега.

Вместо этого вы можете объединить, так что, например, ваш текст приведет к

[110]

с помощью str_replace:

[111]

Но было бы предпочтительно не динамически создавать код Javascript. Попробуйте вместо этого использовать атрибуты данных и разделить Javascript на отдельный файл, например,

[112]

(если вы используете этот метод, не забудьте правильно экранировать ", если они могут существовать в результате)

GET['value'], "'") ?>" ></script>

(если вы используете этот метод, не забудьте правильно экранировать ", если они могут существовать в результате)

GET['value'], "'"); $xContent = str_replace('</script>', "</scr' + 'ipt>", $withSlashes); ... var x = '<?php echo $xContent ?>';

Но было бы предпочтительно не динамически создавать код Javascript. Попробуйте вместо этого использовать атрибуты данных и разделить Javascript на отдельный файл, например,

<script
  src="script.js"
  data-x="<?php echo addcslashes(

Смежные символы </script> не могут существовать во встроенном теге Javascript. Разметка HTML анализируется перед Javascript, и </script> в разметке HTML после начала тега <script> указывает конец этого тега.

Вместо этого вы можете объединить, так что, например, ваш текст приведет к

[110]

с помощью str_replace:

[111]

Но было бы предпочтительно не динамически создавать код Javascript. Попробуйте вместо этого использовать атрибуты данных и разделить Javascript на отдельный файл, например,

[112]

(если вы используете этот метод, не забудьте правильно экранировать ", если они могут существовать в результате)

GET['value'], "'") ?>" ></script>

(если вы используете этот метод, не забудьте правильно экранировать ", если они могут существовать в результате)

5
задан Simon Hartcher 28 January 2009 в 00:40
поделиться

3 ответа

В то время как Ваш общий замысел должен рассмотреть безопасность с самого начала, я не думаю, что это - хорошая идея связать Ваши компоненты с какой-то конкретной стратегией безопасности. Можно хотеть использовать некоторые компоненты незащищенным способом или через другой протокол, который предлагает различные параметры безопасности.

Таким образом, мой ответ - да и нет. Да необходимо думать об этом с начала, но не Вы не должны связывать свои компоненты с Вашими потребностями безопасности.

Тем не менее, так как Вы знаете об использовании net.tcp, необходимо знать, что транспортная безопасность включена по умолчанию для этой привязки.

Для тонн больше информации посмотрите фантастическую Programming WCF Services Juval Lowy, главу 10. Lowy, в его библиотеке ServiceModelEx (обсужденный подробно в книге) служит действительно хорошей основой, которую можно включить после создания компонентов. Даже если это не точно, что Вы ищете Вас, может настроить его для удовлетворения потребностям.

5
ответ дан 13 December 2019 в 22:18
поделиться

О безопасности нужно думать от запуска и не прибавить в конце.

Разработайте план относительно своей безопасности и реализуйте ее, когда Вы идете, скорее затем в конце.

Ссылка: Microsoft.NET: проектирование приложений для предприятия

http://www.amazon.com/Microsoft®-NET-Architecting-Applications-PRO-Developer/dp/073562609X

3
ответ дан 13 December 2019 в 22:18
поделиться

Вы имеете два варианта, печете его в с начала или хлопаете его на в конце. С безопасностью в целом я сказал бы, что она действительно не работает в обледенении, таким образом, необходимо сделать путаницу пирога для получения ее там.

Однако способ, которым я вижу Ваш вопрос, является Вами, уже знают, что необходимо сделать что-то для решения проблемы безопасности, Вы просто не решили, что сделать. В этом случае я согласился бы с Terry, что необходимо затем разработать на основе абстракции, которая позволяет Вам плагину возможное решение.

На вашем месте я, вероятно, сделал бы модель угрозы и использовал бы ее для рассмотрения исходных данных и рисков представленными сервисом. Это поможет Вам решить то, что необходимо сделать в конечном счете и если абстракция покрывает все основания.

2
ответ дан 13 December 2019 в 22:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: