Proprietà e gestione delle policy RLS - Amazon Redshift

Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dal 1º novembre 2025. Se desideri utilizzare le UDF Python, creale prima di tale data. Le UDF Python esistenti continueranno a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog.

Proprietà e gestione delle policy RLS

In qualità di utente con privilegi avanzati, amministratore della sicurezza o utente con il ruolo sys:secadmin, puoi creare, modificare, collegare e scollegare le policy RLS. Le policy RLS possono essere collegate a tabelle, viste, viste con associazione tardiva e viste materializzate. A livello di oggetto, puoi attivare o disattivare la sicurezza a livello di riga senza modificare la definizione dello schema per le tabelle.

Per iniziare con la sicurezza a livello di riga, di seguito sono riportate le istruzioni SQL che è possibile utilizzare:

  • Utilizza l’istruzione ALTER TABLE per attivare o disattivare RLS in una tabella, una vista o una vista con associazione tardiva. Per ulteriori informazioni, consulta ALTER TABLE.

  • Utilizza l’istruzione ALTER MATERIALIZED VIEW per attivare o disattivare RLS in una vista materializzata. Per ulteriori informazioni, consulta ALTER MATERIALIZED VIEW.

  • Utilizza l'istruzione CREATE RLS POLICY per creare una policy di sicurezza per una o più tabelle e specificare uno o più utenti o ruoli nella policy.

    Per ulteriori informazioni, consulta CREATE RLS POLICY.

  • Utilizza l'istruzione ALTER RLS POLICY per modificare la policy, ad esempio cambiandone la definizione. Puoi utilizzare la stessa policy per più tabelle o viste.

    Per ulteriori informazioni, consulta ALTER RLS POLICY.

  • Utilizza l'istruzione ATTACH RLS POLICY per collegare una policy a una o più relazioni, a uno o più utenti o ai ruoli.

    Per ulteriori informazioni, consulta ATTACH RLS POLICY.

  • Utilizza l’istruzione DETACH RLS POLICY per scollegare una policy da una o più relazioni, da uno o più utenti o dai ruoli.

    Per ulteriori informazioni, consulta DETACH RLS POLICY.

  • Utilizza l'istruzione DROP RLS POLICY per eliminare una policy.

    Per ulteriori informazioni, consulta DROP RLS POLICY.

  • Utilizza le istruzioni GRANT e REVOKE per concedere e revocare esplicitamente le autorizzazioni SELECT alle policy RLS che fanno riferimento alle tabelle di ricerca. Per ulteriori informazioni, consulta GRANT e REVOKE.

Per monitorare le policy create, sys:secadmin può visualizzare SVV_RLS_POLICY e SVV_RLS_ATTACHED_POLICY.

Per elencare le relazioni protette da RLS, sys:secadmin può visualizzare SVV_RLS_RELATION.

Per tracciare l'applicazione delle policy RLS su query che fanno riferimento a relazioni protette da RLS, un superutente, sys:operator o qualsiasi utente con l'autorizzazione di sistema ACCESS SYSTEM TABLE può visualizzare SVV_RLS_APPLIED_POLICY. Per impostazione predefinita, a sys:secadmin non sono concesse queste autorizzazioni.

Per consentire agli utenti l’accesso completo a una relazione protetta da RLS, puoi concedere l’autorizzazione IGNORE RLS. Agli utenti con privilegi avanzati o sys:secadmin l’autorizzazione IGNORE RLS viene concessa automaticamente. Per ulteriori informazioni, consulta GRANT.

Per spiegare i filtri delle policy RLS di una query nel piano EXPLAIN per la risoluzione dei problemi relativi alle query correlate a RLS, puoi concedere l'autorizzazione EXPLAIN RLS a qualsiasi utente. Per ulteriori informazioni, consulta GRANT e EXPLAIN.