0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Databricks Secretsによるシークレット管理とDatabricks Appsでの利用方法

Last updated at Posted at 2025-05-05

はじめに

Databricksでは、機密情報を安全に管理するためのシークレット管理機能が提供されています。
この記事では、Databricks CLIを使用したシークレットの管理方法と、
登録したシークレット値のDatabricks Appsからの利用方法について説明します。

前提条件

  • Databricks CLIがインストールされていること
  • Databricks CLIが設定されていること
    • databricks configure --token で設定

シークレット管理の基本操作

1. シークレットスコープの作成

シークレットスコープは、シークレットをグループ化するための論理的なコンテナです。

databricks secrets create-scope <scope-name>

# 例:
databricks secrets create-scope my-scope

2. シークレットの追加

シークレットスコープ内にシークレットを追加します。

databricks secrets put-secret --json '{
  "scope": "<scope-name>",
  "key": "<key-name>",
  "string_value": "<secret>"
}'

# 例:
databricks secrets put-secret --json '{
  "scope": "my-scope",
  "key": "my-key",
  "string_value": "my-secret"
}'

3. シークレットの確認

作成したシークレットスコープとシークレットを確認できます。

# シークレットスコープの一覧表示
databricks secrets list-scopes

# 特定のスコープ内のシークレット一覧表示
databricks secrets list-secrets <scope-name>

# 例:
databricks secrets list-secrets my-scope

Databricks Appsでのシークレットの利用

1. アプリ設定でのシークレット参照

Databricks Appsのアプリ設定画面でシークレットを参照するには、以下の設定を行います:

  • scope: シークレットスコープ名
  • secret key: シークレットキー名
  • 権限: 読み取り可能
  • リソースキー: 任意(アプリ内で参照する際に使用)

Databricks Appsのシークレットの利用

2. アプリでのシークレット利用

app.yamlの設定

アプリの設定ファイル(app.yaml)でシークレットを参照するには、以下のように設定します:

env:
  - name: 'my-key'  # アプリ内で使用する環境変数名
    valueFrom: 'my-key'  # 設定したリソースキー名

アプリケーションコードでの利用

アプリケーションコードでは、環境変数としてシークレットを参照できます:

import os

# シークレットの取得
secret_value = os.getenv('my-key')

まとめ

Databricksのシークレット管理機能を使用することで、以下のメリットが得られます:

  1. 機密情報の安全な管理
  2. アプリケーションコードからの簡単な参照
  3. アクセス権限の細かい制御

シークレット管理はセキュリティの重要な要素です。適切な管理と定期的な見直しを行うことで、より安全な運用が可能になります。

参考資料

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?