Защита и мониторинг хранилища данных

Завершено

Безопасность и мониторинг являются критически важными аспектами управления хранилищем данных.

Безопасность

Безопасность хранилища данных важна для защиты данных от несанкционированного доступа. Fabric предоставляет ряд функций безопасности, которые помогают защитить хранилище данных. Например:

  • Управление доступом на основе ролей (RBAC) для управления доступом к хранилищу и его данным.
  • Шифрование SSL для защиты связи между хранилищем и клиентскими приложениями.
  • служба хранилища Azure шифрование службы для защиты передаваемых и неактивных данных.
  • Azure Monitor и Azure Log Analytics для мониторинга активности хранилища и аудита доступа к данным.
  • Многофакторная проверка подлинности (MFA) для добавления дополнительного уровня безопасности к учетным записям пользователей.
  • Интеграция идентификатора Microsoft Entra для управления удостоверениями пользователей и доступом к хранилищу.

Разрешения рабочей области

Данные в Fabric организованы в рабочие области, которые используются для управления доступом и управления жизненным циклом данных и служб. Соответствующие роли рабочей области — это первая линия защиты при защите хранилища данных.

Помимо ролей рабочей области, вы можете предоставить разрешения на элементы и доступ через SQL.

Совет

Дополнительные сведения о ролях рабочих областей см . в Power BI .

Разрешения элемента

В отличие от ролей рабочей области, которые применяются ко всем элементам в рабочей области, можно использовать разрешения элемента для предоставления доступа к отдельным хранилищам. Это позволяет предоставлять общий доступ к одному хранилищу данных для потребления нижестоящего потока.

Вы можете предоставить пользователям разрешения через T-SQL или на портале Fabric. Предоставьте следующие разрешения пользователям, которым требуется доступ к хранилищу данных:

  • Чтение. Позволяет пользователю подключаться с помощью строка подключения SQL.
  • ReadData: позволяет пользователю считывать данные из любой таблицы или представления в хранилище.
  • ReadAll: позволяет пользователю считывать данные необработанных файлов parquet в OneLake, которые можно использовать Spark.

Подключение пользователя к конечной точке аналитики SQL завершится сбоем без разрешения на чтение как минимум.

Наблюдение

Мониторинг действий в хранилище данных имеет решающее значение для обеспечения оптимальной производительности, эффективного использования ресурсов и безопасности. Он помогает выявлять проблемы, обнаруживать аномалии и принимать меры для обеспечения плавной и безопасной работы хранилища данных.

Динамические административные представления (ДИНАМИЧЕСКИЕ административные представления) можно использовать для мониторинга состояния подключения, сеанса и запроса, чтобы просмотреть аналитические сведения о жизненном цикле запросов SQL в реальном времени. С помощью динамических административных представлений можно получить такие сведения, как количество активных запросов, и определить, какие запросы выполняются в течение длительного периода и требовать завершения.

В настоящее время доступно три динамических административных представления для использования в Fabric:

  • sys.dm_exec_connections. Возвращает сведения о каждом соединении между хранилищем и подсистемой.
  • sys.dm_exec_sessions. Возвращает сведения о каждом сеансе, прошедшем проверку подлинности между элементом и подсистемой.
  • sys.dm_exec_requests. Возвращает сведения о каждом активном запросе в сеансе.

Мониторинг запросов

Используйте "sys.dm_exec_requests", чтобы определить длительные запросы, которые могут повлиять на общую производительность базы данных, и принять соответствующие меры для оптимизации или прекращения этих запросов.

Начните с идентификации запросов, которые выполнялись в течение длительного времени. Используйте следующий запрос, чтобы определить, какие запросы выполняются в порядке убывания:

    SELECT request_id, session_id, start_time, total_elapsed_time
    FROM sys.dm_exec_requests
    WHERE status = 'running'
    ORDER BY total_elapsed_time DESC;

Вы можете продолжить изучение, чтобы понять, какой пользователь выполнил сеанс с длительным запросом, выполнив следующую команду:

    SELECT login_name
    FROM sys.dm_exec_sessions
    WHERE 'session_id' = 'SESSION_ID WITH LONG-RUNNING QUERY';

Наконец, можно использовать KILL команду для завершения сеанса с длительным запросом:

    KILL 'SESSION_ID WITH LONG-RUNNING QUERY';

Важно!

Для выполнения KILL команды необходимо быть рабочей областью Администратор. Рабочие области Администратор могут выполнять все три динамических представления. Роли участника, участника и средства просмотра могут видеть собственные результаты в хранилище, но не могут видеть результаты других пользователей.