Skip to content

Instantly share code, notes, and snippets.

View gabanox's full-sized avatar

Gabriel Ramirez gabanox

View GitHub Profile
@gabanox
gabanox / generador_transacciones_tarjetas.py
Created October 1, 2025 16:29
Generador de Transacciones de Tarjetas de Crédito - Script Python para generar datos sintéticos con indicadores de fraude
"""
Generador de Transacciones de Tarjetas de Crédito
Genera datos sintéticos de transacciones para proyectos de machine learning
"""
import random
import pandas as pd
from datetime import datetime, timedelta
import json
@gabanox
gabanox / transacciones_tarjetas.csv
Created October 1, 2025 16:28
Generador de Transacciones de Tarjetas de Crédito - 1000 registros sintéticos con detección de fraude
We can make this file beautiful and searchable if this error is corrected: It looks like row 7 should actually have 15 columns, instead of 5 in line 6.
transaccion_id,cliente_id,fecha,hora,fecha_hora,tipo_tarjeta,numero_tarjeta,comercio,categoria,monto,ciudad,distancia_km,es_horario_inusual,estado,es_fraude
TXN_00000001,CLI_000191,2025-07-07,21:53:31,2025-07-07 21:53:31,American Express,37************3172,San Pablo,Farmacia,76.59,Ciudad de México,20.7,False,Aprobada,False
TXN_00000002,CLI_000125,2025-09-25,16:22:19,2025-09-25 16:22:19,Visa,4************7867,LinkedIn Learning,Educación,3303.68,Mérida,46.0,False,Aprobada,False
TXN_00000003,CLI_000101,2025-07-19,15:12:21,2025-07-19 15:12:21,American Express,37************2467,Telcel,Telecomunicaciones,374.24,Tijuana,7.3,False,Aprobada,False
TXN_00000004,CLI_000146,2025-08-05,14:53:06,2025-08-05 14:53:06,Visa,4************6322,Starbucks,Restaurante,1940.7,Mérida,8.38,False,Aprobada,False
TXN_00000005,CLI_000171,2025-09-16,02:02:04,2025-09-16 02:02:04,American Express,37************9097,Farmacia Guadalajara,Farmacia,180.01,Mérida,10.45,True,Aprobada,False
TXN_00000006,CLI_000072,2025-07-31,17:23:44,2025-07-31 17
AWSTemplateFormatVersion: '2010-09-09'
Description: >
Infraestructura mínima en AWS para instancia EC2 en VPC por defecto, siguiendo requerimientos del README.md.
Parameters:
LatestAmiId:
Type: 'AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>'
Default: 'ami-039a65ec6bd28e541'
Description: 'AMI más reciente de Amazon Linux 2023.'
VpcId:

Requerimientos de Diseño para la Infraestructura AWS

  1. Plantilla CloudFormation

    • El archivo de infraestructura debe llamarse infra.yml.
    • La plantilla debe ser clara, modular y seguir buenas prácticas de nomenclatura y organización de recursos.
  2. Red (VPC)

    • Utilizar la VPC por defecto de la cuenta, con el ID: vpc-086fe118b4ed5c6e4.
    • Todos los recursos deben estar asociados explícitamente a esta VPC.
#!/usr/bin/env bash
set -euo pipefail
# === Configuración de usuarios y grupos ===
declare -A OWNER_BY_GROUP=(
[Personnel]="emcbath"
[HR]="ctee"
[Finance]="dolberdi"
)
GROUPS=("Personnel" "HR" "Finance")
import redis
from redis.cluster import RedisCluster
import time
import random
from datetime import datetime
import uuid
from faker import Faker
# Configuración
REDIS_CONFIG_ENDPOINT = ''
import redis
import time
import random
from datetime import datetime, timedelta
import uuid
import threading
from faker import Faker
# Configurar Faker para generar datos falsos
fake = Faker()
import boto3
def publish_sqs_message():
client = boto3.client('sqs', region_name='us-east-1')
for i in range(100000000):
response = client.send_message(
QueueUrl='QueueURL',
MessageBody='Order # '+str(i)
)
@gabanox
gabanox / webinar-seguridad-s3.md
Created March 10, 2022 16:03
webinar-seguridad-amazon-s3

Webinar Protegiendo tus datos con Amazon S3

Estándar de prácticas recomendadas de seguridad fundamental en AWS

El estándar AWS Foundational Security Best Practices es un conjunto de controles que detectan cuando sus cuentas y recursos implementados se desvían de las prácticas recomendadas de seguridad. Proporciona orientación práctica y prescriptiva sobre cómo mejorar y mantener la postura de seguridad de su organización. Conozca más en el siguiente link AWS Security Hub Best Practices

Agenda

Control Detectivo Descripción
Resources:
SSMInstanceRole:
Type: "AWS::IAM::Role"
Properties:
RoleName: !Sub "SystemsManagerRole-${AWS::AccountId}"
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Principal: