Start course

This is the second course in Domain 3 of the CSSLP certification and covers the essential ideas, concepts, and principles that you need to take into account when building secure software.

Learning Objectives

  • Understand security design principles as different from actual software design principles
  • Understand the relationship between the interconnectivity and the security management interfaces
  • Learn how to balance potentially competing or seemingly conflicting requirements to obtain the right security level

Intended Audience

This course is intended for anyone looking to develop secure software as well as those studying for the CSSLP certification.


Any experience relating to information security would be advantageous, but not essential. All topics discussed are thoroughly explained and presented in a way allowing the information to be absorbed by everyone, regardless of experience within the security field.


Along with the design and build of the application and the consideration of the interconnectivity elements that it will be impacted by, we must examine the interfaces. They begin with the interface between a user and a resource, because it acts as a form of mediation by the program to support not only operational functionality, but enforce security policy. Because we can use this to control what is presented and what can be performed by the way that we structure the screen and the functions through it, it will display what is allowed and enable interaction with that, and the controls that are in place, to ensure again, that no circumvention or undue display of information occurs. And through the interfaces, we can mask various elements while displaying the allowed ones that reinforce confidentiality.

Now, the application program interfaces, which are the tactical contract that is published for the communication of one software component with another, then we look to how the software will interact with the underlying operating system, through the API, again, to reinforce the various principles that we've designed in, as well as the triple A services as appropriate, and ultimately our confidentiality, integrity, and availability.

Now, as part of this process, there will have to be security management interfaces designed and built in at various locations and operational points within the application and the system. Now, these are those interfaces that we will use from a security management perspective to configure and manage the policy and its enforcement in the software itself.

About the Author
Learning Paths

Mr. Leo has been in Information System for 38 years, and an Information Security professional for over 36 years.  He has worked internationally as a Systems Analyst/Engineer, and as a Security and Privacy Consultant.  His past employers include IBM, St. Luke’s Episcopal Hospital, Computer Sciences Corporation, and Rockwell International.  A NASA contractor for 22 years, from 1998 to 2002 he was Director of Security Engineering and Chief Security Architect for Mission Control at the Johnson Space Center.  From 2002 to 2006 Mr. Leo was the Director of Information Systems, and Chief Information Security Officer for the Managed Care Division of the University of Texas Medical Branch in Galveston, Texas.


Upon attaining his CISSP license in 1997, Mr. Leo joined ISC2 (a professional role) as Chairman of the Curriculum Development Committee, and served in this role until 2004.   During this time, he formulated and directed the effort that produced what became and remains the standard curriculum used to train CISSP candidates worldwide.  He has maintained his professional standards as a professional educator and has since trained and certified nearly 8500 CISSP candidates since 1998, and nearly 2500 in HIPAA compliance certification since 2004.  Mr. leo is an ISC2 Certified Instructor.

Covered Topics