Connectionstring anpassen

Zuletzt geändert von Jannis Klein am 2024/10/23 13:12

Allgemeines zum Connectionstring

Mithilfe des Connectionstrings baut der ACMP Server eine Verbindung zum SQL Server auf. Dieser wird während der Installation durch das ACMP Setup angelegt und befüllt. Nach der Installation kann der Connectionstring auch manuell angepasst werden.
Der Connectionstring enthält dabei verschiedene Attribute, wie z.B. den Provider oder die verwendeten Datenquellen, aber auch Sicherheitsinformationen des jeweiligen Nutzers wie den Benutzernamen oder das Passwort.
Der Connectionstring wird von ACMP generiert und im Installationsverzeichnis hinterlegt. Es handelt sich dabei um eine persistente Datei, die für den ACMP Server jederzeit erreichbar ist. Die Datei enthält immer die gleichen Attribute. Manche Werte und Eigenschaften können Sie selbst durch eine freie Eingabe verändern, bei wiederum anderen stehen nur die beiden Werte True und False zur Auswahl. Der Connectionstring wird implizit durch die Daten befüllt, die Sie während der Installation eingeben (z.B. verwendete Datenbank, Benutzername, Passwort etc.). Dazu werden die Eingaben, die Sie in den Installationswizard eingeben, transparent an die Datei übermittelt und dort hinterlegt. Auch lässt sich mithilfe des Connectionstrings eine verschlüsselte Verbindung zwischen dem SQL Server und ACMP Server einrichten.

Neue Datenbank anlegen.png

Implizite Eingabe der Connectionstring Daten über den Installationwizard

In den folgenden Fällen kann es z.B. notwendig sein, die bestehenden Verbindungsdaten anzupassen:

  • Migration eines anderen SQL Servers (z.B. von MS SQL Server 2012 auf 2019)
  • Umzug des SQL Servers auf einen anderen Host
  • Ändern der Benutzerdaten (das ACMP Datenbank Login wird geändert)
  • Migration einer Datenbank
  • Datentransfer soll nachträglich verschlüsselt werden

Aufruf der db.~co und db.con-Dateien

Die Dateien zum Anpassen des Connectionstrings liegen im Serververzeichnis des ACMP Servers (z.B. C:\Program Files (x86)\Aagon\ACMP Server). Die Dateien, die Sie für die Anpassungen am Connectionstring brauchen, sind die db.~co und db.con-Dateien.
Das Ziel ist es, die db.con-Datei zu ändern, weil diese vom ACMP Server genutzt wird, um eine Verbindung zum SQL Server aufzubauen. Diese Datei ist normalerweise, wenn der ACMP Server mindestens einmal erfolgreich gestartet wurde, verschlüsselt. Um die Daten sinnvoll verändern und anpassen zu können, benötigen Sie die Struktur und den lesbaren Inhalt des Connectionstrings. Diese Daten finden Sie in der db.~co-Datei, da man aus ihr den Klartext entnehmen kann.

Bevor Sie Änderungen vornehmen, sollten Sie zunächst den Serverdienst stoppen. Navigieren Sie danach zu dem Serververzeichnis des ACMP Servers und öffnen Sie die db.~co-Datei über einen Texteditor Ihrer Wahl (z.B. Notepad++). Es öffnet sich eine Verbindungszeichenfolge mit verschiedenen Attributen. In der nachfolgenden Abbildung sind es beispielsweise Attribute wie der Provider, die User ID oder die SQL Server Instanz.

db.co Datei.png

Inhalt der db.~co-Datei

Hinweis  Hinweis: 

ACMP nutzt nicht direkt die db.~co-Datei zum Einlesen von Informationen. Die Datei ist vielmehr als Vorlage gedacht, in der Sie Ihre Werte eintragen und in die db.con-Datei übertragen können.

Wenn Sie anschließend die andere Datei, die db.con-Datei öffnen, sehen Sie einen verschlüsselten Inhalt, der aus einer langen Zahlen- und Buchstabenfolge besteht. Durch die Verschlüsselung ist es beispielsweise nicht mehr ersichtlich, an welcher Position das Attribut Password steht. 

db.con Datei.png

Verschlüsselte db.con-Datei

Hinweis  Hinweis: 

