データの検出と分類

適用対象:Azure SQL データベースAzure SQL Managed InstanceAzure Synapse Analytics

データの検出と分類は、Azure SQL Database、Azure SQL Managed Instance、および Azure Synapse Analytics に組み込まれています。 これにより、データベース内の機密データの検出、分類、ラベル付け、およびレポート作成を行うための基本的な機能が提供されます。

最も機密性の高いデータには、ビジネス、財務、医療、個人情報などが含まれる場合があります。 次のような場合にインフラストラクチャとして使用できます。

  • データのプライバシーと規制コンプライアンスの要件への基準を満たすための支援。
  • さまざまなセキュリティ シナリオ (機密データに対するアクセスの監視 (監査) など)。
  • 機密性の高いデータを含むデータベースへのアクセスの制御と、セキュリティの強化。

オンプレミスの SQL Server については、「SQL データの検出と分類」をご覧ください。

Microsoft Purview Information Protectionポリシー(プレビュー版)を使用するラベルベースのアクセス保護は廃止され、もはや利用できません。 詳細については、Azure SQL DatabaseのMicrosoft Purview Information Protectionポリシーをご覧ください。

データの検出と分類とは

現在、データの検出と分類は以下の機能をサポートしています。

  • 検出と推奨事項: 分類エンジンは、データベースをスキャンして、機密データが含まれる可能性のある列を識別します。 その後、Azure portal を使って、推奨される分類を確認して適用するための簡単な方法を提供します。

  • ラベル付け: SQL Server データベース エンジンに追加された新しいメタデータ属性を使用して、機密度の分類ラベルを列に永続的に適用できます。 このメタデータは、機密度に基づく監査のシナリオに利用できます。

  • クエリ結果セットの機密度: 監査のため、クエリ結果セットの機密度がリアルタイムで計算されます。

  • 可視性: データベースの分類状態は、Azure portal の詳細ダッシュボードで見ることができます。 また、コンプライアンスと監査の目的や他のニーズのために使用される Excel 形式のレポートをダウンロードできます。

機密性の高い列の検出、分類、ラベル付け

このセクションでは、次の手順について説明します。

  • データベース内の機密データを含む列の検出、分類、ラベル付け。
  • データベースの現在の分類状態の表示と、レポートのエクスポート。

分類には、次の 2 つのメタデータ属性が含まれます。

  • ラベル:列に格納されるデータの機密レベルを定義するために使用される、主な分類属性。
  • 情報の種類:列に格納されているデータの型に関するより詳細な情報を提供する属性。

Information Protection ポリシー

Azure SQL では、SQL Information Protection ポリシーと Microsoft Information Protection ポリシーの両方がデータ分類で提供され、要件に基づいてこれら 2 つのポリシーのいずれかを選択できます。

Information Protection ポリシーの種類のスクリーンショット。

SQL Information Protection ポリシー

データの検出と分類には、SQL 論理サーバーにネイティブな検出ロジックを備えた秘密度ラベルと情報の種類のビルトイン セットが付属しています。 既定のポリシー ファイルで使用できる保護ラベルを引き続き使用することも、この分類をカスタマイズすることもできます。 一連の分類コンストラクトとその優先度をお使いの環境に合わせて定義できます。

分類法を定義してカスタマイズする

Azure 組織全体の分類法の定義とカスタマイズは 1 か所で行われます。 この場所は、セキュリティ ポリシーの一環として、Microsoft Defender For Cloud にあります。 このタスクは、組織のルート管理グループの管理者権限を持つユーザーのみが実行できます。

ポリシー管理の一環として、カスタム ラベルを定義し、優先度を設定し、そのラベルを、選択した一連の情報の種類に関連付けることができます。 独自のカスタム情報の種類を追加し、文字列パターンで構成することもできます。 パターンは、データベース内のこの種類のデータを識別するための検出ロジックに追加されます。

詳細については、Microsoft Defender for Cloud 上での SQL 情報保護ポリシーのカスタマイズ (プレビュー) に関する記事を参照してください。

組織全体のポリシーを定義したら、カスタマイズしたポリシーを使用して個別のデータベースの分類を続行できます。

SQL Information Protection ポリシー モードでデータベースを分類する

