適用対象:Azure SQL データベース
Azure SQL Managed Instance
Azure 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 つのポリシーのいずれかを選択できます。
SQL Information Protection ポリシー
データの検出と分類には、SQL 論理サーバーにネイティブな検出ロジックを備えた秘密度ラベルと情報の種類のビルトイン セットが付属しています。 既定のポリシー ファイルで使用できる保護ラベルを引き続き使用することも、この分類をカスタマイズすることもできます。 一連の分類コンストラクトとその優先度をお使いの環境に合わせて定義できます。
分類法を定義してカスタマイズする
Azure 組織全体の分類法の定義とカスタマイズは 1 か所で行われます。 この場所は、セキュリティ ポリシーの一環として、Microsoft Defender For Cloud にあります。 このタスクは、組織のルート管理グループの管理者権限を持つユーザーのみが実行できます。
ポリシー管理の一環として、カスタム ラベルを定義し、優先度を設定し、そのラベルを、選択した一連の情報の種類に関連付けることができます。 独自のカスタム情報の種類を追加し、文字列パターンで構成することもできます。 パターンは、データベース内のこの種類のデータを識別するための検出ロジックに追加されます。
詳細については、Microsoft Defender for Cloud 上での SQL 情報保護ポリシーのカスタマイズ (プレビュー) に関する記事を参照してください。
組織全体のポリシーを定義したら、カスタマイズしたポリシーを使用して個別のデータベースの分類を続行できます。
SQL Information Protection ポリシー モードでデータベースを分類する
注
次の例では Azure SQL Database を使用しますが、データの検出と分類を構成する適切な製品を選択する必要があります。
Azure ポータルにアクセスします。
[Azure SQL Database] ペインの [セキュリティ] 見出しの下の [データの検出と分類] に移動します。 [概要] タブには、データベースの現在の分類状態の概要が表示されます。 この概要には、分類済みのすべての列の詳細なリストが含まれ、これをフィルター処理して、特定のスキーマの部分、情報の種類、ラベルのみを表示することもできます。 まだどの列も分類していない場合は、手順 4. に進みます。
Excel 形式でレポートをダウンロードするには、ペイン上部のメニューの [エクスポート] を選択します。
データの分類を開始するには、[データの検出と分類] ページの [分類] タブを選択します。
分類エンジンによって、機密データが含まれる可能性のある列についてデータベースがスキャンされ、推奨される列の分類のリストが提供されます。
分類の推奨事項を表示して適用します。
推奨される列の分類のリストを表示するには、ペインの下部にある推奨事項パネルを選択します。
特定の列の推奨事項を受け入れるには、関連する行の左側の列のチェック ボックスをオンにします。 推奨事項テーブル ヘッダーの左端のチェック ボックスをオンにして、すべての推奨事項を受け入れ済みとしてマークすることもできます。
選択した推奨事項を適用するには、 [選択した推奨事項を受け入れます] を選択します。
注
自動データ検出を実行し、機密性の高い列の推奨事項を提供するレコメンデーション エンジンは、Microsoft Purview Information Protection ポリシー モードが使用されている場合は無効になります。
代わりに、列を手動で分類することもできます。さらに、推奨事項ベースの分類について、次の操作を実行することもできます。
ペインの上部のメニューで [分類の追加] を選択します。
表示されたコンテキスト ウィンドウで、分類するスキーマ、テーブル、列と、情報の種類および機密ラベルを選択します。
コンテキスト ウィンドウの下部にある [分類の追加] をクリックします。
分類を完了し、新しい分類メタデータでデータベース列に永続的にラベル (タグ) を付けるには、 [分類] ページで [保存] を選択します。
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 ポリシーに変更するには、ユーザーまたはペルソナにテナント全体のセキュリティ 管理アクセス許可が必要です。その逆も同様です。
テナント全体のセキュリティ管理者アクセス許可を持つユーザーまたはペルソナは、テナントのルート管理グループ レベルでポリシーを適用できます。 詳細については、「テナント全体のアクセス許可を自分に付与する」を参照してください。
テナントにはアクティブな Microsoft 365 サブスクリプションがあり、現在のユーザーに対して発行されたラベルがあります。 詳細については、「機密ラベルとそのポリシーを作成して構成する」を参照してください。
Microsoft Purview Information Protection ポリシー モードでデータベースを分類する
Azure ポータルにアクセスします。
Azure SQL Database のデータベースに接続します。
データベース ウィンドウの [セキュリティ] ヘッダーで、[データの検出と分類] に移動します。
[Microsoft Information Protection policy] (Microsoft Information Protection ポリシー) を選択するには、[概要] タブを選択し、[構成] を選択します。
[Information Protection ポリシー] オプションの [Microsoft Information Protection policy] (Microsoft Information Protection ポリシー) を選択し、[保存] を選択します。
分類タブに行くか、「分類を追加」を選択すると、Microsoft 365のセンシティビュースラベルが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 COLUMNBULK INSERTSELECTDELETEINSERTMERGEUPDATEUPDATETEXTWRITETEXTDROP TABLEBACKUPDBCC CloneDatabaseSELECT INTOINSERT INTO EXECTRUNCATE TABLEDBCC SHOW_STATISTICSsys.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 を使用した分類の詳細については、次のリファレンスを参照してください。
- 1 つ以上の列の分類を追加または更新するには:ADD SENSITIVITY CLASSIFICATION
- 1つ以上の列から分類を削除するには: DROP SENSITIVITY CLASSIFICATION
- データベースのすべての分類を表示するには: sys.sensitivity_classifications
PowerShell コマンドレットの使用
PowerShell を使用して、Azure SQL Database と Azure SQL Managed Instance の分類および推奨事項を管理します。
Azure SQL Database 用の PowerShell コマンドレット
- Get-AzSqlDatabaseSensitivityClassification
- Set-AzSqlDatabaseSensitivityClassification
- Remove-AzSqlDatabaseSensitivityClassification
- Get-AzSqlDatabaseSensitivityRecommendation
- Enable-AzSqlDatabaseSensitivityRecommendation
- Disable-AzSqlDatabaseSensitivityRecommendation
Azure SQL Managed Instance 用の PowerShell コマンドレット
- Get-AzSqlInstanceDatabaseSensitivityClassification
- Set-AzSqlInstanceDatabaseSensitivityClassification
- Remove-AzSqlInstanceDatabaseSensitivityClassification
- Get-AzSqlInstanceDatabaseSensitivityRecommendation
- Enable-AzSqlInstanceDatabaseSensitivityRecommendation
- Disable-AzSqlInstanceDatabaseSensitivityRecommendation
REST API を使用する
REST API を使用して、分類および推奨事項をプログラムで管理できます。 公開された REST API では、次の操作がサポートされます。
- 作成または更新:指定された列の機密ラベルを作成または更新します。
- [削除]:指定された列の機密ラベルを削除します。
- 推奨を無効にする: 指定された列の機密度の推奨を無効にします。
- 推奨を有効にする: 指定された列の機密度に関する推奨事項を有効にします。 (推奨は、すべての列に対して既定で有効になっています。)
- 取得:指定された列の機密ラベルを取得します。
- 現在の内容をデータベース別に一覧表示:指定されたデータベースの現在の機密ラベルを取得します。
- 推奨される内容をデータベース別に一覧表示:指定されたデータベースの推奨される機密ラベルを取得します。
SQL ドライバーを使用して分類メタデータを取得する
次の SQL ドライバーを使用して、分類メタデータを取得できます。
FAQ - 高度な分類機能
質問: SQL データの検出と分類は Microsoft Purview によって置き換えられるのですか? SQL データの検出と分類は間もなく廃止されるのですか? 回答: SQL データの検出と分類は引き続きサポートされます。高度な分類機能とデータ ガバナンスを促進するための、機能をより豊富に備えた Microsoft Purview を導入することをお勧めします。 サービス、機能、API、または SKU の廃止が決定された場合は、移行または切り替えパスを含む事前通知がお客様に送信されます。 詳細については、 Microsoft ライフサイクル ポリシーを参照してください。
関連するコンテンツ
- 分類済みの機密データへのアクセスを監視および監査するように Azure SQL Auditing を構成することを検討します。
- データの検出と分類に関するプレゼンテーションについては、「SQL データの検出、分類、ラベル付け、保護 | | Data Exposed」を参照してください。
- Microsoft Purviewが感度ラベルを適用できるようにAzure SQL databaseを登録・スキャンするには、「Microsoft PurviewのDiscover and govern Azure SQL Database」をご覧ください。