AzureデータエクスプローラーからKeyVaultを使用したデータの取得


Azure DatabricksでADXからデータを読む方法を説明しました.
あなたの中には、ノートに直接秘密を貼る心配があります.私はどのように安全に保存し、代わりに秘密を使用するAzure Keyvaultを使用する方法を説明します.

必要条件


Azure KeyVaultリソースを作成します.

Keyvaultのストア秘密


KeyVaultに秘密を移動します.私はkeyvaultにクライアントのIDを格納します.
1 . AzureポータルからKeyVaultリソースを開き、秘密を選択します.
2 .前の記事で作成したノートブックから「Clientid」と「ClientSecret」秘密とペースト値を加えてください.

でデータを作成する秘密のストア


次に、Databricksのセットアップ秘密ストア.
1 . gohttps://your_databricks_cluster_address#secrets/createScope . Azureポータルのデータリックス概要ペインからURIを見つけることができます.
2 .次の情報を入力します.
  • 名前:スコープ名になります
  • 管理者:すべてのユーザー
  • DNS名:AzureポータルのAzure KeyVaultリソースから「Vault URI」を得ることができます
  • リソースID : KeyVaultリソースにアクセスするときは、ブラウザからURIを取得できます.サブスクリプションの後にアドレスをコピーする

  • マネージを唯一のCreatorに変更する場合は、プレミアムティアを使用する必要があります.
    3 .「作成」をクリックして完了します.
    一旦秘密の店がつくられるならば、それを確認するためにDatabricks CLIを使ってください.
    コンピュータにPython 3.6 +または2.7.9 +をインストールします.
    2 . PIPをインストールしてCLIをインストールします.
    pip install databricks-cli
    
    3 .設定コマンドを実行します.
    databricks configure --token
    
    4 . Azure DatabricksのURLを尋ねます.あなたはAzureポータルでそれを見つけることができます.

    5 .それからアクセストークンを尋ねます.あなたはAzure Badricksポータルからそれを得ることができます.右上隅にあるユーザーアイコンを選択します.

    6 .トークンを得るために「新しいトークンを生成」をクリックします.

    7 .秘密のストアをスコープで表示します.つの秘密を参照してください.
    databricks secrets list --scope key-vault-secrets
    

    ノートを使用する秘密


    最後に現在のノートブックを使用して秘密を使用します.
    1 .ノートに行って、作成したものを開きます.
    2 . ClientRound IDとClientRound秘密を定義するコードを置き換えます.秘密の店から値を得るためにdbutilsを使用してください.
    client_id = dbutils.secrets.get(scope = "key-vault-secrets", key = "clientid")
    client_secret = dbutils.secrets.get(scope = "key-vault-secrets", key = "clientsecret")
    
    3 .注意してください.

    概要


    Azure Keyvaultは秘密を保存するのに絶好の場所であり、コード内のハードコーディング値を心配する必要はありません.また、キーの中央リポジトリとして動作するように、キーを再生するたびにKeyVaultを更新する必要があります!

    リファレンス


    Setup Databricks CLI
    Secret scopes
    dbutils secret Utilities