This course is designed to expose software developers to the key security concepts that they need to know to appreciate what Secure Coding is all about. This is a language agnostic course that focuses on the concepts, techniques and mechanisms required to secure data and to create secure software that enforces and maintains data protection. Most developers are aware of some of these concepts, but they do not fully appreciate the significance of each in relation to the other, and how these topics ultimately affect their ability to evaluate and implement secure coding practices. Any factors that affect software security should be carefully considered, and fully understood. There is a lot of decision making that goes into each coding project, and this course helps ensure that developers are adequately equipped to make properly informed choices.
This course focuses on the main concepts and leaves the implementation to later courses. It explores the foundations of security and covers what every programmer needs to know about security.