es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Acceso a Redshift solo a unos pocos columnas en una vista.

Tengo una vista que se basa en otra vista.

Ejemplo:

create or replace view old_view as select * from new_view

No quiero que el usuario tenga acceso a todas las columnas en la old_view.

La new_view contiene mucha información confidencial personal (PII) y dado que la old_view se basa en la new_view,
quiero que usuarios específicos NO tengan acceso a algunas de las columnas en la old_view.

¿Cómo puedo hacer esto?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Puedes lograr esto creando una nueva vista basada en la old_view y seleccionando solo las columnas a las que el usuario específico tiene permitido acceder. Por ejemplo:

    create or replace view restricted_view as 
    select column1, column2, column3 
    from old_view;
    

    En este caso, la vista restricted_view solo tendrá acceso a las columnas seleccionadas (column1, column2 y column3) de la old_view. El usuario puede consultar ahora la restricted_view sin poder acceder a las columnas que contienen datos sensibles.

    Es importante tener en cuenta que este enfoque solo restringe el acceso a las columnas en la vista. Si el usuario tiene acceso a las tablas subyacentes, todavía puede acceder a los datos sensibles. Por lo tanto, es importante asegurarse de establecer permisos adecuados en las tablas subyacentes también.

Comments are closed.