SSH トンネル経由の MongoDB の接続

SSH トンネルを使用して MongoDB データベースを Commerce Intelligence に接続するには、次の手順を実行する必要があります。

NOTE
この設定は技術的な性質上、Adobeでは、開発者に協力を求め、まだこの作業を行っていない場合は、支援を求めることをお勧めします。

Commerce Intelligence 公開鍵の取得 retrieve

public key は、Commerce Intelligence Linux ユーザーの認証に使用されます。 次の節では、ユーザーの作成とキーの読み込みについて説明します。

  1. Data > Connections に移動し、「Add New Data Source」をクリックします。
  2. MONGODB アイコンをクリックします。
  3. MongoDB 資格情報ページが開いたら、「Encrypted」切り替えスイッチを Yes に変更します。 SSH 設定フォームが表示されます。
  4. public key はこのフォームの下にあります。

このページは、チュートリアルの最後まで開いたままにしておきます。次の節と最後に必要になります。

少し迷った場合は、Commerce Intelligence を移動してキーを取得する方法を次に示します。

RJMetrics 公開鍵の取得

Commerce Intelligence IP アドレスへのアクセスを許可します allowlist

接続を成功させるには、IP アドレスからのアクセスを許可するようにファイアウォールを設定する必要があります。 これらは 54.88.76.9734.250.211.151 ですが、MongoDB の資格情報ページにも表示されます。

MBI_Allow_Access_IPs.png

Commerce Intelligence 用の Linux ユーザーの作成 linux

IMPORTANT
サーバーに関連付けられている sshd_config ファイルが既定のオプションに設定されていない場合は、特定のユーザーのみがサーバーにアクセスできます。これにより、Commerce Intelligence への接続に成功できなくなります。 このような場合、rjmetric ユーザーにサーバーへのアクセスを許可するには、AllowUsers のようなコマンドを実行する必要があります。

リアルタイム(または頻繁に更新される)のデータが含まれている限り、実稼動マシンまたはセカンダリマシンを使用できます。 MongoDB サーバーへの接続権限を保持している限り、このユーザーを好きなように制限することができます。

新しいユーザーを追加するには、Linux サーバーで次のコマンドを root として実行します。

    adduser rjmetric -p
    mkdir /home/rjmetric
    mkdir /home/rjmetric/.ssh

最初のセクションで取得した public key を覚えていますか? ユーザーがデータベースにアクセスできるようにするには、キーを authorized_keys に読み込む必要があります。 次のように、キー全体を authorized_keys ファイルにコピーします。

    touch /home/rjmetric/.ssh/authorized_keys
    "< PASTE KEY HERE >" >> /home/rjmetric/.ssh/authorized_keys

ユーザーの作成を完了するには、/home/rjmetric ディレクトリの権限を変更して、SSH 経由でのアクセスを許可します。

    chown -R rjmetric:rjmetric /home/rjmetric
    chmod -R 700 /home/rjmetric/.ssh

Commerce Intelligence MongoDB ユーザーの作成 mongodb

MongoDB サーバーには 2 つの実行モードがあります 1 つは「認証」オプションを使用したもの(mongod -- auth) もう 1 つは デフォルトを使用したもの)。 MongoDB ユーザーを作成する手順は、サーバーで使用しているモードによって異なります。 続行する前に、モードを確認してください。

サーバーで Auth オプションを使用する場合: auth

複数のデータベースに接続する場合、管理者ユーザーとして MongoDB にログインし、次のコマンドを実行することでユーザーを追加できます。

NOTE
使用可能なすべてのデータベースを表示するには、Commerce Intelligence ユーザーが listDatabases. を実行する権限が必要です

このコマンドは、Commerce Intelligence ユーザーに次のアクセス権 to all databases 付与します。

    use admin
    db.createUser('rjmetric', '< secure password here >', true)

次のコマンドを使用して、Commerce Intelligence のユーザーに to a single database のアクセス権を付与します。

    use < database name >
    db.createUser('rjmetric', '< secure password here >', true)

これにより、次のような応答が出力されます。

    {
    "id": ObjectId("< some object id here >"),
    "user": "rjmetric",
    "readOnly": true,
    "pwd": "< some hash here >"
    }

サーバーでデフォルトオプションを使用している場合 default

サーバーが auth モードを使用しない場合、ユーザー名とパスワードがなくても MongoDB サーバーにアクセスできます。 ただし、mongodb.conf ファイル (/etc/mongodb.conf) に次の行が含まれていることを確認する必要があります。行が含まれていない場合は、追加した後にサーバーを再起動します。

    bind_ip = 127.0.0.1
    noauth = true

MongoDB サーバーを別のアドレスにバインドするには、次の手順でデータベースホスト名を適宜調整します。

Commerce Intelligence への接続およびユーザー情報の入力 finish

まとめるには、接続とユーザー情報を Commerce Intelligence に入力する必要があります。 MongoDB 資格情報ページを開いたままにしましたか? そうでない場合は、Data > Connections に移動して「Add New Data Source」をクリックし、次に「MongoDB」アイコンをクリックします。 Encrypted の切り替えを Yes に変更することを忘れないでください。

このページに、Database Connection のセクションから始まる次の情報を入力します。

  • Host: 127.0.0.1
  • Username:Commerce Intelligence MongoDB ユーザー名(rjmetric にする必要があります)
  • Password:Commerce Intelligence MongoDB のパスワード
  • Port:サーバー上の MongoDB のポート(デフォルトでは 27017
  • Database Name (オプション):1 つのデータベースへのアクセスのみを許可した場合は、そのデータベースの名前をここに指定します。

SSH Connection」セクションで、

  • Remote Address:SSH で接続するサーバーの IP アドレスまたはホスト名
  • Username:Commerce Intelligence Linux (SSH)のユーザー名(rjmetric)
  • SSH Port:サーバー上の SSH ポート(デフォルトでは 22)

完了したら、「Save Test」をクリックして設定を完了します。

関連

recommendation-more-help
e1f8a7e8-8cc7-4c99-9697-b1daa1d66dbc