Passa al contingut principal

Entrades

Projecte Flask + S3 #4: El MEU gestor S3(definitiu)

Començo donant les gràcies a les coses bones de l’any passat i les que no han sigut tan bones però que m’han fet veure el món des d'un altre punt de vista. I pels que voleu fer del món un de millor i de més segur, doncs et desitjo també el mateix, que compleixis els teus objectius i que res t’aturi. Bon any nou 2026. Vull finalitzar aquesta serie d’entrades al meu bloc sobre el projecte que vaig començar i que vas veure des del primer dia com es desenvolupa. Com ja saps, disposes de tota la resta aquí(Per ordre): - Projecte Flask + S3 : De 0 a connectat/  Preparació de l’entorn i requisits previs. - Projecte Flask + S3 #2 : El cervell i la xarxa de seguretat / Importància de la classe S3 i de les proves de funcionament.(Pytest) - Projecte Flask + S3 #3 : Del servidor local a S3/ Blueprints, connexió amb AWS S3, seguretat de pujada al bucket, html de Flask i templates. Arquitectura Quan miro el projecte ja acabat veig 3 capes que conformen un engranatge: la capa Client, la Servi...
Entrades recents

Projecte Flask + S3 #3: Del servidor local a S3

  Aquesta és la tercera part que parlo del projecte. Si encara no estàs seguint-lo, et recomano que miris les entrades anteriors dedicades al tema. A la primera part vam configurar l’entorn i decidir les pautes. A la segona , dedicàrem el seu temps a la importància de fer una bona classe S3Client i uns tests de pytest correctes. A l’hora de pensar en desenvolupar l’app , hem de canviar la manera de pensar. Passem d’una filosofia de backend en la que pensem únicament en Python - A una full-stack amb Flask. Què és un full-stack ? La seva traducció literal és una “pila complerta”, es refereix a quan en programació s’escriu un codi des de zero. I disposa de tres parts:  Front-end , la interfície d'usuari, és el que interactua directament des del seu dispositiu i en el nostre cas és HTML/Jinja2. Back-end , el cervell que s'encarrega de processar les peticions del Front-end, executar la lògica de l’aplicació, les autoritzacions i la connexió amb la base de dades. Base de dades , ...

Projecte Flask + S3 #2: El cervell i la xarxa de seguretat

  Aquesta és la segona part del projecte. Si has parat aqui et convido a consultar la primera entrada , on vam configurar l’entorn i vam establir els requisits previs. Ara passem a la implementació del codi. Objectiu d’avui/Introducció Documentar la creació del backend . Tot el desenvolupament del codi i que faré menció el podeu trobar al repositori corresponent al meu perfil de Git , o sigui que pots anar directament allà o obrir-lo a una finestra mentre veus els comentaris que descric. No vull deixar-me a aquesta introducció la importància que ha tingut pel bon i correcte desenvolupament del codi:  La documentació oficial d’ Amazon Web Services de Boto3  i les seves guies de millors pràctiques, per exemple . La Classe S3Client i la seva importància La finalitat de crear una classe S3Client com a façana/embolcall(més conegut com a Wrapper) és que amaga tota la complexitat de boto3. Faig un parèntesi, diguem que:  Estem creant "un embolcall dins d’un altre embol...

Projecte Flask + S3: De 0 a connectat

  Idea i objectiu  - Havent passat uns dies aprenent Python. M’he plantejat fer un petit projecte integrant la potencia de Python per fer automatitzacions, la gestió d’objectes al Cloud: S3 i d’una manera senzilla usar Flask d’això sí que no en tinc gaires coneixements però per algo es comença. Requisits de l’entorn: Python 3.10.12 : Versió base. AWS CLI . Configurat amb un usuari IAM. Per a aquest laboratori li he donat AmazonS3FullAccess (que és accés complet a S3). En un entorn de producció, les millors pràctiques(IAM) serien crear una política personalitzada que restrigeixi l’accès només a uns buckets específics seguint la regla del mínim privilegi, que és una regla que limita a l’usuari als recursos necessaris, ni més, ni menys. Un entorn virtual (aws-venv): Aislat al meu servidor de proves(Gojira). Llibreries claus : Boto3 és un SDK(Software Development Kit) una mena de traductor oficial d’Amazon, que passa les ordres de Python al llenguatge que necessita el servido...

Totalmente aleatorio

Adieu! e_e

Gojira SSH VS Code

Gojira SSH VS Code Actualización exprés en plan fotolog de cuando era adolescente. He abandonado el curso de VS Code porque no veía ningún progreso en las últimas unidades, ¡Toca andar, no leer como uno anda! Así que ya estoy empezando a escribir un poco, he cambiado a un curso llamado “ Python para todos ” de Raúl González de Mundo Geek y ahí estamos, si algo no funciona se cambia, no nos encabezonemos. He preparado el entorno para usar VS Code con la conexión al servidor Gojira, le he creado el entorno virtual como hemos hecho otras veces.  Para ello, entramos en nuestro terminal en MacOs, ssh gojira . Activamos el entorno digital. source ~/python-proyecto/venv/bin/activate . Que “python-proyecto” es la carpeta creada para nuestros proyectos-archivos Python. Abrimos VS Code y nos aseguramos de tener la extensión de Remote - SSH y la de Python. Después de esto Command+Shift+P y hacemos clic en Remote-SSH: Connect to Host>gojira y hará la conexión. Abrimos terminal, y activamos ...

Servidor Gojira y conexión SSH desde iMac

  Servidor Gojira ·Al final lo hice . Formateé el disco duro de Fedora y le puse Ubuntu Server 22.04 LTS . Este servidor lo he llamado “ Gojira ”. Pongo una imagen clave de la instalación del servidor como es la distribución del disco duro y vamos a la configuración de este. ·Le instale servicios y funciones clave de cara al futuro como AWS CLI o openSSH-server , le hice una buena partición para usar Docker . Le puse también Terraform . Y esta mañana le puse ‘ Oh my Zsh ’ para ponerle colores al terminal, parece una tontería pero ayuda mucho a saber si te equivocas al escribir los comandos, le puse unos colores más sobrios porque parecía el payaso de Micolor. ·Todo esto ha sido muy interesante y me ha requerido bastante tiempo, menos del que pensaba pero tiempo al fin y al cabo. Después de instalar todos los programas importantes que quería tener en el servidor, he pensado lo del tema de las capturas y digo voy a crear una conexión SSH con el servidor desde el iMac, así puedo ten...

Introducción a AWS IAM

Introduction to AWS Identity and Access Management (IAM) Antes de ponerme a explicar el lab, voy a explicar de forma corta en qué consiste IAM. Es un servicio que nos ayuda a controlar quién y a qué accede en la nube de AWS. Es el que asigna quien entra y qué puede tocar o ver(Permisos para usuarios, roles o servicios). Podemos tener usuarios individuales dentro, que no formen parte de ningún grupo como un administrador. Organizar los usuarios en grupos, para darles permisos conjuntamente. Darle permisos a roles o definir estos permisos escritos en JSON. Pues vamos allá. Este lab está dividido en 3 tareas. ·La primera dice: Exploración de usuarios y grupos. Una vez iniciado el Lab. Nos hace entrar en la pestaña de Personas. Ahí vemos 3 usuarios . Si hacemos clic al user-1 en la pestaña permisos vemos que user-1 no tiene permisos. Si vamos a la pestaña “Credenciales de seguridad”, user-1 tiene asignada una contraseña de consola. Si vamos a Grupos de personas , vemos que están c...