次の例では Azure SQL Database を使用しますが、データの検出と分類を構成する適切な製品を選択する必要があります。

  1. Azure ポータルにアクセスします。

  2. [Azure SQL Database] ペインの [セキュリティ] 見出しの下の [データの検出と分類] に移動します。 [概要] タブには、データベースの現在の分類状態の概要が表示されます。 この概要には、分類済みのすべての列の詳細なリストが含まれ、これをフィルター処理して、特定のスキーマの部分、情報の種類、ラベルのみを表示することもできます。 まだどの列も分類していない場合は、手順 4. に進みます

    データ発見と分類がハイライトされた概要タブのスクリーンショット。

  3. Excel 形式でレポートをダウンロードするには、ペイン上部のメニューの [エクスポート] を選択します。

  4. データの分類を開始するには、[データの検出と分類] ページの [分類] タブを選択します。

    分類エンジンによって、機密データが含まれる可能性のある列についてデータベースがスキャンされ、推奨される列の分類のリストが提供されます。

  5. 分類の推奨事項を表示して適用します。

    • 推奨される列の分類のリストを表示するには、ペインの下部にある推奨事項パネルを選択します。

    • 特定の列の推奨事項を受け入れるには、関連する行の左側の列のチェック ボックスをオンにします。 推奨事項テーブル ヘッダーの左端のチェック ボックスをオンにして、すべての推奨事項を受け入れ済みとしてマークすることもできます。

    • 選択した推奨事項を適用するには、 [選択した推奨事項を受け入れます] を選択します。

    分類に関する推奨事項のスクリーンショット。

    自動データ検出を実行し、機密性の高い列の推奨事項を提供するレコメンデーション エンジンは、Microsoft Purview Information Protection ポリシー モードが使用されている場合は無効になります。

  6. 代わりに、列を手動で分類することもできます。さらに、推奨事項ベースの分類について、次の操作を実行することもできます。

    1. ペインの上部のメニューで [分類の追加] を選択します。

    2. 表示されたコンテキスト ウィンドウで、分類するスキーマ、テーブル、列と、情報の種類および機密ラベルを選択します。

    3. コンテキスト ウィンドウの下部にある [分類の追加] をクリックします。

    手動で分類を追加する方法を示すスクリーンショットです。

  7. 分類を完了し、新しい分類メタデータでデータベース列に永続的にラベル (タグ) を付けるには、 [分類] ページで [保存] を選択します。

Microsoft Purview Information Protection ポリシー

Microsoft Information Protection (MIP) は、Microsoft Purview 情報保護としてブランド変更されました。 このドキュメントでは、"MIP" と "Microsoft Purview 情報保護" の両方を同じように使用しますが、同じ概念を参照してください。

Microsoft Purview Information Protection ラベルは、ユーザーがさまざまな Microsoft アプリケーション間で機密データを一様に分類するためのシンプルで統一された方法を提供します。 MIP の秘密度ラベルは、Microsoft Purview コンプライアンス ポータルで作成および管理します。 Microsoft Purview コンプライアンス ポータルで MIP の秘密度ラベルを作成して公開する方法については、「秘密度ラベルを作成して発行する」に関する記事を参照してください。

Microsoft Purview 情報保護 ポリシーに切り替える前提条件

  • Azure SQL Database で情報保護ポリシーを設定または変更すると、テナントの下にあるすべてのデータベースに対応する情報保護ポリシーが設定されます。 情報保護ポリシーを SQL Information Protection ポリシーから MIP ポリシーに変更するには、ユーザーまたはペルソナにテナント全体のセキュリティ 管理アクセス許可が必要です。その逆も同様です。

  • テナント全体のセキュリティ管理者アクセス許可を持つユーザーまたはペルソナは、テナントのルート管理グループ レベルでポリシーを適用できます。 詳細については、「テナント全体のアクセス許可を自分に付与する」を参照してください。

    Azureポータルでテナントレベルのセキュリティ管理者権限を要求したスクリーンショットです。

  • テナントにはアクティブな Microsoft 365 サブスクリプションがあり、現在のユーザーに対して発行されたラベルがあります。 詳細については、「機密ラベルとそのポリシーを作成して構成する」を参照してください。

Microsoft Purview Information Protection ポリシー モードでデータベースを分類する

  1. Azure ポータルにアクセスします。

  2. Azure SQL Database のデータベースに接続します。

  3. データベース ウィンドウの [セキュリティ] ヘッダーで、[データの検出と分類] に移動します。

  4. [Microsoft Information Protection policy] (Microsoft Information Protection ポリシー) を選択するには、[概要] タブを選択し、[構成] を選択します。

  5. [Information Protection ポリシー] オプションの [Microsoft Information Protection policy] (Microsoft Information Protection ポリシー) を選択し、[保存] を選択します。

    Azure SQL Database で Microsoft Information Protection ポリシーを選択するスクリーンショット。

  6. 分類タブに行くか、「分類を追加」を選択すると、Microsoft 365のセンシティビュースラベルがSensitivityラベルのドロップダウンリストに表示されます。

    Sensitivityラベルのドロップダウンリストのスクリーンショットです。

    [分類] タブの [機密ラベル] を示すスクリーンショット。

  • 情報の種類は、MIP ポリシー モードでは [n/a] で、自動データ検出検出と提案は無効のままとなります。

  • 列が現在アクティブなポリシーとは異なる Information Protection ポリシーを使用して分類されている場合、既に分類済みのその列の横に警告アイコンが表示されることがあります。 たとえば、その列が以前に SQL Information Protection ポリシーのラベルを使用して分類されており、現在は Microsoft Information Protection ポリシー モードになっている場合は、その特定の列に警告アイコンが表示されます。 警告アイコンは情報提供であり、問題を示すものではありません。

    情報保護ポリシーの違いにより分類済みの列に対して表示される警告のスクリーンショット。

