When you enroll in this course, you'll also be asked to select a specific program.
Learn new concepts from industry experts
Gain a foundational understanding of a subject or tool
Develop job-relevant skills with hands-on projects
Earn a shareable career certificate from IBM
There are 4 modules in this course
How vulnerable are your applications to security risks and threats? This course will help you identify vulnerabilities and monitor the health of your applications and systems. You’ll examine and implement secure code practices to prevent events like data breaches and leaks, and discover how practices like monitoring and observability can keep systems safe and secure.
You will gain extensive knowledge on various practices, concepts, and processes for maintaining a secure environment, including DevSecOps practices that automate security integration across the software development lifecycle (SDLC), Static Application Security Testing (SAST) for identifying security flaws, Dynamic Analysis, and Dynamic Testing. You’ll also learn about creating a Secure Development Environment, both on-premise and in the cloud. You’ll explore the Open Web Application Security Project (OWASP) top application security risks, including broken access controls and SQL injections.
Additionally, you will learn how monitoring, observability, and evaluation ensure secure applications and systems. You’ll discover the essential components of a monitoring system and how application performance monitoring (APM) tools aid in measuring app performance and efficiency. You’ll analyze the Golden Signals of monitoring, explore visualization and logging tools, and learn about the different metrics and alerting systems that help you understand your applications and systems.
Through videos, hands-on labs, peer discussion, and the practice and graded assessments in this course, you will develop and demonstrate your skills and knowledge for creating and maintaining a secure development environment.
In this module, you will identify how security fits into your workflow and gain a working knowledge of security concepts and terminology. You’ll discover how to design for security in the Software Development Lifecycle (SDLC) and find out about a set of practices known as DevSecOps. You will also discover the OSI model, identify the necessary OSI layers for developers, and implement security measures on the four layers of application development. You will gain insights into security patterns and learn how to organize them. You will describe TLS (Transport Layer Security) and SSL (Secure Sockets Layer), identify how to keep TLS secure in the SDLC, and explore OpenSSL and its purpose. You will learn the strategies, best practices, and methodologies for getting security early into your code to protect applications against threats and vulnerabilities. Further, you’ll find out how you can use tools like vulnerability scanners and threat models to mitigate security vulnerabilities. You’ll also get the opportunity to add key terms like authentication, encryption, and integrity to your security vocabulary. Finally, you will also perform hands-on labs to encrypt and decrypt files using OpenSSL and scan a network environment with Nmap.
Securing Layers for Application Development•7 minutes
Security Patterns•7 minutes
TLS/SSL•5 minutes
What is OpenSSL?•5 minutes
Vulnerability Scanning and Threat Modeling •4 minutes
Threat Monitoring •4 minutes
Security Concepts and Terminology•4 minutes
5 readings•Total 29 minutes
IBM Product Spotlight: Hashicorp Vault•2 minutes
Summary & Highlights - Introduction to DevSecOps•2 minutes
Summary and Highlights - Understanding the Role of Network Security•3 minutes
Getting Started with Network and Port Scanning with Nmap•20 minutes
Summary and Highlights - Inspecting Security in Application Development •2 minutes
4 assignments•Total 60 minutes
Graded Quiz: Introduction to Security for Application Development•30 minutes
Introduction to DevSecOps•10 minutes
Understanding the Role of Network Security•10 minutes
Inspecting Security in Application Development•10 minutes
2 app items•Total 35 minutes
Hands on Lab: Using OpenSSL to Encrypt and Decrypt Files•15 minutes
Hands on Lab: Scanning a Network Environment with Nmap•20 minutes
2 plugins•Total 20 minutes
Cheat Sheet: Introduction to Security for Application Development•5 minutes
Module 1 Glossary: Introduction to Security for Application Development•15 minutes
Security Testing and Mitigation Strategies
Module 2•4 hours to complete
Module details
In this module, you will learn the key mitigation strategies to secure your application throughout development and production. You will also discover a range of security testing methods like static analysis, dynamic analysis, vulnerability analysis, software component analysis, and continuous security analysis. You will explore ways to perform code review and ensure runtime protection for application development. You will also perform hands-on labs based on static analysis, dynamic analysis, vulnerability scanning, and vulnerability detection.
Cheat Sheet: Security Testing and Mitigation Strategies•10 minutes
Module 2 Glossary: Security Testing and Mitigation Strategies•15 minutes
OWASP Application Security Risks
Module 3•5 hours to complete
Module details
In this module, you will learn about the Open Web Application Security Project (OWASP) and its Top 10 security concerns. You’ll learn about application vulnerabilities and discover the top vulnerabilities concerning security experts and professionals. You will explore SQL injection, cross-site scripting, and storing secrets securely. You will also investigate software and data integrity failures, discover how to detect these types of vulnerabilities, and examine ways to mitigate their impact. You will also perform hands-on labs to analyze your code repository using Snyk and use the Vault Python API (hvac) to read, write, and delete key-value secrets in Vault.
Security Best Practices , Final Project, and Assessment
Module 4•5 hours to complete
Module details
In this module, you will learn about coding best practices and software dependencies. You’ll also explore how to secure a development environment by deciding what to store in a centralized repository and what not to store in GitHub. You will also perform hands-on labs to create HTTP security headers using flask-talisman and safely store and retrieve secrets using the pass CLI (command-line-interface). As your final project, you will check your code on GitHub for vulnerabilities in order of severity and fix the vulnerabilities. You’ll apply the best practices for reducing the risk of vulnerability.
At IBM, we know how rapidly tech evolves and recognize the crucial need for businesses and professionals to build job-ready, hands-on skills quickly. As a market-leading tech innovator, we’re committed to helping you thrive in this dynamic landscape. Through IBM Skills Network, our expertly designed training programs in AI, software development, cybersecurity, data science, business management, and more, provide the essential skills you need to secure your first job, advance your career, or drive business success. Whether you’re upskilling yourself or your team, our courses, Specializations, and Professional Certificates build the technical expertise that ensures you, and your organization, excel in a competitive world.
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Learner reviews
4.7
251 reviews
5 stars
78.57%
4 stars
15.47%
3 stars
2.77%
2 stars
0.39%
1 star
2.77%
Showing 3 of 251
E
EL
4·
Reviewed on Apr 26, 2024
Good overview of application security. The first part is too heavy on the side of terminology. The labs are interesting but in need of some adjustment and quality check.
D
DH
5·
Reviewed on Oct 7, 2022
Application security and monitoring is a huge topic. It's very helpful that some valuable contents are selected and consolidated into this course.
E
EJ
5·
Reviewed on May 30, 2024
This one did a much better job explaining more of the little details for people who are truly noobs coming from a non-programming world.
Do I need to know anything about DevOps to take this course?
No. This is an introductory course that assumes no prior knowledge of DevOps.
Which software tools are required?
You will need to sign up for a no-charge GitHub account and use other no-charge tools from IBM in your browser.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Certificate?
When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.