Requisiti, quote e limitazioni del controllo degli accessi in base al ruolo

Questa pagina elenca i requisiti, le quote dei criteri e le limitazioni correnti per il controllo degli accessi in base agli attributi nel catalogo unity.

Requisiti di calcolo

Per usare i criteri di controllo degli accessi basati sugli attributi, è necessario usare una delle seguenti configurazioni di calcolo:

Per indicazioni sull'esecuzione di carichi di lavoro che richiedono runtime meno recenti, vedere Accesso da runtime meno recenti.

Requisito dei tag regolati

I criteri di controllo degli accessi in base al ruolo usano tag regolati, non tag non governativi. I tag regolamentati vengono definiti a livello di account con controlli di accesso che determinano chi può creare, assegnare e gestirli. Per informazioni dettagliate, vedere Tag regolamentati.

Annotazioni

Dopo l'assegnazione o la modifica di un tag, l'applicazione della modifica può richiedere alcuni minuti.

Quote dei criteri

risorsa Limite
Criteri per metastore 10.000
Criteri per catalogo o schema 100
Criteri per tabella 50
Entità per criterio (si applica a entrambe TO le clausole e EXCEPT ) 20
Condizioni di colonna per MATCH COLUMNS clausola 3

Per altri dettagli, incluse le quote di tag regolati, vedere Limiti del servizio.

Limitazioni del controllo degli accessi in base al ruolo

Accesso da runtime meno recenti

Le risorse di calcolo standard e dedicate nelle versioni di Databricks Runtime precedenti alla 16.4 non possono accedere alle tabelle protette con controllo degli accessi in base al ruolo. Se sono necessari determinati carichi di lavoro per continuare l'esecuzione in un runtime precedente, definire l'ambito dei criteri di controllo degli accessi in base al ruolo a un gruppo specifico anziché applicarlo su larga scala. Aggiungere solo gli utenti o le entità da applicare al gruppo e escludere l'entità che esegue il carico di lavoro di runtime precedente usando la EXCEPT clausola . Gli utenti esterni al gruppo mantengono l'accesso completo alle tabelle sottostanti. Ciò consente al carico di lavoro di continuare ad accedere alle tabelle durante la transizione a un runtime supportato.

Criteri di controllo degli accessi in base al ruolo nelle visualizzazioni

Non è possibile applicare i criteri di controllo degli accessi in base al ruolo direttamente alle visualizzazioni. Tuttavia, quando un utente esegue una query su una vista che fa riferimento a tabelle con criteri di controllo degli accessi in base al ruolo, tali criteri vengono rispettati quando accedono ai dati tramite la visualizzazione.

I filtri di riga ABAC e le maschere di colonna nelle tabelle sottostanti vengono valutati usando l'identità dell'utente della sessione, ovvero la persona che esegue la query. L'utente visualizza solo le righe e i valori delle colonne a cui sono autorizzati ad accedere, come definito dai criteri di controllo degli accessi in base nelle tabelle di base. I controlli di accesso alle tabelle di base e i controlli di accesso alle dipendenze usano l'identità del proprietario della vista, in modo che gli utenti possano eseguire query sulle viste senza privilegi diretti sulle tabelle sottostanti.

Annotazioni

Lo stesso modello di identità utente sessione si applica quando si accede alle tabelle con criteri di controllo degli accessi in base al ruolo tramite le funzioni.

Il modello di identità utente sessione è stato introdotto insieme alla versione ABAC GA. In precedenza, i criteri venivano valutati usando l'identità del proprietario o della funzione del proprietario della visualizzazione. Per altre informazioni, vedere le note sulla versione di aprile 2026.

Criteri di controllo degli accessi in base al ruolo nelle viste materializzate e nelle tabelle di streaming

Annotazioni

In precedenza, i criteri di controllo degli accessi in base al ruolo nelle viste materializzate e nelle tabelle di streaming erano supportati solo quando il proprietario della pipeline o l'identità run-as era esente dai criteri. Tale limitazione è stata rimossa.

Quando una pipeline aggiorna una vista materializzata o una tabella di streaming, i criteri vengono valutati usando l'identità del proprietario o dell'esecuzione della pipeline. Se tale identità è soggetta ai criteri, la vista materializzata o la tabella di streaming contiene in modo permanente dati mascherati o filtrati. Databricks consiglia di mantenere l'identità di aggiornamento esentata usando la EXCEPT clausola e i consumer destinati a visualizzare i dati mascherati o filtrati nella TO clausola .