Azure SQL Database 向けの Microsoft Purview Information Protection ポリシー

重要

Microsoft Purview Information Protection のAzure SQL Database Policy は廃止されました。 Microsoft Purview Information Protection(MIP)アクセスポリシーを通じて、機密カラムのアクセス制御を設定または強制することはできなくなり、この機能で設定された既存のアクセスポリシーももはや強制されません。

以前は、Azure SQL DatabaseはPurviewアクセスポリシーを使用して、Microsoft Purview Information Protectionのセンシティーラベルが付いた列に対するアクセス制御の強制をサポートしていました。

秘密度ラベルを通じてアクセスを制御する Microsoft Purview の保護ポリシーは、Microsoft Fabric でも引き続き利用できます。 詳細については、Microsoft Fabricの保護ポリシーをご覧ください。

機密データへのアクセスを監査する

分類の重要な点は、機密データへのアクセスを監視できることです。 Azure SQL監査には、監査ログに「data_sensitivity_information」というフィールドが含まれています。 このフィールドは、クエリが返すデータの感度分類(ラベル)を記録します。 次に例を示します。

サンプル監査ログクエリの結果セットのスクリーンショットです。

これらのT-SQLアクティビティは、感度情報で監査可能です:

  • ALTER TABLE ... DROP COLUMN
  • BULK INSERT
  • SELECT
  • DELETE
  • INSERT
  • MERGE
  • UPDATE
  • UPDATETEXT
  • WRITETEXT
  • DROP TABLE
  • BACKUP
  • DBCC CloneDatabase
  • SELECT INTO
  • INSERT INTO EXEC
  • TRUNCATE TABLE
  • DBCC SHOW_STATISTICS
  • sys.dm_db_stats_histogram

sys.fn_get_audit_file を使用して、Azure Storage アカウントに格納されている監査ファイルから情報を返します。

アクセス許可

次の組み込みロールでは、データベースのデータ分類を読み取ることができます。

  • 所有者
  • リーダー
  • 投稿者
  • SQLセキュリティマネージャー
  • ユーザーアクセス管理者

データベースのデータ分類を読み取るには、次の操作を行う必要があります。

  • Microsoft.Sql/servers/databases/currentSensitivityLabels/*
  • Microsoft.Sql/servers/databases/recommendedSensitivityLabels/*
  • Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels/*

次の組み込みロールでは、データベースのデータ分類を変更できます。

  • 所有者
  • 投稿者
  • SQLセキュリティマネージャー

データベースのデータ分類を変更するには、次の操作を行う必要があります。

  • Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels/*

ロールベースのアクセス許可の詳細については、Azure RBAC に関する記事を参照してください。

このセクションのAzure SQL組み込みロールは専用SQLプール(旧SQL DW)に適用されますが、Azure Synapseワークスペース内の専用SQLプールやその他のSQLリソースには対応できません。 Azure Synapse workspacesのSQLリソースについては、データ分類用の利用可能なアクションを使って、ラベル付けのためにカスタムAzureロールを作成できます。 Microsoft.Synapse/workspaces/sqlPools プロバイダーの操作について詳しくは、「Microsoft.Synapse」をご覧ください。

分類の管理

分類の管理には、T-SQL、REST API、または PowerShell を使用できます。

T-SQL の使用

T-SQL を使って、列の分類を追加または削除したり、データベース全体のすべての分類を取得したりできます。

T-SQL を使ってラベルを管理するときに、列に追加するラベルが組織の情報保護ポリシー (ポータルの推奨事項に表示されるラベルのセット) に存在することの検証は行われません。 そのため、この検証はユーザーが行う必要があります。

T-SQL を使用した分類の詳細については、次のリファレンスを参照してください。

PowerShell コマンドレットの使用

PowerShell を使用して、Azure SQL Database と Azure SQL Managed Instance の分類および推奨事項を管理します。

Azure SQL Database 用の PowerShell コマンドレット

Azure SQL Managed Instance 用の PowerShell コマンドレット

REST API を使用する

REST API を使用して、分類および推奨事項をプログラムで管理できます。 公開された REST API では、次の操作がサポートされます。

SQL ドライバーを使用して分類メタデータを取得する

次の SQL ドライバーを使用して、分類メタデータを取得できます。

FAQ - 高度な分類機能

質問: SQL データの検出と分類は Microsoft Purview によって置き換えられるのですか? SQL データの検出と分類は間もなく廃止されるのですか? 回答: SQL データの検出と分類は引き続きサポートされます。高度な分類機能とデータ ガバナンスを促進するための、機能をより豊富に備えた Microsoft Purview を導入することをお勧めします。 サービス、機能、API、または SKU の廃止が決定された場合は、移行または切り替えパスを含む事前通知がお客様に送信されます。 詳細については、 Microsoft ライフサイクル ポリシーを参照してください。