Course: Defensive Programming in C#
duration: 6 hours |
Language: English (US) |
access duration: 90 days |
Incompany available
Details
In this C# training course you will learn the basics of defensive programming in C#. You will learn the entry applications, testing, error handling, planning and methods. You will also learn to recognize the risks of C# and you will learn the best way to deal with input from a user and to secure WCF applications. Among subjects that covered are Visual Studio, UI applications, .NET applicaties, DLL highjacking, using dynamic SQL and far more.
Result
After completing this course you are familiar with defensive programming in C#.
Prerequisites
There is no specific knowledge required.
Target audience
Software Developer
Content
Defensive Programming in C#
Defensive Coding Fundamentals for C#
- start the course
- describe the potential risks faced by software applications
- identify the key reasons why risks are a recurring issue
- recognize the key features of defensive coding
- list some key approaches to preventing problems during the planning stage
- recognize what clean code is
- identify the key features of iterative design
- use pseudocode to develop programming solutions
- use assertions in your programming code
- apply pre and post conditions to C#
- identify how to perform low level design inspections
- describe the benefits of testing your code
- recognize how to write testable code in C#
- recognize how to perform unit tests using Visual Studio for C#
- create examples of defensible methods in C#
- identify the techniques for applying defensive techniques for method parameters and return values in C# methods
- recognize how to implement variable declarations for defendable code
- identify how to use null values in creating defendable code
- identify how to use if and switch statements in creating defendable code
- identify error handling techniques to promote defensive coding
- demonstrate how to use exceptions to handle errors
- create a C# application that incorporates error codes and messages into its error handling
- recognize how to use error processing and global objects
- identify how to handle errors locally in C# code
- recognize how to anticipate potential errors in C# code
- write clean, testable code
Defensive Coding for C#
- start the course
- list potential risks to C# UI applications
- describe what buffer overflows are and their impact
- identify how to prevent buffer overflows
- identify what form injection attacks typically take in C# applications
- describe how to mitigate injection attacks in C# applications
- identify how to prevent shatter attacks in .NET applications
- recognize how to prevent DLL highjacking in .NET applications
- use exceptions in C# applications
- specify how to deal with bad data in your C# applications
- how to use input validation in a C# application
- how to use regular expressions to help in input validation
- recognize how to constrain user input to prevent bad data input
- describe what SQL injection attacks are
- recognize how to use Stored Procedures to aid in the defense of SQL injection attacks
- describe some of the pitfalls of using dynamic SQL
- illustrate how authentication works in WCF
- recognize how to verify service identities
- identify how to prevent NTLM attacks
- recognize how to work with the WindowsIdentity class
- describe potential XML risks in ASP.NET applications
- identify how to prevent against XML Entity expansion attacks
- list the potential problems that path traversal may cause
- recognize how to prevent path traversal attacks
- use defensive coding techniques to create secure C# application
Course options
We offer several optional training products to enhance your learning experience. If you are planning to use our training course in preperation for an official exam then whe highly recommend using these optional training products to ensure an optimal learning experience. Sometimes there is only a practice exam or/and practice lab available.
Optional practice exam (trial exam)
To supplement this training course you may add a special practice exam. This practice exam comprises a number of trial exams which are very similar to the real exam, both in terms of form and content. This is the ultimate way to test whether you are ready for the exam.
Optional practice lab
To supplement this training course you may add a special practice lab. You perform the tasks on real hardware and/or software applicable to your Lab. The labs are fully hosted in our cloud. The only thing you need to use our practice labs is a web browser. In the LiveLab environment you will find exercises which you can start immediately. The lab enviromentconsist of complete networks containing for example, clients, servers,etc. This is the ultimate way to gain extensive hands-on experience.
Sign In
WHY_ICTTRAININGEN
Via ons opleidingsconcept bespaar je tot 80% op trainingen
Start met leren wanneer je wilt. Je bepaalt zelf het gewenste tempo
Spar met medecursisten en profileer je als autoriteit in je vakgebied.
Ontvang na succesvolle afronding van je cursus het officiële certificaat van deelname van Icttrainingen.nl
Krijg inzicht in uitgebreide voortgangsinformatie van jezelf of je medewerkers
Kennis opdoen met interactieve e-learning en uitgebreide praktijkopdrachten door gecertificeerde docenten
Orderproces
Once we have processed your order and payment, we will give you access to your courses. If you still have any questions about our ordering process, please refer to the button below.
read more about the order process
Een zakelijk account aanmaken
Wanneer u besteld namens uw bedrijf doet u er goed aan om aan zakelijk account bij ons aan te maken. Tijdens het registratieproces kunt u hiervoor kiezen. U heeft vervolgens de mogelijkheden om de bedrijfsgegevens in te voeren, een referentie en een afwijkend factuuradres toe te voegen.
Betaalmogelijkheden
U heeft bij ons diverse betaalmogelijkheden. Bij alle betaalopties ontvangt u sowieso een factuur na de bestelling. Gaat uw werkgever betalen, dan kiest u voor betaling per factuur.
Cursisten aanmaken
Als u een zakelijk account heeft aangemaakt dan heeft u de optie om cursisten/medewerkers aan te maken onder uw account. Als u dus meerdere trainingen koopt, kunt u cursisten aanmaken en deze vervolgens uitdelen aan uw collega’s. De cursisten krijgen een e-mail met inloggegevens wanneer zij worden aangemaakt en wanneer zij een training hebben gekregen.
Voortgangsinformatie
Met een zakelijk account bent u automatisch beheerder van uw organisatie en kunt u naast cursisten ook managers aanmaken. Beheerders en managers kunnen tevens voortgang inzien van alle cursisten binnen uw organisatie.
What is included?
Certificate of participation | Yes |
Monitor Progress | Yes |
Award Winning E-learning | Yes |
Mobile ready | Yes |
Sharing knowledge | Unlimited access to our IT professionals community |
Study advice | Our consultants are here for you to advice about your study career and options |
Study materials | Certified teachers with in depth knowledge about the subject. |
Service | World's best service |
Platform
Na bestelling van je training krijg je toegang tot ons innovatieve leerplatform. Hier vind je al je gekochte (of gevolgde) trainingen, kan je eventueel cursisten aanmaken en krijg je toegang tot uitgebreide voortgangsinformatie.
FAQ
Niet gevonden wat je zocht? Bekijk alle vragen of neem contact op.