{"id":3807,"date":"2021-11-12T14:00:00","date_gmt":"2021-11-12T13:00:00","guid":{"rendered":"https:\/\/blog.besharp.it\/?p=3807"},"modified":"2023-02-22T17:12:09","modified_gmt":"2023-02-22T16:12:09","slug":"lake-formation-data-security-e-data-governance-mediante-lf-tbac","status":"publish","type":"post","link":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/","title":{"rendered":"Lake Formation: Data Security e Data Governance mediante LF-TBAC"},"content":{"rendered":"\n
Il Big Data \u00e8 cresciuto rapidamente come modo per descrivere le informazioni ottenute da fonti eterogenee quando diventa incredibilmente difficile gestirle in termini di variet\u00e0<\/strong>, veridicit\u00e0<\/strong>, valore<\/strong>, volume<\/strong> e velocit\u00e0<\/strong>. Tuttavia, esso pu\u00f2 essere considerato il “nuovo petrolio a causa del potenziale di generare valore aziendale”.<\/p>\n\n\n\n Senza adeguate procedure di governance o di gestione della qualit\u00e0, i data lake possono trasformarsi rapidamente in \u201cpaludi\u201d di dati ingestibili. I data engineer sanno perfettamente che i dati di cui hanno bisogno vivono in questi data lake, ma senza una chiara strategia di governance dei dati, non saranno in grado di trovarli, fidarsi o utilizzarli in modo adeguato ai loro bisogni.<\/p>\n\n\n\n Una sfida molto comune \u00e8 mantenere<\/strong> la governance, il controllo degli accessi<\/strong> sugli utenti che operano sul Data Lake e la protezione delle informazioni sensibili.<\/p>\n\n\n\n Le aziende devono centralizzare la governance, il controllo degli accessi e applicare una strategia supportata da servizi managed per controllare in modo granulare l’accesso degli utenti ai dati.<\/p>\n\n\n\n Affrontare queste problematiche richiede tipicamente due approcci: manuale<\/em>, pi\u00f9 flessibile<\/strong> ma complesso<\/strong>; gestito<\/em> che richiede che la propria soluzione si adatti a standard specifici<\/strong>, ma in cambio elimina tutte le complessit\u00e0 di gestione<\/strong> per gli sviluppatori.<\/p>\n\n\n\n Questo articolo guider\u00e0 il lettore attraverso la configurazione del proprio Data Lake mediante Lake Formation, mostrando tutte le sfide che devono essere affrontate durante il processo mostrando un occhio particolare alla sicurezza e alla governance attraverso l’approccio LF-TBAC.<\/p>\n\n\n\n Il controllo degli accessi basato su tag, in breve TBAC<\/strong>, \u00e8 un modo sempre pi\u00f9 diffuso per risolvere queste sfide, applicando vincoli basati su tag associati a risorse specifiche.<\/p>\n\n\n\n Quindi, senza ulteriori indugi, andiamo a dare un’occhiata!<\/p>\n\n\n\n Il controllo degli accessi basato su tag consente agli amministratori di risorse abilitate per IAM di creare policy di accesso, basate su tag esistenti, associati a risorse idonee.<\/p>\n\n\n\n I provider cloud gestiscono i permessi sia degli utenti che delle applicazioni tramite delle policy, documenti con regole che fanno riferimento a risorse. Applicando i tag a tali risorse, \u00e8 possibile definire condizioni di allow\/deny semplici ed efficaci.<\/p>\n\n\n\n L’utilizzo dei tag di gestione degli accessi pu\u00f2 ridurre il numero di criteri di accesso necessari all’interno di un account cloud, fornendo anche un modo semplificato per concedere l’accesso a un gruppo eterogeneo di risorse.<\/p>\n\n\n\n S3, come la maggior parte dei servizi AWS, sfrutta i <\/strong>principal<\/em><\/strong> di IAM per la gestione degli accessi<\/strong>, il che significa che \u00e8 possibile definire quali parti di un bucket (file e cartelle o prefissi) un singolo principal IAM pu\u00f2 leggere o scrivere; tuttavia non \u00e8 possibile limitare ulteriormente l’accesso IAM a parti specifiche di un oggetto, n\u00e9 a determinati segmenti di dati archiviati all’interno di oggetti.<\/p>\n\n\n\n Ad esempio, supponiamo che i dati della nostra applicazione siano archiviati come una raccolta di file parquet suddivisi per paese in cartelle diverse.<\/p>\n\n\n\n \u00c8 possibile vincolare un utente ad accedere solo agli utenti appartenenti a un determinato paese<\/strong>. Tuttavia, non c’\u00e8 modo di impedire loro di leggere le informazioni anagrafiche (es. nome utente e indirizzo) memorizzate come colonne nel file parquet.<\/p>\n\n\n\n L’unico modo per impedire agli utenti di accedere a informazioni sensibili sarebbe crittografare le colonne prima di scrivere i file su S3<\/strong>, il che pu\u00f2 essere lento<\/strong>, ingombrante<\/strong> e aprire un “vaso di Pandora” per quanto riguarda l’archiviazione delle chiavi<\/strong>, la condivisione e, infine, la disattivazione delle chiavi<\/strong>.<\/p>\n\n\n\n Inoltre, concedere l’accesso a entit\u00e0 esterne utilizzando i principal IAM \u00e8 spesso di per s\u00e9 un problema non banale<\/strong>.<\/p>\n\n\n\n Fortunatamente, AWS offre una soluzione tutto-in-uno al problema delle autorizzazioni di Data Lake su S3<\/strong>: facciamo entrare in gioco AWS Lake Formation!<\/p>\n\n\n\n AWS Lake Formation \u00e8 un servizio completamente gestito che semplifica la creazione, la protezione e la gestione dei data lake, automatizzando molti dei complessi passaggi manuali necessari per crearli.<\/p>\n\n\n\n Lake Formation fornisce anche il proprio modello di autorizzazioni, che \u00e8 ci\u00f2 che vogliamo esplorare in dettaglio, che potenzia il classico modello di autorizzazioni AWS IAM<\/strong>.<\/p>\n\n\n\n Questo modello di autorizzazioni definito in modo centralizzato, consente l’accesso granulare ai dati archiviati nei data lake attraverso un semplice meccanismo di concessione\/revoca.<\/p>\n\n\n\n Quindi, sfruttando la potenza di Lake Formation, vorremmo dimostrare, con una soluzione semplice, come affrontare le suddette sfide di S3; proseguiamo!<\/p>\n\n\n\n Per accompagnare il lettore nella comprensione del motivo per cui AWS Lake Formation pu\u00f2 essere una buona scelta nell’affrontare le complessit\u00e0 della gestione di un DataLake, abbiamo preparato un semplice tutorial su come migrare dati eterogenei.<\/p>\n\n\n\n Dai database locali legacy a S3, creando anche un catalogo Lake Formation per gestire la pulizia dei dati, le autorizzazioni e ulteriori operazioni.<\/p>\n\n\n\n <\/p>\n\n\nChe cos\u2019\u00e8 l\u2019accesso tramite TBAC<\/h2>\n\n\n\n
Perch\u00e8 S3 da solo non basta<\/h2>\n\n\n\n
Utilizziamo l\u2019approccio TBAC in LakeFormation<\/h2>\n\n\n\n