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 AppsからAWSリソースへのアクセス方法

Last updated at Posted at 2025-05-05

はじめに

Databricks AppsからAWSリソースにアクセスする際、セキュアな方法で認証情報を管理する必要があります。この記事では、Databricksのシークレット管理機能を使用してAWSアクセスキーを安全に管理し、Databricks AppsからAWSリソースにアクセスする方法について説明します。

前段

AWSアクセスキーの管理

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

AWSアクセスキーを管理するための専用のスコープを作成します。

databricks secrets create-scope aws

2. AWSアクセスキーの追加

作成したスコープにAWSアクセスキーを追加します。

# AWSアクセスキーIDの追加
databricks secrets put-secret --json '{
  "scope": "aws",
  "key": "AWS_ACCESS_KEY_ID",
  "string_value": "<access-key>"
}'

# AWSシークレットアクセスキーの追加
databricks secrets put-secret --json '{
  "scope": "aws",
  "key": "AWS_SECRET_ACCESS_KEY",
  "string_value": "<secret-access-key>"
}'

3. シークレットの確認

追加したシークレットを確認します。

databricks secrets list-secrets aws

Databricks Appsでの設定

1. app.yamlの設定

アプリの設定ファイル(app.yaml)でAWSアクセスキーを参照するように設定します。

env:
  - name: 'AWS_ACCESS_KEY_ID'
    valueFrom: 'AWS_ACCESS_KEY_ID'
  - name: 'AWS_SECRET_ACCESS_KEY'
    valueFrom: 'AWS_SECRET_ACCESS_KEY'

2. Databricks Appsの設定

Databricks Appsの設定画面で、以下の設定を行います:

  • scope: aws
  • secret key: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY
  • 権限: 読み取り可能
  • リソースキー: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY

databricksAppsConfig.png

アプリケーションでのAWSリソースアクセス

1. boto3を使用したAWSリソースへのアクセス

AWSアクセスキーは環境変数として自動的に設定されるため、特別な設定は不要です。

import boto3

# S3クライアントの初期化
s3 = boto3.client('s3')

# S3バケット一覧の取得
response = s3.list_buckets()
print(response)

2. その他のAWSサービスへのアクセス

同様の方法で、他のAWSサービスにもアクセスできます。

import boto3

# EC2クライアントの初期化
# 自動で環境変数からAWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEYを取得し、インスタンス化
ec2 = boto3.client('ec2')

# EC2インスタンス一覧の取得
response = ec2.describe_instances()
print(response)

まとめ

Databricks AppsからAWSリソースにアクセスする際は、以下の点に注意して実装することで、セキュアな運用が可能になります:

  1. Databricksのシークレット管理機能を使用して、AWSアクセスキーを安全に管理する。
  2. Databricks Appsの設定で、シークレットを参照するように設定する。
  3. boto3を使用して、AWSリソースにアクセスする際は、環境変数から自動的に認証情報を取得する。

この方法により、AWSリソースへの安全なアクセスと、アプリケーションのセキュアな運用が実現できます。

参考資料

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?