次の方法で共有


Unity Catalog イベントを監査する

この記事には、Unity Catalog イベントの監査ログ情報が含まれています。 Unity Catalog は、メタストアに対して実行されたアクションの監査ログをキャプチャします。 これにより、管理者は、特定のデータセットにアクセスしたユーザーと、実行したアクションに関する詳細にアクセスできます。

診断ログを構成する

Unity Catalog イベントの診断ログにアクセスするには、アカウント内の各ワークスペースの診断ログを有効にして構成する必要があります。

重要

Azure Databricks では、アカウント レベルのみで発生する Unity Catalog イベントはログに記録されません。 ログに記録されるのは、ワークスペースに関連付けられているイベントのみです。

ログに記録されたクエリ可能な Unity Catalog イベントのテーブルを作成するには、以下の手順を実行します。

  1. Event Hubs 名前空間を作成または再利用します。

    この名前空間は、Azure Databricks ワークスペースと同じリージョン内に存在する必要があります。

    クイックスタート: Azure portal を使用したイベント ハブの作成」を参照してください。

  2. 名前空間内にイベント ハブを作成します。

  3. Event Hub の接続文字列をコピーします。

    Event Hubs の接続文字列の取得」を参照してください。

    ポリシーには、リッスン アクセス許可のみが必要です。 接続文字列は Endpoint=sb:// で始まる必要があります。

  4. 接続文字列をシークレットとして Azure Databricks ワークスペースに格納します

    シークレット」を参照してください。

  5. 診断ログを処理するワークスペースの診断ログを有効にします。

    診断ログ リファレンス」を参照してください。

    次のオプションを選択します。

    • 宛先: イベント ハブへのストリーム
    • 手順 1 と 2 で作成した Event Hubs 名前空間とイベント ハブ。
    • ログのカテゴリ: unityCatalog
  6. シングル ユーザー アクセス モードを使用するクラスターを作成します。

    アクセス モード」を参照してください。

  7. 次のサンプル ノートブックをワークスペースにインポートし、先ほど作成したクラスターにアタッチします。

    Databricks ノートブックのエクスポートとインポート」を参照してください。

    Unity Catalog イベントの監査ログ レポート

    ノートブックを入手

  8. 2 番目のノートブック セルのフィールドに入力します。

    • <catalog>: 監査テーブルを格納するカタログ (カタログが既に存在している必要があります)。 それに対する USE CATALOG 特権と CREATE 特権があることを確認します。
    • <database>: 監査テーブルを格納するデータベース (スキーマ) (まだ存在しない場合は作成されます)。 既に存在する場合は、それに対する USE SCHEMA 特権と CREATE 特権があることを確認します。
    • <eh-ns-name>: イベント ハブを含む Event Hubs 名前空間の名前
    • <eh-topic-name>: イベント ハブの名前 (トピック)
    • <secret-scope-name>: Event Hubs 接続文字列を含むシークレットのシークレット スコープの名前
    • <secret-name>: Event Hubs 接続文字列を含むシークレットの名前
    • <sink-path>: Spark チェックポイントへの DBFS パス (たとえば /tmp/unity-audit-logs)。
  9. ノートブックを実行して、監査ログ テーブルを作成します。

Unity Catalog 監査ログ イベント

Unity Catalog の監査可能なイベントの一覧については、「Unity Catalog イベント」を参照してください。