Clasificación y detección de datos de SQL

Se aplica a: SQL Server

La clasificación y detección de datos proporciona funcionalidades para detectar, clasificar, etiquetar y notificar la información confidencial de las bases de datos. Esto se puede hacer mediante T-SQL o SQL Server Management Studio (SSMS). La detección y clasificación de la información más confidencial (empresarial, financiera, sanitaria, etc.) pueden desempeñar un papel fundamental en el estado de protección de la información de la organización. Puede servir como infraestructura para lo siguiente:

  • Ayudar a cumplir los estándares de privacidad de datos.
  • Supervisar el acceso a bases de datos o columnas que contengan datos altamente confidenciales.

Nota:

La clasificación y detección de datos se admite para SQL Server 2012 y versiones posteriores, y se puede usar con SSMS 17.5 o versiones posteriores. Para Azure SQL Database, vea Clasificación y detección de datos de Azure SQL Database.

Información general

La clasificación y detección de datos constituye un nuevo paradigma de protección de la información para SQL Database, SQL Managed Instance y Azure Synapse, destinado no solo a proteger la base de datos, sino también los datos. Actualmente admite las siguientes funcionalidades:

  • Detección y recomendaciones: el motor de clasificación examina la base de datos e identifica las columnas que contienen datos potencialmente confidenciales. Después, proporciona una manera sencilla de revisar y aplicar las recomendaciones de clasificación apropiadas, así como de clasificar las columnas de forma manual.
  • Etiquetado: las etiquetas de clasificación de confidencialidad se pueden etiquetar de forma persistente en columnas.
  • Visibilidad: el estado de clasificación de la base de datos puede consultarse en un informe detallado que se puede imprimir o exportar para su uso con fines de cumplimiento y auditoría.

Detectar, clasificar y etiquetar columnas confidenciales

En la sección siguiente se describen los pasos necesarios para detectar, clasificar y etiquetar las columnas que contienen datos confidenciales en la base de datos, así como para ver el estado de clasificación actual de la base de datos y exportar informes.

La clasificación incluye dos atributos de metadatos:

  • Etiquetas: son los atributos principales de clasificación, que se usan para definir el nivel de confidencialidad de los datos almacenados en la columna.
  • Tipos de información: proporcionan más granularidad para el tipo de datos almacenados en la columna.

Para clasificar la base de datos de SQL Server:

  1. En SQL Server Management Studio (SSMS), conéctese a SQL Server.

  2. En el Explorador de objetos de SSMS, seleccione la base de datos que quiere clasificar y elija Tareas>Detección y clasificación de datos>Clasificación de datos...

    Captura de pantalla en la que se muestra el Explorador de objetos de SSMS con la opción Tareas > Detección y clasificación de datos > Clasificar datos… seleccionada.

  3. El motor de clasificación examina la base de datos en busca de columnas (en función únicamente de los nombres de columna) que contengan datos potencialmente confidenciales y proporciona una lista de clasificaciones de columna recomendadas.

    • Para ver la lista de clasificaciones de columna recomendadas, seleccione el cuadro de notificación de recomendaciones en la parte superior o en el panel de recomendaciones en la parte inferior de la ventana:

      Captura de pantalla en la que se muestra una notificación en la que se indica lo siguiente: Hemos encontrado 39 columnas con recomendaciones de clasificación. Haga clic aquí para verlas.

      Captura de pantalla en la que se muestra una notificación en la que se indica lo siguiente: 39 columnas con recomendaciones de clasificación. Haga clic para verlas.

    • Revise la lista de recomendaciones:

      • Para aceptar una recomendación para una columna específica, active la casilla en la columna izquierda de la fila correspondiente. También puede marcar todas las recomendaciones como aceptadas. Para ello, active la casilla del encabezado de la tabla de recomendaciones.

      • También puede cambiar el tipo de información y la etiqueta de confidencialidad recomendados mediante los cuadros desplegables.

      Captura de pantalla en la que se muestra la lista de recomendaciones.

    • Para aplicar las recomendaciones seleccionadas, seleccione el botón Guardar las recomendaciones seleccionadas.

      Captura de pantalla del botón Aceptar las recomendaciones seleccionadas.