Condivisione differenziale di tabelle con criteri o viste ABAC che vi fanno riferimento

Le tabelle con criteri o viste ABAC che fanno riferimento a tabelle con criteri di controllo degli accessi in base al ruolo possono essere condivise solo tramite condivisione differenziale se il proprietario della condivisione è esente dai criteri elencati nella EXCEPT clausola . I criteri non regolano l'accesso del destinatario. I destinatari possono applicare i propri criteri di controllo degli accessi in base al ruolo alle tabelle condivise per applicare il controllo di accesso sul proprio lato.

Per informazioni dettagliate su come usare la condivisione delta con il controllo degli accessi in base al ruolo, vedere Condivisione differenziale e controllo degli accessi in base al ruolo.

Tempo di viaggio e clonazione in tabelle con criteri di controllo degli accessi in base al ruolo

I criteri di controllo degli accessi in base al ruolo non possono essere valutati rispetto agli snapshot cronologici della tabella, quindi le query di spostamento del tempo hanno esito negativo nelle tabelle con filtri di riga o maschere di colonna attive. I cloni profondi e superficiali non sono supportati anche nelle tabelle con criteri di controllo degli accessi in base al ruolo.

Per abilitare queste operazioni, creare un'entità servizio o un gruppo e aggiungerlo alla clausola del EXCEPT criterio. I criteri non vengono valutati per le entità esentate, quindi queste operazioni possono essere eseguite.

Importante

Le entità esentate visualizzano dati non filtrati e non mascherati. Esentare solo le identità attendibili, ad esempio le entità servizio usate per i carichi di lavoro ETL o pipeline.

Ad esempio, i criteri seguenti mascherano le colonne PII per tutti gli utenti, ad eccezione di etl_service_principal, che possono eseguire query di viaggio in fase di esecuzione e clonare le operazioni:

CREATE POLICY mask_pii
ON CATALOG prod
COLUMN MASK prod.governance.mask_value
TO `account users`
EXCEPT `etl_service_principal`
FOR TABLES
MATCH COLUMNS
  has_tag_value('pii', 'ssn') AS ssn
ON COLUMN ssn;

Indici di ricerca vettoriali e criteri di controllo degli accessi in base al ruolo

I criteri di controllo degli accessi in base al ruolo in una tabella di origine non si applicano agli indici di ricerca vettoriali creati da tale tabella. L'indice sincronizza tutte le righe della tabella di origine e non applica criteri di filtro di riga o maschera di colonna durante la gestione delle query.

Per le tabelle con maschere di colonna, è possibile escludere colonne mascherate dall'indice usando le colonne da sincronizzare .

Più criteri nella stessa tabella o colonna per lo stesso utente

Solo un filtro di riga distinto può essere risolto in fase di esecuzione per una determinata tabella e un determinato utente e una sola maschera di colonna distinta può risolvere per una determinata colonna e un determinato utente. È possibile definire più criteri, ma quando un utente esegue una query sulla tabella, è necessario che corrispondano solo le condizioni di un criterio. Se più filtri di riga o maschere di colonna distinti si applicano allo stesso utente e tabella o colonna, Azure Databricks blocca l'accesso e restituisce un errore. Se si risolvono nello stesso filtro di riga o nella stessa funzione definita dall'utente della maschera di colonna con gli stessi argomenti, sono consentiti più criteri.

Per informazioni dettagliate, vedere Regole per più filtri e maschere.

Criteri di controllo degli accessi in base al ruolo e schema delle informazioni

Non esiste alcuna tabella dello schema delle informazioni per i criteri di controllo degli accessi in base al ruolo. Le information_schema.row_filters tabelle e information_schema.column_masks mostrano solo filtri di riga a livello di tabella e maschere di colonna. Non visualizzano definizioni di criteri ABAC o filtri e maschere derivate dai criteri ABAC in fase di esecuzione.

Per elencare i criteri di controllo degli accessi in base al ruolo, usare l'API REST del catalogo unity. Gli eventi di creazione, modifica ed eliminazione dei criteri vengono acquisiti nella tabella di sistema del log di controllo.

Controllo degli accessi in base al ruolo nel calcolo dedicato

Per le limitazioni del controllo degli accessi basato sugli attributi nei calcoli dedicati, vedere Limitazioni.

Limitazioni comuni ai filtri di riga a livello di tabella e alle maschere di colonna

Per limitazioni generali dei filtri di riga e delle maschere di colonna applicabili sia ai filtri di riga a livello di tabella che alle maschere di colonna, vedere Limitazioni.