• 製品
  • 関連ドキュメント
  • リソース

PostgreSQL に接続する

PostgreSQL のデータベースを Atlassian Analytics に接続するには、次の手順を実行する必要があります。

  1. アウトバウンド接続用のアトラシアンの IP アドレスを許可します。

  2. PostgreSQL の読み取り専用ユーザーを作成します。

  3. Atlassian Analytics の接続フォームに入力します。

アトラシアンの IP アドレスを許可する

pg_bha 設定ファイルを変更する

既定では、PostgreSQL は pg_bha.conf ファイルに含まれるホストとネットワークへの接続を制限します。データベースに接続できるようにするには、このファイルにアトラシアンのアウトバウンド IP アドレスごとに行を追加する必要があります。アウトバウンド接続用のアトラシアンの IP アドレスのリストをご確認ください。

たとえば、atlassian_read_only という読み取り専用ユーザーが mydatabase というデータベースに接続できるようにするには、次の行を追加します。

1 2 3 4 5 6 7 8 9 10 11 12 13 host mydatabase atlassian_read_only_user 13.52.5.96/28 md5 host mydatabase atlassian_read_only_user 13.236.8.224/28 md5 host mydatabase atlassian_read_only_user 13.236.8.224/28 md5 host mydatabase atlassian_read_only_user 18.136.214.96/28 md5 host mydatabase atlassian_read_only_user 18.234.32.224/28 md5 host mydatabase atlassian_read_only_user 18.246.31.224/28 md5 host mydatabase atlassian_read_only_user 52.215.192.224/28 md5 host mydatabase atlassian_read_only_user 104.192.136.240/28 md5 host mydatabase atlassian_read_only_user 104.192.137.240/28 md5 host mydatabase atlassian_read_only_user 104.192.138.240/28 md5 host mydatabase atlassian_read_only_user 104.192.140.240/28 md5 host mydatabase atlassian_read_only_user 185.166.143.240/28 md5 host mydatabase atlassian_read_only_user 185.166.142.240/28 md5

pg_hba.conf ファイルを変更する方法の詳細については、PostgreSQL のドキュメンテーションを参照してください。

postgresql 設定ファイルを変更する

また、postgresql.conf ファイルの listening_addresses が「*」(すべてのアドレス) に設定されているか、すべてのアトラシアン IP アドレスが含まれていることを確認する必要もあります。例: listen_addresses='13.52.5.96/28 13.236.8.224/28 18.136.214.96/28 18.184.99.224/28 18.234.32.224/28 18.246.31.224/28 52.215.192.224/28 104.192.136.240/28 104.192.137.240/28 104.192.138.240/28 104.192.140.240/28 104.192.142.240/28 104.192.143.240/28 185.166.143.240/28 185.166.142.240/28'

変更を有効にするには、PostgreSQL インスタンスの再起動が必要となる場合があります。

PostgreSQL の読み取り専用ユーザーを作成する

このステップは必須ではありませんが、PostgreSQL データベースを Atlassian Analytics に接続するために使用する特定の読み取り専用ユーザーを作成することを強くお勧めします。

PostgreSQL の読み取り専用ユーザーを作成する方法は 2 つあります。

  • psql を使用する

  • pgAdmin を使用する

psql を使用して読み取り専用ユーザーを作成する

psql を使って読み取り専用ユーザーを作成するには、次の手順を実行します。

psql を使って読み取り専用ユーザーを作成するには、次の手順を実行します。

  1. 新しいターミナル ウィンドウを開き、ユーザーを作成するための一連のコマンドを入力します。

  2. 次のコマンドを入力して、PostgreSQL インスタンスに接続します: sudo -u postgres psql

  3. 次のコマンドを入力して、Atlassian Analytics に接続するデータベースを選択します: \c database_name;

  4. 次のコマンドを入力して、読み取り専用ユーザー用に新しいロールを作成します: CREATE ROLE atlassian_read_only_user LOGIN PASSWORD 'secure_password';

  5. 次のコマンドを入力して、新しいユーザーがデータベースに接続するのに必要な権限を付与します。

    1 2 GRANT CONNECT ON DATABASE database_name TO atlassian_read_only_user; GRANT USAGE ON SCHEMA public TO atlassian_read_only_user;
  6. 次のコマンドを入力して、新しいユーザーに SELECT アクセスを許可する GRANT ステートメントを生成します: SELECT 'GRANT SELECT ON '||schema_name||'."'||table_name||'" TO atlassian_read_only_user;' FROM pg_tables WHERE schema_name IN ('public') ORDER BY schema_name, table_name;

  7. ステップ 6 のコマンドで生成した GRANT ステートメントをコピーして、ターミナル ウィンドウに貼り付けます。テーブルのサブセットへのアクセスを制限するには、それらのテーブルに対してのみ GRANT ステートメントを実行してください。

    GRANT ステートメントの例:

1 2 3 4 5 6 7 8 9 10 11 GRANT SELECT ON public."album" TO atlassian_read_only_user; GRANT SELECT ON public."artist" TO atlassian_read_only_user; GRANT SELECT ON public."customer" TO atlassian_read_only_user; GRANT SELECT ON public."employee" TO atlassian_read_only_user; GRANT SELECT ON public."genre" TO atlassian_read_only_user; GRANT SELECT ON public."invoice" TO atlassian_read_only_user; GRANT SELECT ON public."invoiceline" TO atlassian_read_only_user; GRANT SELECT ON public."mediatype" TO atlassian_read_only_user; GRANT SELECT ON public."playlist" TO atlassian_read_only_user; GRANT SELECT ON public."playlisttrack" TO atlassian_read_only_user; GRANT SELECT ON public."track" TO atlassian_read_only_user;

これで、新しい読み取り専用ユーザーには、Atlassian Analytics がデータベースに接続してクエリを実行するために必要な権限が付与されたはずです。

pgAdmin を使用して読み取り専用ユーザーを作成する

psql の代わりに、pgAdmin を使用して読み取り専用ユーザーを作成できます。

pgAdmin を使って読み取り専用ユーザーを作成するには、次の手順を実行します。

  1. pgAdmin を使用して PostgreSQL サーバー インスタンスに接続します。

  2. サーバー ツリーで、[ログイン/グループ ロール] を右クリックして、[作成] > [ログイン/グループ ロール] を選択します。

  3. グループ ロールにわかりやすい名前を付け、[保存] を選択します。グループ ロールのパスワードはまだ作成する必要がありません。ログイン ロールのパスワードは後のステップで作成します。

  4. サーバー ツリーで [データベース] を展開し、Atlassian Analytics に接続するデータベースを右クリックして、[プロパティ] を選択します。

  5. [セキュリティ] タブで、新しく作成したグループ ロールの権限を追加します。

    1. [被付与者] ドロップダウンからグループ ロールを選択します。

    2. [権限] で [接続] を選択します。

    3. [保存] を選択します。

  6. サーバー ツリーで [データベース] を展開し、[スキーマ] を展開し、[公開] を右クリックして [付与ウィザード] を選択します。

  7. オブジェクト選択のステップで、アクセスするテーブルを選択し、[次へ] を選択します。

  8. 権限選択ステップで、次の手順を実行します。

    1. [被付与者] ドロップダウンから作成したグループ ロールを選択します。

    2. [権限] で [選択] にチェックを入れます。

    3. [次へ] を選択します。

  9. データベースで実行される SQL ステートメントを確認し、[完了] を選択してステートメントを実行して処理を完了します。

    注意: スキーマが「公開」でない場合は、スキーマの USAGE 権限も付与する必要があります。

  10. 次に、ログイン ロールを作成します。サーバー ツリーで、[ログイン/グループ ロール] を右クリックして、[作成] > [ログイン/グループ ロール] を選択します。

  11. [全般] タブで、ログイン ロールにわかりやすい名前を付けます。

  12. [定義] タブで、ログイン ロールの安全なパスワードを入力します。

  13. [メンバーシップ] タブで、前のステップで新しく作成したグループ ロールを [次のメンバー] セクションに追加し、[保存] を選択します。

これで、新しい読み取り専用ユーザーには、Atlassian Analytics がデータベースに接続してクエリを実行するために必要な権限が付与されたはずです。Atlassian Analytics で PostgreSQL 接続を設定する際は、ログイン ロール用に作成した認証情報を使用してください。

PostgreSQL を Atlassian Analytics に追加する

読み取り専用のデータベース ユーザーを作成し、アウトバウンド IP アドレスを許可したら、Atlassian Analytics の接続フォームに入力して PostgreSQL データベースを追加します。

PostgreSQL を Atlassian Analytics に追加するには、次の手順を実行します。

  1. グローバル ナビゲーションから [Data (データ)] を選択します。

  2. [データ ソースを追加] > [PostgreSQL] を選択します。

  3. 接続フォームの以下の必須フィールドに入力します。

    1. ホスト名または IP - データベースがホストされている場所。

    2. ポート - PostgreSQL の既定のポート番号は 5432 です。

    3. ユーザー名 - 作成した PostgreSQL 読み取り専用ユーザーのユーザー名。

    4. ユーザー パスワード - 作成した PostgreSQL 読み取り専用ユーザーのパスワード。

    5. データベース名 - PostgreSQL データベースの名前。

    6. スキーマ - 少なくとも 1 つ選択する必要があります。

Atlassian Analytics がデータベースに接続してスキーマを取得すると、データ ソースを使用する準備が整います。

その他のヘルプ