Nota:

El motor de recomendaciones que realiza la detección automática de datos y proporciona recomendaciones de columna confidenciales se deshabilita cuando se usa el modo de directiva de Microsoft Purview Information Protection.

  1. Para mostrar las columnas clasificadas, seleccione el esquema adecuado y la tabla correspondiente en la lista desplegable y, a continuación, seleccione Cargar columnas.

    Captura de pantalla de la clasificación de datos de SSMS cargando columnas clasificadas.

  2. También puede clasificar manualmente las columnas como alternativa a la clasificación basada en recomendaciones, o además de ella:

    • En el menú superior de la ventana, seleccione Agregar clasificación.

      Captura de pantalla en la que se muestra el menú superior con la opción Agregar clasificación resaltada.

    • En la ventana contextual que se abre, introduzca el nombre de la columna que quiera clasificar, el tipo de información y la etiqueta de confidencialidad. El esquema y la tabla se seleccionan en función de las entradas de la página principal.

      Captura de pantalla en la que se muestra la ventana contextual Agregar clasificación.

    • Si desea agregar la clasificación para todas las columnas sin clasificar de una tabla específica en un solo intento, seleccione Todos sin clasificar en la lista desplegable Columna de la página Agregar clasificación.

      Captura de pantalla de la clasificación de datos de SSMS seleccionando todas las columnas sin clasificar

  3. Para completar la clasificación y etiquetar de forma persistente las columnas de la base de datos con los nuevos metadatos de clasificación, seleccione el botón Guardar en el menú superior de la ventana.

    Captura de pantalla en la que se muestra el menú superior con la opción Guardar resaltada.

  4. Para generar un informe con un resumen completo del estado de clasificación de la base de datos, seleccione Ver informe en el menú superior de la ventana. (También puede generar un informe mediante SSMS. Seleccione la base de datos en la que quiera generar el informe y elija Tareas>Detección y clasificación de datos>Generar informe...).

    Captura de pantalla en la que se muestra el menú superior con la opción Ver informe resaltada.

    Captura de pantalla en la que se muestra el informe de clasificación de datos de SQL.

Clasificación de la base de datos mediante la directiva de Microsoft Purview Information Protection

Nota:

Microsoft Information Protection (MIP en su forma abreviada) se ha cambiado de nombre a Microsoft Purview Information Protection. Los términos MIP y Microsoft Purview Information Protection a menudo se usan indistintamente en este documento, pero ambos hacen referencia al mismo concepto.

Las etiquetas Microsoft Purview Information Protection proporcionan una manera sencilla y uniforme para que los usuarios clasifiquen datos confidenciales en SQL Server. Las etiquetas de confidencialidad de MIP se crean y administran en el Centro de cumplimiento de Microsoft 365 (que se ha cambiado de nombre a Portal de cumplimiento Microsoft Purview). Para obtener información sobre cómo crear y publicar etiquetas confidenciales de MIP en el Portal de cumplimiento Microsoft Purview, consulte el artículo Etiquetas de confidencialidad de Microsoft Information Protection.

Ahora puede usar SSMS para clasificar los datos en el origen (SQL Server) mediante etiquetas de Microsoft Purview Information Protection, que se usan en Power BI, Office y otros productos de Microsoft. Estas etiquetas de confidencialidad se aplican en el nivel de columna de una base de datos, igual que la directiva de Information Protection de SQL.

Los conjuntos de datos o informes de Power BI que se conectan a datos con etiquetas de confidencialidad en orígenes de datos admitidos pueden heredar esas etiquetas automáticamente, de modo que los datos permanezcan clasificados cuando se incorporan a Power BI y se exportan a las aplicaciones de nivel descendente. La disponibilidad de la directiva de MIP de SSMS le permite lograr una solución de clasificación de un extremo a otro para toda la empresa.

