MongoDB über SSH-Tunnel verbinden

Um Ihre MongoDB -Datenbank über einen SSH-Tunnel mit Commerce Intelligence zu verbinden, müssen Sie einige Schritte unternehmen:

NOTE
Aufgrund des technischen Charakters dieses Setups empfiehlt Adobe, dass Sie in einem Entwickler eine Schleife durchführen, um herauszufinden, ob Sie dies noch nicht getan haben.

Abrufen des öffentlichen Schlüssels Commerce Intelligence retrieve

Der public key wird verwendet, um den Commerce Intelligence Linux Benutzer zu autorisieren. Der nächste Abschnitt erläutert Ihnen schrittweise, wie Sie den Benutzer erstellen und die Schlüssel importieren können.

  1. Gehen Sie zu Data > Connections und klicken Sie auf Add New Data Source.
  2. Klicken Sie auf das Symbol "MONGODB".
  3. Nachdem die Seite mit den Anmeldedaten für MongoDB geöffnet wurde, ändern Sie den Umschalter für Encrypted in Yes. Dadurch wird das SSH-Setup-Formular angezeigt.
  4. Die public key befindet sich unter diesem Formular.

Lassen Sie diese Seite während des Tutorials geöffnet - Sie benötigen sie im nächsten Abschnitt und am Ende.

Wenn Sie etwas verloren haben, können Sie hier durch Commerce Intelligence navigieren, um den Schlüssel abzurufen:

Abrufen des öffentlichen Schlüssels RJMetrics

Zugriff auf die Commerce Intelligence -IP-Adresse zulassen allowlist

Damit die Verbindung erfolgreich hergestellt werden kann, müssen Sie Ihre Firewall so konfigurieren, dass der Zugriff von Ihren IP-Adressen aus gestattet wird. Sie sind 54.88.76.97 und 34.250.211.151, befinden sich aber auch auf der Seite mit den Anmeldedaten für MongoDB:

MBI_Allow_Access_IPs.png

Erstellen eines Linux Benutzers für Commerce Intelligence linux

IMPORTANT
Wenn die mit dem Server verknüpfte sshd_config -Datei nicht auf die Standardoption festgelegt ist, haben nur bestimmte Benutzer Zugriff auf den Server. Dies verhindert eine erfolgreiche Verbindung zu Commerce Intelligence. In diesen Fällen ist es erforderlich, einen Befehl wie AllowUsers auszuführen, um dem rjmetric -Benutzer Zugriff auf den Server zu gewähren.

Dabei kann es sich um eine Produktions- oder Sekundärmaschine handeln, sofern diese Daten in Echtzeit (oder häufig aktualisiert) enthält. Sie können diesen Benutzer beliebig einschränken, solange er das Recht behält, eine Verbindung zum MongoDB -Server herzustellen.

Um den neuen Benutzer hinzuzufügen, führen Sie die folgenden Befehle als Stamm auf Ihrem Linux-Server aus:

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

Erinnern Sie sich an die public key, die Sie im ersten Abschnitt abgerufen haben? Um sicherzustellen, dass der Benutzer Zugriff auf die Datenbank hat, müssen Sie den Schlüssel in authorized_keys importieren. Kopieren Sie den gesamten Schlüssel wie folgt in die Datei authorized_keys :

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

Um die Erstellung des Benutzers abzuschließen, ändern Sie die Berechtigungen für den Ordner /home/rjmetric , um den Zugriff über SSH zuzulassen:

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

Erstellen eines Commerce Intelligence MongoDB Benutzers mongodb

MongoDB -Server haben zwei Ausführungsmodi: einer mit der Option "auth" (mongod -- auth) und einer ohne, der Standardmodus. Die Schritte zum Erstellen eines MongoDB -Benutzers hängen davon ab, welchen Modus Ihr Server verwendet. Überprüfen Sie den Modus, bevor Sie fortfahren.

Wenn Ihr Server die Option Auth verwendet: auth

Wenn Sie eine Verbindung zu mehreren Datenbanken herstellen, können Sie den Benutzer hinzufügen, indem Sie sich bei MongoDB als Administrator anmelden und die folgenden Befehle ausführen.

NOTE
Zum Anzeigen aller verfügbaren Datenbanken benötigt der Benutzer Commerce Intelligence die Berechtigung zum Ausführen von listDatabases.

Mit diesem Befehl wird dem Commerce Intelligence -Benutzer Zugriff auf to all databases gewährt:

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

Verwenden Sie diesen Befehl, um den Commerce Intelligence Benutzerzugriff to a single database zu gewähren:

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

Dadurch wird eine Antwort wie die folgende ausgegeben:

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

Wenn Ihr Server die Standardoption verwendet default

Wenn Ihr Server den Modus auth nicht verwendet, ist Ihr MongoDB -Server auch ohne Benutzernamen und Kennwort zugänglich. Sie sollten jedoch sicherstellen, dass die mongodb.conf-Datei (/etc/mongodb.conf) die folgenden Zeilen enthält. Wenn nicht, starten Sie Ihren Server neu, nachdem Sie sie hinzugefügt haben.

    bind_ip = 127.0.0.1
    noauth = true

Um Ihren MongoDB -Server an eine andere Adresse zu binden, passen Sie den Datenbank-Hostnamen im nächsten Schritt entsprechend an.

Eingabe der Verbindung und Benutzerinformationen in Commerce Intelligence finish

Um Elemente einzuschließen, müssen Sie die Verbindung und Benutzerinformationen in Commerce Intelligence eingeben. Haben Sie die Seite mit den Anmeldedaten für MongoDB geöffnet gelassen? Wenn nicht, gehen Sie zu Data > Connections und klicken Sie auf Add New Data Source, dann auf das Symbol MongoDB. Vergessen Sie nicht, den Umschalter Encrypted auf Yes zu ändern.

Geben Sie die folgenden Informationen in diese Seite ein, beginnend mit dem Abschnitt Database Connection :

  • Host: 127.0.0.1
  • Username: Der Benutzername Commerce Intelligence MongoDB (sollte rjmetric sein)
  • Password: Das Kennwort Commerce Intelligence MongoDB
  • Port: MongoDB-Anschluss auf Ihrem Server (standardmäßig 27017)
  • Database Name (Optional): Wenn Sie nur den Zugriff auf eine Datenbank zugelassen haben, geben Sie hier den Namen dieser Datenbank an.

Unter dem Abschnitt SSH Connection :

  • Remote Address: Die IP-Adresse oder der Hostname des Servers, in den Sie SSH durchführen werden
  • Username: Der Benutzername für Commerce Intelligence Linux (SSH) (sollte rjmetric sein)
  • SSH Port: Der SSH-Port auf Ihrem Server (standardmäßig 22)

Wenn Sie fertig sind, klicken Sie auf Save Test , um das Setup abzuschließen.

Verwandte

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