{"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

Introduzione<\/h2>\n\n\n\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

Che cos\u2019\u00e8 l\u2019accesso tramite TBAC<\/h2>\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

Perch\u00e8 S3 da solo non basta<\/h2>\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

Utilizziamo l\u2019approccio TBAC in LakeFormation<\/h2>\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\n

\n
\"TBAC
Schema di esempio del nostro tutorial<\/em><\/figcaption><\/figure><\/div>\n\n\n

<\/p>\n\n\n\n

Migrazione di dati on-prem via AWS Glue<\/h3>\n\n\n\n

Il primo passo per la creazione di un Data Lake \u00e8 ovviamente quello di recuperare, trasformare e inserire i dati. In questo semplice esempio, abbiamo utilizzato un set di dati utente simulato da un database MySQL. La colla AWS \u00e8 il modo naturale per connettersi all’origine dati eterogenea, dedurre il loro schema importare e trasformare i dati e infine scriverli su S3 come spiegato in dettaglio qui<\/a>.<\/p>\n\n\n\n

Dopo che i dati sono stati caricati in un bucket S3 temporaneo, \u00e8 necessario creare un database in Lake Formation<\/strong> per connettersi a un Glue Crawler<\/strong> ed eseguirlo sul prefisso S3 per popolare un Glue Catalog per i dati.
Vai alla console AWS Lake Formation<\/strong>, nella pagina Database<\/em> nella scheda<\/strong>Data catalog<\/strong>, e inserisci un nome per il database e il tuo percorso su S3.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"create
Creare un nuovo Database da Lake Formation<\/em><\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Nota: la creazione di un database direttamente da Lake Formation assicura che le autorizzazioni siano correttamente associate ad esso; avremmo potuto fare la stessa cosa anche da AWS Glue, ma avremmo avuto bisogno di uno sforzo aggiuntivo per modificare le autorizzazioni per i passaggi successivi.<\/em><\/p>\n\n\n\n

Dopo che il database \u00e8 stato creato, abbiamo bisogno di creare un Glue Catalog, che \u00e8 un metastore contenente lo schema (schema-on-read) dei dati salvati su S3 (di solito come file parquet).
Avere uno schema Glue \u00e8 necessario per configurare i livelli di accesso da AWS Lake Formation per il proprio Data Lake su S3<\/strong>. Per farlo, basta creare un crawler e collegarlo allo stesso percorso S3 del database e impostare quel DB come output del crawler<\/strong>.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"AWS
Setup di un AWS Glue Crawler standard<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Per utilizzare il crawler, \u00e8 necessario un ruolo IAM, ma fortunatamente AWS ha un step per questo nella procedura guidata di creazione del crawler:<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"IAM
Come creare uno IAM role da utilizzare per il Crawler<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Non appena il Crawler \u00e8 creato, e i dati importati nel catalogo, siamo pronti per il prossimo step.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"Cloudwatch
Cloudwatch Logs dimostra che il Crawler ha funzionato correttamente<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

AWS Lake Formation<\/h3>\n\n\n\n

Avendo a disposizione un catalogo di dati di Glue, \u00e8 il momento di configurare Lake Formation per gestire finalmente le autorizzazioni di accesso degli utenti.
Per fare ci\u00f2, iniziamo andando nella dashboard di Lake Formation e rimuovendo i consueti permessi di accesso su S3<\/strong>.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"Lake
Dashboard di Lake Formation<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Quindi possiamo andare su Data Catalog Settings<\/em> e deselezionare Use only IAM access control for new databases <\/em>e Use only IAM access control for new tables in new databases.<\/em> 
Per impostazione predefinita, l’accesso alle risorse del catalogo dati e ai percorsi su Amazon S3 \u00e8 controllato esclusivamente dalle policy di AWS Identity and Access Management (IAM), deselezionando i valori rendiamo effettive le autorizzazioni<\/a> individuali di Lake Formation.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"Lake
Settaggi di Lake Formation data catalog: dobbiamo disabilitare entrambi i flag Use only<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Una volta che le responsabilit\u00e0 di accesso sono state delegate a Lake Formation<\/strong>, possiamo rimuovere l’accesso per il gruppo IAM standard IAMAllowedPrincipals<\/em>, nella scheda Permissions<\/em> del data lake; selezioniamo dunque permission of the IAM group<\/strong> e facciamo click su Revoke<\/em>.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"revoke
Rimuoviamo le autorizzazioni standard IAMAllowedPrincipals<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

L’utente che crea il data lake sar\u00e0 anche elencato in questa sezione con i privilegi di amministratore; se si desidera invece che l’utente mantenga l’accesso ai dati \u00e8 possibile lasciare l’autorizzazione cos\u00ec com’\u00e8, altrimenti \u00e8 possibile revocare o limitare l’autorizzazione all’utente\/ruolo.<\/strong><\/p>\n\n\n\n


Nota: se \u00e8 necessario aggiungere un Data lake administrator principal, \u00e8 possibile farlo accedendo ad Administrative roles and tasks e aggiungendo un <\/em>amministratore del Data Lake<\/em><\/strong>.<\/em><\/p>\n\n\n\n

<\/p>\n\n\n\n

\"adding
Aggiungiamo admin e db creator dalla console<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Una volta completati tutti questi passaggi, \u00e8 il momento di iniziare a definire i tag Lake Formation (da ora in poi LF-Tags<\/strong>), che verranno utilizzati per limitare l’accesso al data lake.<\/p>\n\n\n\n


Dalla pagina LF-Tag<\/em> sotto la scheda Permissions<\/em> creiamo un nuovo LF-Tag<\/strong>, come chiave utilizziamo level<\/em>, come valori invece private<\/em>, sensitive<\/em> e public<\/em> separati da virgola proprio come in figura. Facciamo infine click su Add LF-tag<\/strong>.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"Add
Creazione di un LF-Tag<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Ora, una volta creati, come possiamo utilizzare questi tag per imporre il controllo degli accessi? Per prima cosa andiamo nella sezione database e selezioniamo il nostro database<\/strong>, creato all’inizio del tutorial. Nelle azioni del database, possiamo selezionare il tag appena creato e il livello di autorizzazione.<\/p>\n\n\n\n

Di solito, lasciamo aperto l’accesso al database e limitiamo le autorizzazioni in base alla tabella e ai campi, ma questa scelta di solito varia a seconda del database. Nel nostro esempio, assegniamo il livello public all’intero database di esempio.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"Edit
Modifichiamo gli LF-Tag per un intero database<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Ora, se vogliamo restringere l\u2019accesso alle colonne contenenti informazioni personali nella tabella utenti<\/strong>, possiamo accedere alla tabella da modificare, selezionare una colonna specifica e modificare il suo LF-tag da public<\/strong> a private<\/strong> (come mostrato nelle figure successive).<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"database
Schema del database di esempio nel quale selezioniamo una colonna<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

\"Editing
Editiamo gli LF-Tag per i permessi sulle colonne<\/em><\/figcaption><\/figure>\n\n\n\n

<\/p>\n\n\n\n

Ora dobbiamo solo definire quali IAM principals (ad esempio il nostro user di prova) avranno accesso ad uno specifico livello di LF-Tag. Per fare questo, andiamo su Data lake permissions<\/em> e diamo i permessi ad un utente, ruolo o gruppo IAM accesso alle risoprse taggate con uno specifico LF-Tag<\/strong>.<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"read
Diamo un\u2019autorizzazione di read<\/em><\/figcaption><\/figure>\n\n\n\n

Questo esempio mostra come dare ad un utente l’accesso a tutte le risorse etichettate con \u201clevel\u201d: \u201cpublic\u201d.<\/p>\n\n\n\n

L\u2019utente di esempio potr\u00e0 cos\u00ec vedere tutti i nostri database ad eccezione dei dati personali etichettati come privati. Un altro utente potr\u00e0 avere accesso sia alle informazioni pubbliche che a quelle private, aggiungendo il livello private<\/em> nella sezione LF-Tag o, in generale, modificando i tag delle colonne in base alle proprie esigenze.<\/p>\n\n\n\n

Ora possiamo interrogare la tabella del database usando il nostro utente di prova che, in base al nostro set di autorizzazioni, non \u00e8 in grado di vedere la colonna first_name (che \u00e8 etichettata come privata).<\/p>\n\n\n\n

<\/p>\n\n\n\n

\"
Athena viene usato per fare query ai dati e dimostrare che la colonna first_name non \u00e8 mostrata nella select perch\u00e8 taggata come private<\/em><\/figcaption><\/figure>\n\n\n\n

Come mostrato nella figura, siamo riusciti a negare al nostro utente di prova il diritto di vedere una colonna “riservata” a nostra scelta.<\/p>\n\n\n\n

Vorremmo incoraggiare l’utente a sperimentare aggiungendo o rimuovendo anche le opzioni describe<\/em> e select<\/em> dai permessi LF-Tag nella sezione Data Lake, per vedere come sia possibile negare anche la visualizzazione di interi database o tabelle specifiche.<\/p>\n\n\n\n

Nota: a partire dal 3 novembre 2021 per migliorare la sicurezza, AWS Lake Formation ha anche aggiunto il supporto per gli endpoint VPC gestiti tramite AWS PrivateLink per accedere a un data lake in una Virtual Private Cloud.<\/em><\/p>\n\n\n\n

Feature in preview: sicurezza livello di riga<\/h2>\n\n\n\n

Lake Formation \u00e8 ancora un servizio giovane, quindi c’\u00e8 molto margine di miglioramento. AWS lavora costantemente per aumentare le funzionalit\u00e0 dei suoi servizi e Lake Formation non fa eccezione.<\/p>\n\n\n\n

AWS Lake Formation consente gi\u00e0 di impostare policy di accesso per nascondere i dati, ad esempio una colonna con informazioni riservate, agli utenti che non dispongono dell’autorizzazione per visualizzare tali dati.<\/p>\n\n\n\n

La sicurezza a livello di riga si aggiunger\u00e0 a ci\u00f2, consentendo di impostare criteri a livello di riga oltre ai criteri a livello di colonna.<\/p>\n\n\n\n

Un esempio potrebbe essere l’impostazione di una policy che dia a un data scientist l’accesso solo ai dati dell’esperimento contrassegnati con un ID specifico.<\/p>\n\n\n\n

Un altro aspetto interessante sarebbe condividere lo stesso Data Lake per set di dati diversi , riducendo cos\u00ec i costi e gli sforzi di gestione.<\/p>\n\n\n\n

Concludendo<\/h2>\n\n\n\n

In questo articolo abbiamo visto come possiamo sfruttare la potenza dei servizi AWS per lo storage e l’analisi dei dati per affrontare la sfida imposta dai Big Data, in particolare come gestire l’accesso, le autorizzazioni e la governance.<\/p>\n\n\n\n

Abbiamo dimostrato che i crawler di AWS Glue possono recuperare in modo efficace dati non strutturati da repository temporanei, che si tratti di database come RDS o on-premise, o storage di oggetti come S3, e ottenere uno schema per popolare un catalogo di Glue.<\/p>\n\n\n\n

Abbiamo visto che partendo da S3 e da un metadata store \u00e8 possibile creare un Lake Formation Catalog sopra S3, interamente gestito da AWS, per ridurre drasticamente lo sforzo di gestione per impostare e amministrare un Data lake.<\/p>\n\n\n\n

Abbiamo visto brevemente cos’\u00e8 una metodologia Tag-Based Access Control (TBAC) e come pu\u00f2 essere efficacemente utilizzata per gestire accessi e permessi.<\/p>\n\n\n\n

Abbiamo dimostrato che AWS Lake Formation pu\u00f2 applicare policy IAM e regole TBAC per concedere o limitare l’accesso a utenti e gruppi anche per riga\/colonna. Abbiamo dimostrato che con Lake Formation e AWS Glue, possimao oscurare i dati sensibili a committenti specifici.<\/p>\n\n\n\n

Abbiamo descritto gli LF-Tags in dettaglio, con un semplice tutorial. Infine, abbiamo parlato della sicurezza a livello di riga.<\/p>\n\n\n\n

Per concludere, possiamo dire che per le sfide relative ai Big Data e alle corrette soluzioni di storage, con un occhio di riguardo alle questioni di sicurezza e governance, le scelte possibili da fare sono sempre due: fai da te o optare per una soluzione gestita.<\/p>\n\n\n\n

In questo articolo abbiamo scelto una soluzione gestita per mostrare tutti i vantaggi di un approccio pi\u00f9 rigido al problema. Pur essendo una soluzione meno flessibile ad adattarsi, offre un servizio pi\u00f9 aderente alle best practices di AWS e meno oneri nell’amministrazione e nella governance.<\/p>\n\n\n\n

Come sempre, sentiti libero di commentare nella sezione sottostante e contattaci per qualsiasi dubbio, domanda o idea! Ci vediamo su Proud2beCloud<\/strong> tra un paio di settimane per un’altra storia emozionante!<\/p>\n","protected":false},"excerpt":{"rendered":"

Introduzione Il Big Data \u00e8 cresciuto rapidamente come modo per descrivere le informazioni ottenute da fonti eterogenee quando diventa incredibilmente […]<\/p>\n","protected":false},"author":6,"featured_media":3814,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[467],"tags":[444,277,465,461,541],"yoast_head":"\nLake Formation: Data Security e Data Governance mediante LF-TBAC - Proud2beCloud Blog<\/title>\n<meta name=\"description\" content=\"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Lake Formation: Data Security e Data Governance mediante LF-TBAC\" \/>\n<meta property=\"og:description\" content=\"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/\" \/>\n<meta property=\"og:site_name\" content=\"Proud2beCloud Blog\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-12T13:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-22T16:12:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.besharp.it\/wp-content\/uploads\/2021\/11\/Copertina-blog-12-11-21-social-ita.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Alessandro Gaggia\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Lake Formation: Data Security e Data Governance mediante LF-TBAC\" \/>\n<meta name=\"twitter:description\" content=\"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blog.besharp.it\/wp-content\/uploads\/2021\/11\/Copertina-blog-12-11-21-social-ita.png\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alessandro Gaggia\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/\",\"url\":\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/\",\"name\":\"Lake Formation: Data Security e Data Governance mediante LF-TBAC - Proud2beCloud Blog\",\"isPartOf\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/#website\"},\"datePublished\":\"2021-11-12T13:00:00+00:00\",\"dateModified\":\"2023-02-22T16:12:09+00:00\",\"author\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/f27fc12d10867c6ea6e0158ce4dd8924\"},\"description\":\"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.besharp.it\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Lake Formation: Data Security e Data Governance mediante LF-TBAC\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#website\",\"url\":\"https:\/\/blog.besharp.it\/it\/\",\"name\":\"Proud2beCloud Blog\",\"description\":\"il blog di beSharp\",\"alternateName\":\"Proud2beCloud Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.besharp.it\/it\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/f27fc12d10867c6ea6e0158ce4dd8924\",\"name\":\"Alessandro Gaggia\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f58dc28050f26409e22ab60346d06220?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f58dc28050f26409e22ab60346d06220?s=96&d=mm&r=g\",\"caption\":\"Alessandro Gaggia\"},\"description\":\"Head of software development di beSharp, Full-Stack developer, mi occupo di garantire lo stato dell\u2019arte di tutta la nostra codebase. Scrivo codice in quasi ogni linguaggio, ma prediligo Typescript. Respiro Informatica, Game design, Cinema, Fumetti e buona cucina. Disegno per passione!\",\"url\":\"https:\/\/blog.besharp.it\/it\/author\/alessandro-gaggia\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Lake Formation: Data Security e Data Governance mediante LF-TBAC - Proud2beCloud Blog","description":"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/","og_locale":"it_IT","og_type":"article","og_title":"Lake Formation: Data Security e Data Governance mediante LF-TBAC","og_description":"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.","og_url":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/","og_site_name":"Proud2beCloud Blog","article_published_time":"2021-11-12T13:00:00+00:00","article_modified_time":"2023-02-22T16:12:09+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/blog.besharp.it\/wp-content\/uploads\/2021\/11\/Copertina-blog-12-11-21-social-ita.png","type":"image\/png"}],"author":"Alessandro Gaggia","twitter_card":"summary_large_image","twitter_title":"Lake Formation: Data Security e Data Governance mediante LF-TBAC","twitter_description":"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.","twitter_image":"https:\/\/blog.besharp.it\/wp-content\/uploads\/2021\/11\/Copertina-blog-12-11-21-social-ita.png","twitter_misc":{"Scritto da":"Alessandro Gaggia","Tempo di lettura stimato":"14 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/","url":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/","name":"Lake Formation: Data Security e Data Governance mediante LF-TBAC - Proud2beCloud Blog","isPartOf":{"@id":"https:\/\/blog.besharp.it\/it\/#website"},"datePublished":"2021-11-12T13:00:00+00:00","dateModified":"2023-02-22T16:12:09+00:00","author":{"@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/f27fc12d10867c6ea6e0158ce4dd8924"},"description":"Configurazione di un Data Lake mediante Lake Formation con attenzione alla sicurezza e alla governance attraverso l'approccio LF-TBAC.","breadcrumb":{"@id":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.besharp.it\/it\/lake-formation-data-security-e-data-governance-mediante-lf-tbac\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.besharp.it\/it\/"},{"@type":"ListItem","position":2,"name":"Lake Formation: Data Security e Data Governance mediante LF-TBAC"}]},{"@type":"WebSite","@id":"https:\/\/blog.besharp.it\/it\/#website","url":"https:\/\/blog.besharp.it\/it\/","name":"Proud2beCloud Blog","description":"il blog di beSharp","alternateName":"Proud2beCloud Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.besharp.it\/it\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Person","@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/f27fc12d10867c6ea6e0158ce4dd8924","name":"Alessandro Gaggia","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/f58dc28050f26409e22ab60346d06220?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f58dc28050f26409e22ab60346d06220?s=96&d=mm&r=g","caption":"Alessandro Gaggia"},"description":"Head of software development di beSharp, Full-Stack developer, mi occupo di garantire lo stato dell\u2019arte di tutta la nostra codebase. Scrivo codice in quasi ogni linguaggio, ma prediligo Typescript. Respiro Informatica, Game design, Cinema, Fumetti e buona cucina. Disegno per passione!","url":"https:\/\/blog.besharp.it\/it\/author\/alessandro-gaggia\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts\/3807"}],"collection":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/comments?post=3807"}],"version-history":[{"count":0,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts\/3807\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/media\/3814"}],"wp:attachment":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/media?parent=3807"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/categories?post=3807"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/tags?post=3807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}