Pasos para configurar la directiva Microsoft Purview Information Protection

  1. En SQL Server Management Studio (SSMS), conéctese a SQL Server.

  2. En el Explorador de objetos de SSMS, seleccione la base de datos que desea clasificar y seleccione Tareas>Detección y clasificación de datos>Establecer directiva de Microsoft Information Protection.

    Captura de pantalla para la directiva Microsoft Information Protection en SSMS

  3. Se mostrará una ventana de autenticación para Microsoft 365 para establecer la directiva de autenticación de Microsoft Information Protection. Seleccione Iniciar sesión y escriba o seleccione una credencial de usuario válida para autenticarse en el inquilino de Microsoft 365.

    Captura de pantalla de la autenticación para establecer la directiva de Microsoft Information Protection

  4. Si la autenticación se realiza correctamente, verá una ventana emergente con el estado Correcto.

    Captura de pantalla de la configuración de la directiva de Microsoft Information Protection en SSMS

  5. Opcional: Si desea iniciar sesión en cualquiera de las nubes soberanas de Microsoft para autenticarse en Microsoft 365, vaya a SSMS >Herramientas>Opciones>Azure Services>Azure Cloud y cambie el nombre a la nube soberana de Microsoft correspondiente.

    Captura de pantalla de la selección del tipo de nube de Azure en SSMS

  6. En la ventana del Explorador de objetos de SSMS, haga clic con el botón derecho en la base de datos que quiere clasificar y seleccione Tareas>Detección y clasificación de datos>Clasificación de datos. Ahora puede agregar una nueva clasificación mediante etiquetas de confidencialidad de MIP definidas en el inquilino de Microsoft 365 y usar esas etiquetas para clasificar columnas en SQL Server.

    Elección de las etiquetas de confidencialidad de directiva de Microsoft Information Protection de SSSMS

    La detección y recomendación automática de datos está deshabilitada en el modo de directiva de Microsoft Information Protection. Actualmente solo está disponible en el modo de directiva de Information Protection de SQL.

Para restablecer la directiva de Information Protection a predeterminada o Information Protection de SQL, vaya al Explorador de objetos de SSMS, haga clic con el botón derecho en la base de datos y elija Tareas>Detección y clasificación de datos>Restablecer valor predeterminado de la directiva de Information Protection. Esto aplicará la directiva predeterminada o de Information Protection de SQL y podrá clasificar los datos mediante etiquetas de confidencialidad de SQL en lugar de etiquetas MIP.

Captura de pantalla del restablecimiento de la directiva de Information Protection en SSMS

Para habilitar la directiva de Information Protection de un archivo JSON personalizado, vaya al Explorador de objetos de SSMS, haga clic con el botón derecho en la base de datos y elija Tareas>Detección y clasificación de datos>Establecer archivo de directiva de Information Protection.

Nota:

Un icono de advertencia indica que la columna se clasificó previamente mediante una directiva de Information Protection que el modo de directiva seleccionado actualmente. Por ejemplo, si actualmente está en el modo Microsoft Information Protection y una de las columnas se clasificó previamente mediante una directiva de Information Protection de SQL o una directiva de Information Protection desde un archivo de directiva personalizado, verá un icono de advertencia en esa columna. Puede decidir si desea cambiar la clasificación de la columna a cualquiera de las etiquetas de confidencialidad disponibles en el modo de directiva actual o dejarla tal como está. Captura de pantalla de la advertencia de clasificación de datos de directivas no coincidentes

Administración de la directiva de Information Protection con SSMS

Puede administrar la directiva de Information Protection mediante SSMS 18.4 o posteriores:

  1. En SQL Server Management Studio (SSMS), conéctese a SQL Server.

  2. En el Explorador de objetos de SSMS, seleccione una de las bases de datos y elija Tareas>Detección y clasificación de datos.

    Las siguientes opciones de menú permiten administrar la directiva de Information Protection:

  • Establecer directiva de Microsoft Information Protection: establece la directiva de Information Protection en la directiva de Microsoft Purview Information Protection.

  • Establecer archivo de directiva de Information Protection: usa la directiva de Information Protection de SQL tal y como se define en el archivo JSON seleccionado. (consulte el archivo de directiva de Information Protection predeterminado)

  • Exportar directiva de Information Protection: exporta la directiva de Information Protection a un archivo JSON.

  • Restablecer directiva de Information Protection: restablece la directiva de Information Protection a la directiva de Information Protection de SQL predeterminada.

