<
Von Version < 19.1 >
bearbeitet von S V
am 2022/06/30 11:52
Auf Version < 22.1 >
bearbeitet von S V
am 2022/06/30 12:01
>
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -26,7 +26,8 @@
26 26  **Powershell Skript zum Erzeugen des Zertifikats**
27 27  {{code language="CSV"}}$dnsname = ([System.Net.Dns]::GetHostByName((hostname)).HostName)
28 28  #Create SSL Certificate (replace with PKI function)
29 -New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -subject $Subject  -DnsName $dnsname -FriendlyName SQLServer -NotAfter (Get-Date).AddMonths(24) -KeySpec KeyExchange{{/code}}
29 +New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -subject
30 +$Subject  -DnsName $dnsname -FriendlyName SQLServer -NotAfter (Get-Date).AddMonths(24) -KeySpec KeyExchange{{/code}}
30 30  
31 31  Sollten Sie einen anderen Weg gehen und Zertifikate aus MakeCert.exe, OpenSSL oder aus einer anderen CA benutzen, müssen Sie jedoch beachten, dass das Zertifikat bestimmte [[Eigenschaften>>https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/enable-encrypted-connections-to-the-database-engine?view=sql-server-2017]] aufweist:
32 32  
... ... @@ -115,6 +115,53 @@
115 115  
116 116  **Per Registry**
117 117  
118 -Die Einstellung des Zertifikats kann auch über die Registry (im Rahmen eines Skripts) erfolgen. Legen Sie dazu unter //HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL14.%Instance%\MSSQLServer\SuperSocketNetLib// (//%Instance%// durch den Instanznamen ersetzen) einen String mit dem Namen //Certificate// an. Als Wert muss der Thumbprint (meistens SHA1) des zu nutzenden Zertifikats (in Kleinbuchstaben) eingetragen werden. Legen Sie daneben ein //DWord// mit dem Namen// ForceEncryption// an und weisen ihm den Wert// 1// zu.
119 +Die Einstellung des Zertifikats kann auch über die Registry (im Rahmen eines Skripts) erfolgen. Legen Sie dazu unter //HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL14.%Instance%\MSSQLServer\SuperSocketNetLib// (//%Instance%// durch den Instanznamen ersetzen) einen String mit dem Namen //Certificate// an. Als Wert muss der Thumbprint (meistens SHA1) des zu nutzenden Zertifikats (in Kleinbuchstaben) eingetragen werden. Legen Sie daneben ein //DWord// mit dem Namen// ForceEncryption// an und weisen ihm den Wert// 1// zu.
119 119  
120 -
121 +=== **Zertifikat verteilen** ===
122 +
123 +Damit die Gegenstelle das angebotene Zertifikat akzeptiert, muss dieses als vertrauenswürdig erkannt werden. Aus diesem Grund muss es in den Windows Certificate Store importiert werden. Beachten Sie, dass dies bei jedem Rechner erfolgen muss, der auf den SQL Server über die gesicherte Verbindung zugreifen soll, auch wenn dies lokal erfolgt.
124 +
125 +=== **Test mit SSMS** ===
126 +
127 +Sie können über das SQL Server Management Studio testen, ob die gesicherte Verbindung tatsächlich erfolgreich ist. Starten Sie dazu die Anwendung und navigieren Sie bei der Verbindung unter den Optionen zu dem Tab //Connection Properties// und aktivieren Sie die Checkbox //Encrypt connection//.
128 +Wenn Sie die Checkbox Trust// server certificate// aktivieren, wird jedes Zertifikat als valide angesehen. Dies wird für den produktiven Einsatz nicht empfohlen!
129 +
130 +{{figure}}
131 +(% style="text-align:center" %)
132 +[[image:Test mit SSMS.PNG]]
133 +
134 +{{figureCaption}}
135 +Verbindungstest über das SQL Server Management Studio
136 +{{/figureCaption}}
137 +{{/figure}}
138 +
139 +{{aagon.infobox}}
140 +Das Zertifikat wird nur dann erfolgreich validiert, wenn die Verbindung über den Namen erfolgt, welcher auch im Zertifikat hinterlegt ist – der FQDN. In der nachfolgenden Abbildung ist es der Eintrag zum Servernamen, welcher aus Datenschutzgründen teilweise unkenntlich gemacht wurde.
141 +{{/aagon.infobox}}
142 +
143 +{{figure}}
144 +(% style="text-align:center" %)
145 +[[image:SSMS Login.PNG]]
146 +
147 +{{figureCaption}}
148 +Login zum SQL Server
149 +{{/figureCaption}}
150 +{{/figure}}
151 +
152 +== ACMP Server Connectionstring anpassen ==
153 +
154 +Sie können die Einstellungen für die Verbindung im SQL Server Management Studio auch über den Connectionstring vom ACMP Server einstellen:
155 +{{code language="CSV"}}Provider=SQLNCLI11.1;Password=MeinGeheimesPW;Persist Security Info=True;User ID=ACMPDBUser;Initial Catalog=ACMP;
156 +Data Source=ServerNamenEingeben.aagon.local\SQLEXPRESS;Use Encryption for Data=True;MARS Connection=False;DataTypeCompatibility=80;Trust Server Certificate=False{{/code}}
157 +
158 +Dazu muss die Eigenschaft **//Use Encryption for Data// **auf //**True**// gesetzt werden.
159 +
160 +{{aagon.infobox}}
161 +Die Verbindung muss auch hier über den FQDN erfolgen, da ansonsten das Zertifikat nicht als valide gilt.
162 +{{/aagon.infobox}}
163 +
164 +Sollte die Eigenschaft //Trust Server Certificate// ebenfalls auf True gesetzt werden, wird jedes Zertifikat als valide angesehen.
165 +
166 +== IPSec ==
167 +
168 +Möchten Sie alternativ einen IPSec-Tunnel verwenden, um eine verschlüsselte Verbindung zwischen dem ACMP Server und dem SQL Server herzustellen, lesen Sie hier die [[Vorgehensweise>>https://sqlstarters.com/2014/01/23/ipsec-settings-for-the-sql-server/]] nach.

Navigation

© Aagon GmbH 2024
Besuchen Sie unsere neue Aagon-Community