Curso DevSecOps Foundations Hands-On
32 horasVisão Geral
Curso DevSecOps Foundations Hands-On. DevSecOps é um conjunto de práticas que combina desenvolvimento de software (Dev), segurança (Sec) e operações de TI (Ops) com o objetivo de “virar para a esquerda” na segurança. Este curso prático fornece aos alunos o conhecimento e a experiência para começar a usar ferramentas DevOps para gerenciar e automatizar o desenvolvimento e a implantação de aplicativos. O impacto do DevOps é ampliado com a adição de práticas de segurança ao processo de desenvolvimento e entrega de software. Os alunos aprendem como construir pipelines de integração e implantação contínua usando ferramentas como Git, Docker, Kubernetes, Terraform, Jenkins e outras, integrando segurança em todo o processo.
Objetivo
Após realizar este Curso DevSecOps Foundations Hands-On você será capaz de:
- Entenda os principais conceitos de DevSecOps
- Gerencie aplicativos usando automação e ferramentas DevOps
- Arquitetar aplicativos usando microsserviços
- Gerenciar código-fonte e versões usando Git
- Implante microsserviços usando contêineres Docker
- Verifique imagens de contêiner em busca de vulnerabilidades
- Orquestre a implantação de contêineres usando Kubernetes
- Automatize recursos de implantação usando ferramentas de infraestrutura como código
- Crie pipelines de CI/CD
- Integre a segurança em um pipeline DevOps
- Segurança de infraestrutura como código (IaC)
- Técnicas de modelagem de ameaças e avaliação de riscos
- Avalie o nível de maturidade DevSecOps da sua organização
Publico Alvo
- Profissionais de TI e DevOps
- Engenheiros de software
- Profissionais de segurança
- Arquitetos de software
- Qualquer pessoa que queira aprender mais sobre DevSecOps
Pre-Requisitos
- Familiaridade com sistemas operacionais e comandos Linux
- Experiência com desenvolvimento de software e operações de TI
- Algum treinamento e experiência com serviços em nuvem
- Experiência em scripts relevante para nuvem/DevOps com linguagens como Python ou bash shell
Materiais
Inglês + Exercícios + Lab PraticoConteúdo Programatico
DevSecOps Introduction
- What Is DevOps? What Is DevSecOps?
- DevOps Practices
- Siloed Teams vs. Collaborative
- Why DevSecOps Is Important
- DevSecOps Culture and Mindset
- DevOps Automation
- Cloud-Native Development
- Common Security Models
- General Security Considerations
- Shift Left Security
- Activity: DevOps Quick Check
Microservices
- Introduction to Microservices
- Monolithic vs. Microservice Applications
- Recognizing Microservice Boundaries
- Stateful vs. Stateless Services
- Managing Databases
- Secure Application Development Lifecycle
- Terms and Concepts
- Configuration Management
- Secure Coding Practices and Guidelines
- DevSecOps Tools for Application Development
- Threat Modeling and Risk Assessment
- Activity: Running the Course Case Study
- Securing Containers and Microservices
- Security Testing
- Types of Security Testing
- Automated and Manual Testing
- Twelve-Factor Apps
- Twelve-Factors
- Activity: Implementing Twelve-Factor Apps
Application Lifecycle Management
- Package Management
- Managing Application Dependencies
- Secure Your Application Supply Chain
- Activity: Managing Packages
- Source Control
- Source Control Choices
- Tools
- Git
- Basic Git Commands
- Hosted Git Repositories
- Cloud-Based Git Repositories
- Source Control Security
- Version Control
- Tags
- Branches
- Branching and Merging Strategies
- Activity: Using Git
Docker
- Understanding Docker
- Containers
- Advantages of Containers
- Images
- Using Docker
- Building Docker Images
- Dockerfile
- Starting Containers
- Stopping Containers
- Deleting Containers and Images
- Activity: Running Docker Containers
- Deploying Docker Containers
- Container Registries
- Push and Pull
- Vulnerability Scanning
- Activity: Container Registries
Kubernetes
- Kubernetes Clusters
- Kubernetes Architecture
- EKS
- GKE
- AKS
- OpenShift
- Minikube
- Cluster Security
- Activity: Creating Kubernetes Clusters
- Kubernetes
- Pods
- Deployments
- Services
- Autoscalers
- Health Checkers
- Liveness and Readiness Probes
- Configuration
- Activity: Deploying Applications with Kubernetes
- Kubernetes Security
- Securing a Cluster
- Role-Based Access Control
- Encryption
- Secrets
- Activity: Kubernetes Security
Infrastructure as Code
- Leveraging Cloud Infrastructure
- Infrastructure on Demand
- Disposable Infrastructure
- IaC tools
- Ansible, Chef, Puppet, Pulumi
- AWS CloudFormation
- Azure Resource Manager
- HashiCorp Terraform
- Activity: Deploying Infrastructure with Terraform
- IaC and DevSecOps
- Security in an IaC-Forward Environment
- Identify Misconfigurations and Security Issues
- IaC Scanning
DevOps Automation (CI/CD)
- Automated Builds
- CI/CD Pipelines
- Git Hooks
- Cloud Build Tools
- Activity: Automating Builds
- Integrating Security Into the CI/CD Pipeline
- Managing Pipeline Authentication and Authorization
- Supply Chain Security
- Managing IAM Resources
- Security Scanning at Each Stage of the Pipeline
- Automated Vulnerability Remediation
- Code Quality Tools
- SonarQube
- Selenium
- GitHubActions (GHA)
- Activity: Building a Secure CI/CD Pipeline with GHA
- Version Management
- Rolling Updates
- Canary Deployments
- Blue/Green Deployments
- Activity: Version Management
Introducing Site Reliability Engineering (SRE)
- Site Reliability Engineering
- How SRE Implements DevOps
- SLOs, SLIs, and SLAs
- Activity: Defining SLOs and SLIs
DevSecOps Maturity
- The DevSecOps Maturity Model
- Assess Your Organization’s Maturity Level
- Activity: DevSecOps Maturity Model
- Continual Improvement