82 votes

Qu'est-ce que l'option Security Development Lifecycle Checks dans Visual Studio ?

J'utilise Visual Studio 2013 Preview, bien que je sois sûr de l'avoir vu dans des versions antérieures. Lors de la création d'un nouveau projet à l'aide de l'assistant, je sélectionne C++, Win32 Console Application, et il y a une option pour activer les contrôles du cycle de vie du développement de la sécurité sur mon projet. Quelqu'un pourrait-il m'expliquer ce que cette option fait exactement à mon code/projet ?

73voto

MSalters Points 74024

En /sdl Le commutateur est décrit aquí . Il transforme certains avertissements en erreurs, ce qui n'affecte pas votre code. De plus, il applique la règle /GS vérifier de manière plus agressive.

N'en attendez pas trop. Le SDL de Microsoft est en fait une solution de contournement pour la programmation en C des années 1980. Même si vous utilisez le C++ du 20e siècle, vous n'en avez pas besoin. Par exemple operator+(std::string, std::string) est à la fois sûr et portable. En revanche, la solution SDL de Microsoft n'est ni portable, ni sûre. /GS consiste à détecter les erreurs dans la gestion des chaînes de caractères en C au moment de l'exécution et à interrompre le programme, ce qui limite les conséquences mais ne le rend pas sûr.

2voto

Mohammad Izady Points 403

Le Microsoft Security Development Lifecycle est un processus de développement logiciel utilisé et proposé par Microsoft pour réduire les coûts de maintenance des logiciels et augmenter leur fiabilité en ce qui concerne les bogues liés à la sécurité des logiciels.

Ceux-ci peuvent s'avérer utiles :

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X