Procedimientos recomendados para políticas de ABAC

Tenga en cuenta los siguientes procedimientos recomendados para el diseño de directivas de ABAC y la gobernanza de etiquetas.

Estandarizar atributos y nomenclatura

Establezca una taxonomía de etiquetado coherente antes de crear directivas. Acordar los nombres de las claves de etiquetado, los valores permitidos y las convenciones de nomenclatura entre equipos. Un conjunto pequeño y bien definido de etiquetas es más fácil de administrar que una proliferación de etiquetas ad hoc.

Por ejemplo, use una sola sensitivity etiqueta con valores controlados (public, internal, confidential, restricted) en lugar de varias etiquetas superpuestas como is_sensitive, data_classy pii_level.

Controlar quién puede establecer etiquetas

El etiquetado es un límite de seguridad en ABAC. Si un usuario puede cambiar las etiquetas de un recurso de datos, puede cambiar las directivas que se aplican a él. Las etiquetas incorrectas o que faltan pueden dejar los datos desprotegidos o inaccesibles porque las directivas solo se aplican cuando están en vigor las etiquetas correctas.

  • Restrinja la creación y modificación de etiquetas a administradores de datos autorizados o administradores de gobernanza. Consulte Etiquetas reguladas para obtener información sobre cómo configurar permisos de etiqueta.
  • Audite los cambios de etiqueta periódicamente mediante la tabla del sistema de registro de auditoría.

Establecimiento de reglas de reserva para datos no clasificados

No suponga que todos los objetos están etiquetados correctamente. Use la automatización para aplicar estándares de etiquetado e implementar mecanismos de reserva para datos no clasificados:

  • Aplique una etiqueta restrictiva predeterminada (como classification : unverified) a nuevos objetos hasta que un administrador de datos los revise.
  • Cree una directiva que restrinja el acceso a los objetos con la etiqueta predeterminada.

Para obtener un ejemplo detallado, consulte Impedir el acceso hasta que se etiqueten columnas confidenciales.

Definición de directivas en el ámbito aplicable más alto

Adjunte directivas en el nivel de catálogo o esquema siempre que sea posible. Las directivas de nivel de tabla son poco frecuentes y deben ser la excepción.

Las directivas de ámbito de catálogo se evalúan en todas las tablas del catálogo y las directivas con ámbito de esquema se evalúan en todas las tablas del esquema. Al agregar nuevas tablas, las directivas existentes se aplican siempre que sus etiquetas coincidan con las condiciones de la directiva.

Evitar la expansión de la política

ABAC está diseñado para reducir el número de reglas de control de acceso, no aumentarlas. Si los equipos crean demasiadas etiquetas y directivas, el resultado es difícil de administrar y auditar.

  • Analice los requisitos de gobernanza antes de crear directivas.
  • Comience con un pequeño número de políticas generales, como el enmascaramiento de PII en un catálogo o el filtrado de filas regionales.
  • Evite crear una directiva independiente para cada caso límite.
  • Revise las directivas periódicamente y consolide las superpuestas.

Un gran número de directivas y condiciones complejas puede ralentizar las comprobaciones de autorización. Consulte Consideraciones de rendimiento para obtener más información.

Prefiera TO/EXCEPT para el objetivo principal de entidades

Cuando sea posible, use las cláusulas TO y EXCEPT de la directiva para definir a qué usuarios y grupos se aplica la directiva. Esto simplifica la lógica de UDF. La EXCEPT cláusula excluye a usuarios específicos de la directiva por completo, por lo que no están sujetos a ningún filtrado o enmascaramiento. Cuando se requiere lógica condicional compleja, las funciones de identidad como is_account_group_member() dentro de las UDF siguen siendo una opción válida.

Para obtener más información, consulte Enfoque para los principales de destino.

Planificar la evaluación dinámica de políticas

Las directivas de ABAC son dinámicas. A diferencia de los filtros de fila de nivel de tabla y las máscaras de columna, que son directamente visibles en la definición de la tabla, las directivas de ABAC se evalúan en el momento de la consulta en función de la identidad del usuario y las pertenencias a grupos, y las etiquetas del objeto de datos en el ámbito de la directiva. Esto puede dificultar a los consumidores de datos y a los propietarios de tablas comprender qué reglas de acceso se aplican a una tabla determinada.

  • Use SHOW EFFECTIVE POLICIES para determinar qué se aplica a una tabla específica.
  • Documente la taxonomía de etiquetado, las directivas y el enfoque de administración de grupos para que los equipos puedan comprender el modelo de gobernanza sin inspeccionar cada directiva individualmente.
  • Si la transparencia es fundamental para una tabla específica, considere la posibilidad de usar en su lugar filtros de fila de nivel de tabla y máscaras de columna para ese caso aislado. Asegúrese de solucionar los posibles conflictos en primer lugar.

Saber más

Tema Description
Consideraciones sobre el rendimiento Cómo afecta el diseño de directivas de ABAC al rendimiento de las consultas y cómo optimizar y probar las directivas.
Cuándo usar ABAC frente a filtros de filas a nivel de tabla y máscaras de columnas Diferencias en el ámbito, la propiedad y cómo elegir entre los dos enfoques.
Delta Sharing y ABAC Cómo compartir tablas protegidas con ABAC a través de Delta Sharing, manejar las políticas en el lado del destinatario y configurar vistas locales del destinatario.