Proteggere i Tuoi File Multimediali Rimuovendo i Metadati con AWS Lambda
Migliora la privacy e la sicurezza in vari settori rimuovendo i metadati EXIF e altri dalle immagini e dai video caricati

Nel mondo digitale di oggi, immagini e video spesso contengono metadati che rivelano una quantità sorprendente di informazioni sul file multimediale. Questi metadati, come i dati EXIF nelle immagini, possono includere dettagli sensibili come posizione, informazioni sul dispositivo e altro. Per proteggere la privacy degli utenti e migliorare la sicurezza, le aziende di vari settori possono trarre vantaggio dalla rimozione di questi metadati dai file multimediali. In questo blog post, ti guideremo attraverso un semplice script AWS Lambda che rimuove automaticamente i metadati da immagini e video caricati nei bucket S3.
Settori Che Possono Trarne Vantaggio:
- Piattaforme di Social Media: Le piattaforme di social media gestiscono un numero enorme di caricamenti multimediali ogni giorno. Rimuovendo i metadati, queste piattaforme possono proteggere meglio la privacy degli utenti.
- E-Commerce: I siti web di e-commerce spesso mostrano contenuti generati dagli utenti, come immagini di prodotti e recensioni. Rimuovere i metadati garantisce che le informazioni private dei clienti non vengano esposte inavvertitamente.
- Sanità: Il settore sanitario gestisce informazioni sensibili sui pazienti, incluse immagini e video di procedure mediche. Rimuovere i metadati è essenziale per conformarsi alle normative sulla privacy.
- News e Media: I giornalisti e le organizzazioni dei media pubblicano immagini e video che possono contenere informazioni sensibili su fonti o luoghi. Rimuovere i metadati può aiutare a proteggere queste informazioni.
- Istruzione: Le istituzioni educative ospitano e condividono vari file multimediali. La rimozione dei metadati garantisce la protezione delle informazioni private su studenti, docenti e soggetti di ricerca.
import boto3
import io
import os
from PIL import Image
from moviepy.editor import *
def lambda_handler(event, _):
bucket_name = os.environ[‘S3_BUCKET_NAME’]
s3 = boto3.client(‘s3’)
object_name = event[‘Records’][0][‘s3’][‘object’][‘key’]
file_name, file_extension = os.path.splitext(object_name)
supported_image_extensions = ['.jpg', '.jpeg', '.png', '.tiff', '.tif', '.heic', '.heif']
supported_video_extensions = ['.mp4', '.mov', '.avi', '.mkv', '.webm']
image_data = s3.get_object(Bucket=bucket_name, Key=object_name)
if file_extension.lower() in supported_image_extensions:
with io.BytesIO(image_data['Body'].read()) as image_file:
image = Image.open(image_file)
image_format = image.format
with io.BytesIO() as new_image_data:
image.save(new_image_data, format=image_format)
new_image_data.seek(0)
s3.put_object(Bucket=bucket_name, Key=object_name, Body=new_image_data, Tagging='ExifDeleted=True')
elif file_extension.lower() in supported_video_extensions:
with io.BytesIO(image_data['Body'].read()) as video_file:
video = VideoFileClip(video_file)
with io.BytesIO() as new_video_data:
video.write_videofile(new_video_data, codec='libx264', audio_codec='aac')
new_video_data.seek(0)
s3.put_object(Bucket=bucket_name, Key=object_name, Body=new_video_data, Tagging='ExifDeleted=True')
Nota che le librerie PIL e moviepy richiedono alcune librerie condivise, che potrebbero non essere disponibili nell'ambiente Lambda predefinito. Dovrai creare un layer Lambda personalizzato che includa entrambe le librerie condivise. Puoi seguire la guida ufficiale per creare un layer Lambda personalizzato per FFmpeg.
Ecco il Repository Github: https://github.com/flightlesstux/EXIF-Metadata-Remover
Conclusione
Lo script AWS Lambda che abbiamo fornito rende facile rimuovere i metadati da immagini e video caricati nei bucket S3, migliorando la privacy e la sicurezza in un'ampia gamma di settori. Implementando questa soluzione, puoi proteggere le informazioni degli utenti, ridurre i rischi potenziali e garantire la conformità con le normative sulla protezione dei dati.
Altro da Ercan
Altri due siti, stesso autore, terreno diverso.
IA, LLMs, agenti, ML applicato.
Note sul campo su workload IA. Analisi dei costi Bedrock, pattern di agenti, trade-off di storage vettoriale, failure mode in produzione.
Visita ercan.ai →L'hub. Chi sono, consulenza, contatti.
Hub personale per entrambe le tracce di scrittura. Chi sono, come funziona la consulenza, come contattarmi.
Visita ercanermis.com →