Bei Angabe der richtigen Werte für die fünf Attribute „Provider“, „Password“, „User ID“, „Data Source“ und „Initial Catalog“ erfolgt eine Verschlüsselung der db.con-Datei automatisch. Nachdem sich der ACMP Server zum SQL Server erfolgreich verbinden konnte, wird die db.con-Datei dabei so verschlüsselt, dass der Connectionstring nicht mehr im Klartext in der Datei steht, sondern nur noch vom ACMP Server entschlüsselt werden kann. 

Attribute im Connectionstring anpassen

Sie können innerhalb des Connectionstrings verschiedene Kategorien an Informationen anpassen. Dazu gehören die benutzerspezifischen Daten (Password und User ID) und die Datenbankrelevanten Informationen (Data Source und Initial Catalog). Um eine verschlüsselte Verbindung zwischen den Servern zu erzeugen, verändern Sie die Attribute der beiden Einträge Use Encryption for Data und Trust Server Certificate.
Wechseln Sie zunächst zurück zur db.~co-Datei, in der die lesbaren Attribute hinterlegt sind. Stoppen Sie in der Zwischenzeit den Serverdienst, ehe Sie mit den Anpassungen beginnen und kopieren Sie danach den Inhalt aus der Datei und wechseln erneut in die db.con-Datei. Suchen Sie sich nun aus den bestehenden Attributen diejenigen aus, die Sie verändern oder ergänzen wollen.

Warning  Achtung: 

Beachten Sie, dass es wichtig ist, dass Sie die Werte richtig eingeben. Fehler oder Tippfehler können ansonsten dazu führen, dass der ACMP Server keine Verbindung zum SQL Server aufbauen kann und dadurch kein Login möglich ist.

 Nachfolgend einige Erklärungen zu den Werten:

AttributeBeschreibung
Provider=SQLNCLI11.1Der hier verwendete Provider ist der Microsoft SQL Server Native Client, Version 11.1. Die Zugriffsbibliothek, wie man den SQL Server erreicht, sollte nicht geändert werden.
Password=(leer)Das Passwort bezieht sich auf die User ID/den Benutzer für den SQL Server, der innerhalb des Connectionstrings genutzt wird. Sollte ein falsches Passwort eingegeben werden, wird eine Fehlermeldung beim Start des ACMP Servers generiert. Zusätzlich dazu finden Sie in der StartUpError.txt (C:\Program Files (x86)\Aagon\ACMP Server) einen Eintrag, warum ACMP nicht erfolgreich gestartet werden konnte.
Tragen Sie das hier benötigte Passwort ein.
Persist Security Info=TrueDer Wert True bedeutet, dass sicherheitsrelevante Informationen abgerufen werden können (z.B. die User ID oder das Passwort). Sollte der Wert auf False stehen, kann es zu Problemen und Fehlermeldungen bei einem Verbindungsaufbau des ACMP Servers führen.
Mögliche Werte, die eingetragen werden können: True oder False
User ID=ACMPDBUserDie Informationen der User ID beziehen sich auf das SQL-Login, mit dem sich der ACMP am SQL Server anmeldet. Die erfolgreiche Anmeldung ist Voraussetzung dafür, dass der ACMP Server starten kann.
Initial Catalog=ACMPDie eingetragene User ID (SQL Login) sollte DB-Owner-Rechte der Datenbank haben. Es handelt sich hierbei um den Datenbanknamen.
Data Source=
ServerNamenEingeben.
aagon.local\SQLEXPRESS
Stellt die SQL Serverinstanz dar. Die Endung .aagon.local entspricht Ihrer lokalen Domäne. \SQLEXPRESS entspricht dem Instanznamen des SQL Servers, zu dem eine Verbindung aufgebaut werden soll (hier: Microsoft SQL Server Express).
Use Encryption for Data=True

Die Daten, die über einen Transfer versendet werden, können zusätzlich verschlüsselt werden. Dazu muss der Wert auf True gesetzt werden, andernfalls findet keine Verschlüsselung statt. Hierbei werden die Daten/Values einer Tabelle verschlüsselt, sodass sie nicht mehr abgefangen oder gelesen werden können.

Hinweis  Hinweis: 

Für die Transportverschlüsselung benötigen Sie u.a. zusätzlich noch ein Zertifikat, welches Sie erstellen müssen. Lesen Sie hier alle nötigen Schritte zur Aktivierung der Transportverschlüsselung nach. 

