Sicheres Offenlegen von SQL Server 2008 für die Windows-Authentifizierung


7

Mein Unternehmen möchte, dass ungefähr 100 seiner Vertriebsmitarbeiter (im ganzen Land verteilt) gespeicherte Prozeduren von Excel ausführen und die Daten in die Tabelle zurückgeben können.

Wir haben SQL Server 2008. Ich muss einen sicheren Weg finden, um dies zu tun.

Ich werde ein Formular in Excel erstellen, in dem der Benutzer eine Befehlsschaltfläche drücken kann, um die Daten basierend auf den von ihnen ausgewählten Parametern zu aktualisieren.

  1. Wie kann ich sicherstellen, dass die Verbindung von Excel zum SQL Server sicher ist?
  2. Wie führe ich eine gespeicherte Prozedur von Excel aus?

Ich fand das sehr gute Informationen: http://office.microsoft.com/en-us/excel-help/connect-to-import-sql-server-data-HA010217956.aspx

Windows-Authentifizierung Wählen Sie diese Option aus, um den Windows-Benutzernamen und das Kennwort des aktuellen Benutzers zu verwenden. Dies ist die sicherste Methode, kann jedoch die Leistung beeinträchtigen, wenn viele Benutzer mit dem Server verbunden sind.

Ich möchte jedoch Ihre Eingabe dazu.

Ja, die Vertriebsmitarbeiter haben Windows-Anmeldungen. Kann ich diese Lösung verwenden, wenn sie tatsächlich die Datenkriterien angeben, die Kriterien an die gespeicherte Prozedur senden und dann die Daten vom Server abrufen?

Antworten:


13

Die Wörter "sicher", "belichten", "außerhalb" und "Datenbank" gehören nicht zusammen.

Unter keinen Umständen sollten Sie jemals einen SQL Server dem Internet aussetzen. Das ist eine sehr schlechte Idee.

Ihre Frage sollte also wirklich lauten: Wie gewähren wir Remote-Standorten Zugriff auf unseren SQL Server?

Die Antwort: VPN. Die Remotebenutzer sollten eine VPN-Verbindung zu Ihrem Netzwerk herstellen. Von dort aus können Sie ihnen den entsprechenden Zugriff auf die Datenbank gewähren.


Vielen Dank für Ihre Antwort. Mein Chef möchte, dass ich die IP mit einem Port offenlege. Ist das nicht das Richtige? Können wir den Benutzer irgendwie durch Windows-Authentifizierung auf den Server bringen und die IP NICHT offenlegen?
l - '' '' '-' '' '' '' '' '' ''

3
Wieder eine schlechte Idee. Port-Scanner lokalisieren den Server, dann haben Sie eine ziemlich große Anzahl von Skripten, die diesen Computer Tag und Nacht angreifen. Es macht nichts aus, dass sich Würmer wie SQL Slammer verbreiten, weil Unternehmen an dieser Praxis beteiligt sind.
NotMe

2
SSL verschlüsselt nur die Verbindung zwischen dem Client und dem Server. Es wird nicht dargestellt, dass der Client tatsächlich überhaupt eine Verbindung zu Ihrem Server herstellen darf. In Bezug auf Websites beten die Leute grundsätzlich, dass der Authentifizierungsmechanismus gut genug ist, um Brute-Force-Angriffe zu verhindern. Doch mit Datenbankservern wenden sich die Menschen nur selten auf der Funktion Audit - Konto - Logins und selbst wenn sie es tun selten stören sie die Protokolle bis zu lesen , nachdem ein Problem aufgetreten ist. Selbst wenn Sie die Protokolle lesen, werden Sie nur Tage damit verbringen, den größten Teil des Internets daran zu hindern, darauf zuzugreifen. Vertrauen Sie mir: VPN.
NotMe

4
Die genaue Verbindungsmethode, die Ihre Kunden verwenden würden, ist unerheblich. Nur weil Sie über eine ODBC-Verbindung mit der Datenbank sprechen, bedeutet dies nicht, dass dies jemand anderes tut. Aus Sicht der Datenbankserver ist es auch egal, ob der Client ODBC- oder .NET-Anbieter verwendet oder sogar das Bare-Metal-Verfahren durch manuelles Erstellen der TCP-Pakete auf den Punkt gebracht hat. Das Problem ist nicht, wie der Client eine Verbindung herstellt, sondern nur, wer den Computer überhaupt sehen kann .
NotMe

2
Eine Web-App ist in der Regel aus dem einfachen Grund besser, weil sie beim Einsteigen nur die Aktionen ausführen darf, die Sie ihnen erlauben. Wenn Sie direkt zu einer Datenbank gehen, müssen Sie viel mehr Kontrolle darüber haben, wie Sie die Sicherheit einrichten. Die meisten Leute wissen nicht, wie sie vorgehen sollen.
NotMe

7

Aus Ihrer Beschreibung geht hervor, dass diese Excel-Tabelle als eine Art interaktiver Bericht verwendet wird. In diesem Fall empfehlen wir Ihnen, Reporting Services auszuprobieren. Es ist seit 2005 in jeder Edition von SQL Server enthalten. Auf diese Weise muss für den Zugriff auf den Bericht nur mit einem Webbrowser eine Verbindung zum Berichtsserver hergestellt werden, anstatt direkt zum Datenbankserver zu wechseln. Sie können auch ziemlich ausgefeilte Berichte erstellen, ohne die verrückte VBA-Codierung durchführen zu müssen, die Sie für Excel benötigen (vertrauen Sie mir, ich war dort). Sie können die Berichte in Excel-Dateien exportieren, und die Formatierung funktioniert normalerweise recht gut.

Ich würde dennoch empfehlen, den Berichtsserver hinter einem VPN zu belassen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.