Conceptos generales de seguridad
Ciberseguridad para Desarrolladores: Protege tus Proyectos y Datos
Principales Riesgos de Seguridad en Empresas y Cómo Mitigarlos
Principios de Seguridad en AWS: Autenticación, Autorización y Auditoría
Funciona en mi local
Configuración de Webhooks y API REST con Go y ngrok
Creación de repositorios seguros y prevención de SQL Injection
Creación de Métodos Testeables con Mocks en Go
Introducción a DevSecOps
Implementación de DevSecOps con GitHub Actions para Desarrolladores
Automatización de Pruebas en Go con GitHub Actions
Pruebas Unitarias con Mocks en GitHub Actions
Gestión de Permisos y Presupuestos en AWS para Nuevas Arquitecturas
Seguridad en la arquitectura
Integración de GitHub Webhooks y AWS para Gestión de Commits
Gestión de Infraestructura como Código con Terraform en AWS
Infraestructura como Código con Terraform y Makefiles
Automatización de Infraestructura con Terraform: Roles y Políticas en AWS
Implementación de buckets y funciones Lambda con Terraform y AWS S3
Configuración de Bases de Datos en AWS con VPC y Seguridad IP
Configuración de Lambdas en VPC usando Terraform
Configuración de API Gateway para Lambdas en AWS
Evitando vulnerabilidades en el código
Configuración de Autenticación con Auth0 en Aplicaciones Web
Implementación de Authorizer con Auth0 en AWS Lambda
Conexión y Configuración de Lambda con AWS y Postgres
Configuración de Endpoints y Políticas en AWS con Terraform
Validación de Webhooks desde GitHub usando User Agent
Validación de Webhooks de GitHub con AWS Secrets Manager
Controles de seguridad sobre datos
Seguridad de Datos y Certificados SSL en AWS
Protección de Datos en Reposo con AWS KMS
Monitoring y alertas
Creación de un Sistema de Logs en Go para Observabilidad
Monitoreo y Auditoría en AWS con CloudWatch y CloudTrail
Creación de Alertas en AWS CloudWatch
CORS y cierre
Manejo de CORS en Desarrollo Web Seguro
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Iniciar tu proyecto en Go y configurar las dependencias adecuadas es fundamental para desarrollar aplicaciones robustas y escalables. Este contenido explicará cómo comenzar un proyecto de seguimiento en GitHub utilizando el lenguaje de programación Go y por qué es tan útil conocer las dependencias esenciales como Mux Router.
Vamos a crear una carpeta para almacenar nuestro código y, acto seguido, inicializaremos un archivo go.mod
para gestionar las dependencias de manera eficiente. Estos pasos son vitales para configurar el entorno de trabajo en Go.
Crear carpeta de proyecto: Inicia creando una carpeta llamada github-tracker
.
mkdir github-tracker
cd github-tracker
Inicializar go.mod
: Ejecuta el siguiente comando para crear el archivo que gestionará tus dependencias.
go mod init github-tracker
Crear el archivo principal: Crea un archivo main.go
donde centralizarás la lógica del proyecto. Importa el paquete principal y declara la función main
.
Configurar el router: Utiliza el Mux Router para gestionar tus rutas. Si aún no lo tienes, instálalo usando el sistema de dependencias de Go.
go get -u github.com/gorilla/mux
Para crear un API REST, declara las rutas y los controladores que se ejecutarán cuando lleguen las solicitudes. La implementación debe contemplar la gestión de los métodos HTTP, así como la producción y gestión de respuestas.
Inicializar una ruta con Mux:
import (
"github.com/gorilla/mux"
)
func main() {
router := mux.NewRouter()
router.HandleFunc("/hello", postHandler).Methods("POST")
}
Implementar el controlador de la ruta:
func postHandler(w http.ResponseWriter, r *http.Request) {
ioutil.ReadAll(r.Body)
defer r.Body.Close()
fmt.Println("Received POST request")
}
Iniciar el servidor:
http.ListenAndServe(":8080", router)
Configura webhooks en GitHub para escuchar eventos específicos y gestionarlos localmente. Puedes utilizar herramientas como ngrok para exponer tu servidor local a la red externa de forma segura y temporal.
Configurar ngrok:
Después de registrar ngrok, inicia un túnel al puerto 8080 que exponga tu aplicación a internet.
ngrok http 8080
Registrar webhook en GitHub:
Ingresa a la configuración de tu repositorio de GitHub, añade un nuevo webhook utilizando la URL proporcionada por ngrok. Configura para escuchar eventos de push
.
Validar entregas de webhook:
Verifica en el apartado de entregas recientes de GitHub la correcta recepción y procesamiento del payload enviado por el webhook.
Con estas instrucciones habrás configurado un sistema básico de seguimiento en GitHub utilizando Go y Mux Router, además de recibir webhooks localmente con ngrok. Este tipo de configuraciones son esenciales para desarrollar aplicaciones que interactúen con plataformas externas de manera eficiente y segura. Anímate a seguir explorando y mejorando tus proyectos en Go.
Aportes 9
Preguntas 0
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?