Der Wert False kann verwendet werden, wenn nur netzwerkinterne Transferwege genutzt werden, die nicht über das Internet stattfinden.
Mögliche Werte, die eingetragen werden können: True oder False

MARS Connection=FalseStandardmäßig ist der Wert deaktiviert. Zum Aktivieren der MARS Connection müssen Sie den Wert auf True setzen. Mit der Funktion können Sie mehrere Batches über eine einzelne Verbindung ausführen.
Mögliche Werte, die eingetragen werden können: True oder False
DataTypeCompatibility=80Vorgegebener Wert der Systemanforderungen für den OLE DB-Treiber für SQL Server.
Trust Server Certificate=FalseWenn Sie den Wert auf True setzen, werden alle Zertifikate als valide angesehen. Bei False wird eine Zertifikatsüberprüfung erzwungen, da jedes Zertifikat bei dem Verbindungsprozess einzeln geprüft wird.
Mögliche Werte, die eingetragen werden können: True oder False

Damit die Änderungen eingelesen werden können, müssen Sie die Datei speichern und schließen. Falls Sie Ihre ACMP Console noch in Betrieb haben sollten, beenden Sie die Anwendung.

Hinweis  Hinweis: 

Wenn Sie Werte in der db.con-Datei korrigieren oder verändern, ist es sinnvoll, die ACMP Console zu schließen, da es andernfalls zu einem Datenverlust kommen kann. Nicht gespeicherte Inhalte können verloren gehen. Sollten Sie im Zuge Ihrer Arbeiten die Anwendung nicht schließen, erfolgt eine Information, dass die aktuelle Session abgelaufen ist und neu gestartet werden muss. 

Öffnen Sie nun den ACMP Server über die Diensteverwaltung „Dienste“ und beenden Sie den gleichnamigen Server. Warten Sie einen Moment, bis der Dienst über den lokalen Computer beendet wird und starten Sie ihn danach neu. Es werden die angepassten Bedingungen eingeladen und eine neu verschlüsselte db.con-Datei angezeigt.

Hinweis  Hinweis: 

Sie können über die StartUpError.txt-Datei verfolgen, ob der Server erfolgreich neu gestartet wurde. 

Diensteverwaltung ACMP Server beenden.png

Diensteverwaltung ACMP Server beenden

Die aktualisierte db.con-Datei wird nach dem Neustart des ACMP Servers eine veränderte Zahlen- und Buchstabenfolge aufweisen, aufgrund der Neueingabe Ihrer Daten.

Connectionstring verschlüsseln

Der Connectionstring wird automatisch verschlüsselt, sofern Sie die Werte der Attribute korrekt eingegeben haben („Provider“, „Password“, „User ID“, „Data Source“ und „Initial Catalog“). Diese fünf Attribute müssen Sie richtig eingeben, um eine Verbindung zwischen dem ACMP Server und SQL Server herzustellen. Tragen Sie einen Wert falsch in die db.con-Datei ein, kann die Datei zwar abgespeichert, jedoch keine Verbindung aufgebaut werden. Überprüfen Sie deshalb stets Ihre Eingaben, um einen erfolgreichen Aufbau zwischen den beiden Servern zu garantieren.
Die Verschlüsselung des Connectionstrings dient dazu, dass die Anmeldeinformationen für die Authentifizierung nicht von anderen Benutzern gelesen werden können.

Verschlüsselte Verbindung zwischen dem ACMP Server und SQL Server erzeugen

Die übertragenen Anmeldedaten können zusätzlich im Connectionstring verschlüsselt werden. Hierzu muss bei der Bearbeitung der Attribute der Wert für Use Encryption for Data auf True gesetzt werden, damit die Übertragung kodiert wird. Dabei werden die Daten verschlüsselt, sodass sie nur noch vom ACMP Server gelesen werden können. Zusätzlich zu dem hier genannten Attribut müssen Sie die anderen Werte noch anpassen. Aktualisieren und speichern Sie die db.con-Datei, sodass sie vom ACMP Server nach einem Neustart desselben eingelesen werden kann.

Siehe auch: Aktivieren der Verschlüsselung

© Aagon GmbH 2024
Besuchen Sie unsere neue Aagon-Community