IAMユーザではなく、IAMロールで Tableau Desktop から Amazon Athena へ接続したい場合の手順
※ IAMユーザの認証情報(アクセスキーID、シークレットアクセスキー)を用いた接続方法
https://qiita.com/r18j21/items/e8a459c2544a80c46a70
JDBCドライバの配置
https://docs.aws.amazon.com/ja_jp/athena/latest/ug/connect-with-jdbc.html
から最新の .jar
ファイルを取得し、OS にあわせて下記ディレクトリに配置
Windows: C:\Program Files\Tableau\Drivers
Mac: ~/Library/Tableau/Drivers
Linux: /opt/tableau/tableau_driver/jdbc
【参考】
https://help.tableau.com/current/pro/desktop/ja-jp/examples_otherdatabases_jdbc.htm
credentials の設定
AWS CLI の credentials
が設定されていない場合は aws configure
で設定する
[default]
aws_access_key_id = ZZZZZZZZZZZZZZZZZZZZ
aws_secret_access_key = 9999999999999999999999999999999999999999
作成された credentials
にIAMロールを追加
[default]
aws_access_key_id = ZZZZZZZZZZZZZZZZZZZZ
aws_secret_access_key = 9999999999999999999999999999999999999999
[【任意のIAMロール名】]
role_arn = arn:aws:iam::000000000000:role/iam_role
source_profile = default
Tableau Desktop からの接続
Tableau Desktop データソース接続 > その他のデータベース (JDBC)
URL: jdbc:awsathena://【下記参照】
方言 ( dialect のことらしい...何という和訳センスのなさ... ) : SQL92
その他はすべて空白
jdbc:awsathena://
AwsRegion = 【リージョン】;
S3OutputLocation = 【IAMロールで書込み可能なS3バケットおよびディレクトリ】;
Profile = 【credentials で設定した任意のIAMロール名】;
記述例
jdbc:awsathena://
AwsRegion=ap-northeast-1;
S3OutputLocation=s3://bucket/tableau/desktop/;
Profile=iam_role;
【参考】
https://docs.aws.amazon.com/ja_jp/athena/latest/ug/connect-with-jdbc.html
→ JDBC ドライバーのインストールおよび設定ガイド