Program Outline
Module 1: Overview of Application Security
This module introduces students to the concept of application security. It explains the importance of security and the various application security loopholes. The module discusses the essential components of a successful Secure Development Process such as threat modeling and threat mitigation. In addition the module explains the security best practices.
Lessons
The Importance of Application SecurityApplication Security Best PracticesLab: Threat Modeling and Threat Mitigation
After completing this module students will be able to:
Explain the basic concept of application securityModule 2: Implementing Platform Security Best Practices
This module focuses on implementing platform security best practices. It discusses the concept of ACLs and DACLs and enables students to use various built-in functions for implementing platform security using ACLs and DACLs. The module also explains how to create custom accounts with least privilege for running Microsoft ASP.NET applications and how to view audit trails. In addition the module explains how to implement security defaults in an application. Finally the module discusses the use of digital certificates and signatures and how to implement platform cryptography.
Lessons
Security Best Practices for COM+ IIS and SQL Server 2000Using ACLs and DACLsUsing Windows Least-Privilege AccountsUsing Audit TrailsImplementing Platform CryptographyImplementing Data ProtectionLab: Using ACLs and DPAPI
After completing this module students will be able to:
Implement platform security best practicesModule 3: Implementing Coding Security Best Practices
This module focuses on implementing coding security best practices. It enables students to validate application input for securing applications. The module also discusses how to secure local and third-party components and evaluate canonicalization issues. In addition the module enables students to implement error-handling guidelines to defend against security exceptions.
Lessons
Validating Application InputEvaluating Canonicalization IssuesUsing Security ExceptionsLab: Verifying User Input
After completing this module students will be able to:
Implement coding security best practicesModule 4: Using .NET Framework Security Features
This module focuses on .NET Framework security features. It explains how to use stack walks to defend against lurking attacks. In addition the module enables students to implement security using application domains.
Lessons
Implementing CLR Security MechanismImplementing Security Using Application DomainsLab: Invoking a Third-Party Assembly in Application Domain
After completing this module students will be able to:
Implement security using CLR and application domainsModule 5: Implementing Role-based Security
This module discusses programming techniques for implementing role-based security by using the Microsoft .NET Framework.
Lessons
Basics of Role-Based SecurityRole-Based Security with Principal and Identity ObjectsRole-Based Security with Permission ObjectsLab: Implementing Role-based Security
After completing this module students will be able to:
Implement role-based security by using the Microsoft .NET FrameworkModule 6: Implementing Code-Access Security
This module focuses on implementing CAS. It explains how to work with code access permissions and apply CAS checks. In addition the module discusses the default membership conditions and the four CAS policy levels.
Lessons
Overview of Code-Access SecurityPerforming Basic Security OperationsPerforming Imperative Security OperationsPerforming Declarative Security OperationsAdding Permission RequestsLab: Implementing Code-Access Security
After completing this module students will be able to:
Implement CAS to secure applicationsModule 7: Implementing Cryptography in .NET
This module focuses on implementing symmetric and asymmetric cryptography to secure .NET applications.
Lessons
Implementing Symmetric CryptographyImplementing Asymmetric CryptographyLab: Implementing Symmetric and Asymmetric Cryptography
After completing this module students will be able to:
Implement cryptography in .NETModule 8: Securing ASP.NET Applications
This module focuses on securing ASP.NET applications. It discusses the various ASP.NET security features such as authentication authorization and impersonation and how to implement each of these security features. In addition the module explains how to secure Web files and folders.
Lessons
Implementing Authentication in ASP.NET ApplicationsImplementing Authorization in ASP.NET ApplicationsImplementing Impersonation in ASP.NET ApplicationsSecuring Web Files and FoldersLab: Securing ASP.NET Applications Using Form Authentication and SQL Server
After completing this module students will be able to:
Secure ASP.NET applicationsModule 9: Securing Remote .NET Applications
This module focuses on securing remote .NET applications. The module enables students to implement Web Service Enhancements. It also explains how to configure remoting for security.
Lessons
Introducing .NET Application SecurityImplementing Authentication and Authorization in .NET Remoting ApplicationsIntroducing Web Service SecurityImplementing WS SecurityLab: Securing Remote .NET Applications
After completing this module students will be able to:
Secure remote .NET applicationsModule 10: Configuring .NET Security
This module focuses on configuring security using .NET tools. It explains how to manage security policies using Mscorcfg.msc and Caspol.exe.
Lessons
Managing Security Policies Using Mscorcfg.mscManaging Security Policy Levels Using Mscorcfg.mscLab: Configuring .NET Security
After completing this module students will be able to:
Manage and configure security policies using .NET Framework toolsModule 11: Implementing Security Testing
This module focuses on testing application security. It explains the need for security testing and discusses the best practices to be followed for security testing. The module also explains how to assess application security by using techniques such as footprint analysis and penetration testing. In addition the module enables students to test application security by using various security testing tools.
Lessons
Overview of Security TestingCreating a Security Test PlanPerforming Security TestingLab: Testing Application Security
After completing this module students will be able to:
Test application securityModule 12: Deploying Applications with Security
This module focuses on deploying secure applications. It enables students to sign assemblies. In addition the module discusses strong-named assemblies and how to configure security settings with Mscorcfg.exe and Caspol.exe.
Lessons
Deploying .NET Applications with Security SettingsDeploying .NET Applications with Publisher Identity and Code IntegrityLab: Deploying Applications with Security
After completing this module students will be able to:
Deploy applications in a manner that minimizes security risks.
Related Exams
This course will help the student prepare for the following Microsoft Certified Professional exams:
Exam 70-330: Implementing Security for Applications with Microsoft Visual Basic .NETExam 70-340: Implementing Security for Applications with Microsoft Visual C# .NET
Student Pre-Requisites
Before attending this course students:
Should have a minimum of 1 year of experience using Microsoft Visual Studio .NET 2003 (.NET Framework 1.1) and 2 3 years of additional development experience.Should be experienced in either Visual Basic .NET or Visual C#.
Student Materials
The student kit includes a comprehensive workbook and other necessary materials for this class.
Program Goals
After completing this course students will be able to:
Explain the basic concept of application security.Implement platform security best practices.Implement coding security best practices.Implement security using CLR and application domains.Implement role-based security by using the Microsoft .NET Framework.Implement CAS to secure applications.Implement cryptography in .NET.Improve the Security of remote applications built on the .NET Framework.Improve the Security of ASP.NET applications.Manage and configure security policies using Framework tools.Test application security.Deploy applications in a manner that minimizes security risks.