Ich bin dabei, einige Excel-Berichte zu erstellen, und ich versuche, meine SQL-Verbindungen zu verschlüsseln. Auf der Serverseite habe ich alles richtig eingerichtet und mit Microsoft Management Studio kann ich eine sichere Verbindung aufbauen. Jedoch kann ich keine Lösung für Excel finden. Ich denke, ich brauche etwas wie Encrypt = yes
oder ist das ADODB.Connection SSL nicht unterstützt?Verschlüsseln Sie Excel-VBA ADODB-Verbindung
Private Function GetDataFromADO(ByVal Sel As String) As ADODB.Recordset
'Declare variables'
Dim objMyConn As ADODB.Connection
Dim objMyCmd As ADODB.Command
Dim objMyRecordset As ADODB.Recordset
Set objMyConn = New ADODB.Connection
Set objMyCmd = New ADODB.Command
Set objMyRecordset = New ADODB.Recordset
'Open Connection'
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=" & sqlServer & ";Database=" & _
sqlDB & ";User ID=" & sqlUsername & ";Password=" & sqlPassword & ";"
Dim s As String
s = objMyConn.ConnectionString
objMyConn.Open
'Set and Excecute SQL Command'
Set objMyCmd.ActiveConnection = objMyConn
objMyCmd.CommandText = Sel
objMyCmd.CommandType = adCmdText
'Open Recordset'
Set objMyRecordset.Source = objMyCmd
objMyRecordset.Open
Set GetDataFromADO = objMyRecordset
Vielen Dank im Voraus
Soweit ich weiß, wird die Verbindung zu einem SQL Server nicht von Excel sondern von Windows (in Bezug auf Sicherheit, Netzwerk, Verschlüsselung, Authentifizierung, etc.) behandelt. Sie können das Verbindungszeitlimit nicht einmal in Excel/ADO festlegen. Nun, Sie können natürlich 'ADODB.Connection.ConnectionTimeout = 5000' verwenden. Sie können diese Zeile aber auch überspringen, da sie keine Auswirkungen hat. Also, wenn ich mich nicht völlig irre, dann sollten Sie sich auf Ihre SQL-Einstellungen konzentrieren und sicherstellen, dass es nur verschlüsselte Verbindungen zulässt: https://msdn.microsoft.com/en-us/library/ms191192.aspx Dann sollten Sie in Ordnung sein mit 'Trusted_Connection = yes'. – Ralph