Importante

El archivo de directiva de Information Protection no se almacena en SQL Server. SSMS usa una directiva de Information Protection predeterminada. Si se produce un error en una directiva de Information Protection personalizada, SSMS no podrá usar la directiva predeterminada. No se puede realizar la clasificación de datos. Para resolverlo, haga clic en Restablecer directiva de Information Protection para usar la directiva predeterminada y vuelva a habilitar la clasificación de datos.

Acceso a los metadatos de clasificación

SQL Server 2019 presenta la vista de catálogo del sistema sys.sensitivity_classifications. Esta vista devuelve los tipos de información y las etiquetas de confidencialidad.

En las instancias de SQL Server 2019, consulte sys.sensitivity_classifications para revisar todas las columnas clasificadas con sus clasificaciones correspondientes. Por ejemplo:

SELECT 
    schema_name(O.schema_id) AS schema_name,
    O.NAME AS table_name,
    C.NAME AS column_name,
    information_type,
	label,
	rank,
	rank_desc
FROM sys.sensitivity_classifications sc
    JOIN sys.objects O
    ON  sc.major_id = O.object_id
	JOIN sys.columns C 
    ON  sc.major_id = C.object_id  AND sc.minor_id = C.column_id

Antes de SQL Server 2019, los metadatos de clasificación para tipos de información y etiquetas de confidencialidad se almacenaban en las propiedades extendidas siguientes:

  • sys_information_type_name
  • sys_sensitivity_label_name

Para las instancias de SQL Server 2017 y versiones anteriores, en el ejemplo de código siguiente se devuelven todas las columnas clasificadas con sus clasificaciones correspondientes:

SELECT
    schema_name(O.schema_id) AS schema_name,
    O.NAME AS table_name,
    C.NAME AS column_name,
    information_type,
    sensitivity_label 
FROM
    (
        SELECT
            IT.major_id,
            IT.minor_id,
            IT.information_type,
            L.sensitivity_label 
        FROM
        (
            SELECT
                major_id,
                minor_id,
                value AS information_type 
            FROM sys.extended_properties 
            WHERE NAME = 'sys_information_type_name'
        ) IT 
        FULL OUTER JOIN
        (
            SELECT
                major_id,
                minor_id,
                value AS sensitivity_label 
            FROM sys.extended_properties 
            WHERE NAME = 'sys_sensitivity_label_name'
        ) L 
        ON IT.major_id = L.major_id AND IT.minor_id = L.minor_id
    ) EP
    JOIN sys.objects O
    ON  EP.major_id = O.object_id 
    JOIN sys.columns C 
    ON  EP.major_id = C.object_id AND EP.minor_id = C.column_id

Permisos

En instancias de SQL Server 2019, para ver la clasificación se necesita el permiso VER CUALQUIER CLASIFICACIÓN DE CONFIDENCIALIDAD. Para obtener más información, consulte Metadata Visibility Configuration.

Antes de SQL Server 2019, se podía acceder a los metadatos mediante la vista de catálogo de propiedades extendidas sys.extended_properties.

Para administrar la clasificación se necesita el permiso MODIFICAR CUALQUIER CLASIFICACIÓN DE CONFIDENCIALIDAD. ALTER ANY SENSITIVITY CLASSIFICATION está implícito en el permiso de base de datos ALTER, o en el permiso de servidor CONTROL SERVER.

Administración de clasificaciones

Puede utilizar T-SQL para agregar o quitar las clasificaciones de columna, y también para recuperar todas las clasificaciones para toda la base de datos.

Pasos siguientes

Para Azure SQL Database, vea Clasificación y detección de datos de Azure SQL Database.

Considere la posibilidad de proteger sus columnas confidenciales mediante la aplicación de mecanismos de seguridad en el nivel de columna: