Подтвердить что ты не робот

Что такое проверка жизненного цикла разработки безопасности в Visual Studio?

Я использую Предварительный просмотр Visual Studio 2013, хотя я уверен, что видел его в более ранних версиях. При создании нового проекта с помощью мастера я выбираю С++, Win32 Console Application, и есть возможность включить проверки жизненного цикла безопасности в моем проекте. Может ли кто-нибудь объяснить, что этот вариант делает для моего кода/проекта?

4b9b3361

Ответ 1

Переключатель /sdl описан здесь. Он превращает некоторые предупреждения в ошибки, которые не влияют на ваш код. Кроме того, он применяет проверку /GS более агрессивно.

Не ожидайте от него слишком многого. Microsoft SDL действительно является обходным способом для программирования в стиле 1980 года. Даже если вы используете 20-й век С++, вам это не нужно. Например. operator+(std::string, std::string) безопасен и переносим. Решение Microsoft SDL здесь, напротив, не переносимо и не является безопасным - идея /GS заключается в том, чтобы найти ошибки с обработкой строки C во время выполнения и прервать программу, ограничивая последствия, но не делая их безопасными.

Ответ 2

Жизненный цикл Microsoft Security Development Lifecycle - это процесс разработки программного обеспечения, который Microsoft предлагает и предлагает Microsoft для снижения затрат на обслуживание программного обеспечения и повышения надежности программного обеспечения в отношении ошибок, связанных с обеспечением безопасности программного обеспечения.

Это может быть полезно:

http://download.microsoft.com/download/B/5/A/B5A89F4C-D591-4AAB-BF45-D818D80527B6/SDLServices2011.pdf

http://msdn.microsoft.com/en-us/library/windows/desktop/84aed186-1d75-4366-8e61-8d258746bopq.aspx