Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:✅ endpoint di analisi SQL e Warehouse in Microsoft Fabric
La sicurezza a livello di riga in endpoint di analisi di Fabric Warehouse e SQL consente di controllare l'accesso alle righe in una tabella di database in base a ruoli utente e a predicati. Per ulteriori informazioni, vedi Sicurezza a livello di riga in Fabric Data Warehouse.
Questa guida illustra i passaggi per implementare la sicurezza a livello di riga in endpoint di analisi di Microsoft Fabric Warehouse o SQL.
Prerequisiti
Prima di iniziare, verificare di disporre di quanto segue:
- Un'area di lavoro Fabric con capacità attiva o capacità di valutazione.
- Un Warehouse di Fabric o un endpoint di analisi SQL in un Lakehouse.
- Diritti di Amministratore, di Membro o di Collaboratore nell'area di lavoro, oppure autorizzazioni elevate per il Warehouse o l'endpoint di analisi SQL.
1. Connettersi
- Accedi con un account con autorizzazioni elevate nell'endpoint Warehouse o SQL analytics. (Ruolo di amministratore/membro/collaboratore nell'area di lavoro oppure Permessi di controllo nel Warehouse o nell'endpoint di analisi SQL).
- Aprire l'area di lavoro Fabric e passare all'endpoint di analisi Warehouse o SQL in cui si vuole applicare la sicurezza a livello di riga.
2. Definire i criteri di sicurezza
Determinare i ruoli e i predicati da usare per controllare l'accesso ai dati. I ruoli definiscono chi può accedere ai dati e i predicati definiscono i criteri per l'accesso.
Creare predicati di sicurezza. I predicati di sicurezza sono condizioni che determinano le righe a cui un utente è autorizzato ad accedere. I predicati di sicurezza vengono creati come funzioni inline con valori di tabella.
-- Creating schema for Security CREATE SCHEMA Security; GO -- Creating a function for the SalesRep evaluation CREATE FUNCTION Security.tvf_securitypredicate(@UserName AS varchar(50)) RETURNS TABLE WITH SCHEMABINDING AS RETURN SELECT 1 AS tvf_securitypredicate_result WHERE @UserName = USER_NAME() OR USER_NAME() = 'BatchProcess@contoso.com'; GO -- Using the function to create a Security Policy CREATE SECURITY POLICY YourSecurityPolicy ADD FILTER PREDICATE Security.tvf_securitypredicate(UserName_column) ON sampleschema.sampletable WITH (STATE = ON); GOSostituire
YourSecurityPolicycon il nome del criterio,tvf_securitypredicatecon il nome della funzione predicato,sampleschemacon il nome dello schema esampletablecon il nome della tabella di destinazione.Questo esercizio presuppone che nella tabella dati sia presente una colonna,
UserName_column, che contiene il nome utente pertinente, popolato dalla funzione di sistema USER_NAME(). SostituireUserName_columncon una colonna nella tabella che contenga nomi utente.Sostituire
WHERE @UserName = USER_NAME();con una clausolaWHEREcorrispondente al filtro di sicurezza basato su predicato desiderato. Ad esempio, questa operazione filtra i dati in cui la colonnaUserName, mappata al parametro@UserName, corrisponde al risultato della funzione di sistema USER_NAME().- Facoltativamente, l'istruzione
WHEREinclude anche un'eccezione per il nome utente dell'identità gestita che gestisce lo spostamento dei dati, ad esempioBatchProcess@contoso.com.
- Facoltativamente, l'istruzione
Se necessario, ripetere questi passaggi per creare criteri di sicurezza per altre tabelle.
3. Verificare la sicurezza a livello di riga
Accedere a Fabric come utente membro di un ruolo con un criterio di sicurezza associato. Usare la query seguente per verificare il valore che dovrebbe risultare corrispondente nella tabella.
SELECT USER_NAME()Eseguire una query sulle tabelle di database per verificare che la sicurezza a livello di riga funzioni come previsto. Gli utenti dovrebbero visualizzare solo i dati che soddisfano il predicato di sicurezza definito nel proprio ruolo. Ad esempio:
SELECT * FROM sampleschema.sampletableSimili risultati filtrati per l'utente verranno filtrati con altre applicazioni che usano l'autenticazione con Microsoft Entra per l'accesso a database. Per altre informazioni, vedere L'autenticazione di Microsoft Entra come alternativa all'autenticazione SQL in Microsoft Fabric.
4. Monitorare e mantenere la sicurezza a livello di riga
Monitorare e aggiornare regolarmente i criteri di sicurezza a livello di riga man mano che i requisiti di sicurezza subiscono cambiamenti. Tenere traccia delle assegnazioni di ruolo e assicurarsi che gli utenti dispongano dell'accesso appropriato.