2010-12-30 5 views
4

In Bezug auf die Sicherheit von Webdiensten ist kürzlich ein Thema aufgetaucht. Nicht unbedingt die Teile von WSE 3.0, an die Sie vielleicht denken, sondern eher die Sicherung der Dienste innerhalb eines Unternehmens.So implementieren Sie Sicherheit für Webdienste in einem Unternehmen

Zum Beispiel. Wir haben über die Möglichkeit gesprochen, bestimmte Funktionen für das gesamte Unternehmen über einen oder mehrere Web-Service-Endpunkte verfügbar zu machen. Das Problem hängt davon ab, wer auf die Webdienste zugreifen kann. Ich sehe, dass sie auf drei verschiedene Arten zugegriffen werden:

  1. Von einer Website. Diese Website kann die Identität des Benutzers, der auf die Website zugreift, annehmen oder nicht. Daher können Aufrufe an den Webdienst als echter Benutzer, als IIS-Dienstkonto oder als ein anderes Dienstkonto, das wir aus anderen Gründen annehmen, als
  2. von a Stapelprogramm. Auch läuft auf einem Server, aber in der Regel als Dienstkonto
  3. Durch eine Windows-Anwendung auf dem Desktop des Benutzers ausgeführt wird, wobei in diesem Fall der Anmeldeinformationen des Benutzers

nun verwendet werden, in der Theorie uns konnte Lassen Sie die Webdienste für jedermann offen. Ignoranz ist Glückseligkeit, oder? Aber wenn ein Angreifer Zugang zu unserem Netzwerk erhält und die Webdienste entdeckt, hat er ein Freibrief für geistiges Eigentum. So offen ist nicht gut.

Wir könnten sie mit einem ausgeklügelten, selbst entwickelten Schema zur Überprüfung von IP-Adressen, Benutzernamen usw. sperren. Aber das scheint ein administrativer Albtraum zu sein.

Irgendwelche Gedanken? Wir werfen ein paar Ideen auf, aber ich wollte sehen, ob jemand diese Art von Problem bereits gelöst hat.

Dank

+0

Warum sollten Sie WSE 3.0 überhaupt verwenden? Es ist veraltet. –

Antwort

1

In meiner Firma verwenden wir X509-Zertifikate mit verschlüsselten Signaturen. Dies gewährt Ihrem Dienst die größte Sicherheit. Um den Zugriff auf Ihren Dienst zu beschränken, können Sie nur die öffentlichen Zertifikate Ihrer Kunden zulassen. Dies bedeutet natürlich, dass Ihre Kunden auch eigene Zertifikate haben müssen. Wenn Ihre Kunden keine eigenen Zertifikate haben, können Sie Ihre eigenen mit OpenSSL erstellen. Ich habe diese App selbst benutzt und legitime Zertifikate erstellt, die für Verschlüsselungs- oder Handshake-Zwecke verwendet werden können.Außerdem glaube ich, dass Sie für jeden Ihrer Kunden benutzerdefinierte Richtlinien erstellen und den Zugriff auf Ihre Dienstfunktionen einschränken können, indem Sie für jede Funktion ein Richtlinienattribut verwenden (mag lügen, aber ich denke, ich bin irgendwo darüber gestolpert). Hoffe das hilft.

0

Wenn Sie öffnen Endpunkte für den internen Gebrauch bedenkt, dass eine Sache, aber wie viele wahrscheinlich internen Kunden haben Sie?

Wenn die Endpunkte Excel-Tabellen oder BI-Datenwürfel steuern, die dynamische Daten benötigen und von einer Vielzahl von Benutzern verwendet werden können, müssen Sie die Sicherheit sorgfältig berücksichtigen. Vielleicht könnten Sie einen täglich generierten API-Schlüssel auf einer prominenten Seite im Firmenintranet veröffentlichen - so dass interne Benutzer der Daten eine kleine Unannehmlichkeit haben, wenn sie die Endpunkte verwenden möchten, aber es wird kein unangenehmer Wartungsjob für die IT .

Wenn die Endpunkte von einer Handvoll maßgeschneiderter Anwendungen konsumiert werden, würde ich vorschlagen, die Sicherheit innerhalb der Apps selbst fest zu koppeln (in einer Konfigurationsdatei fest codiert und dann verschlüsselt). Auf diese Weise kann der Zugang weit verbreitet, aber nicht allgemein bekannt sein.

Offensichtlich nur GETs erlauben (und sicherstellen, dass GETs keine verschleierten POSTs oder PUTs sind) und jeden Endpunkt für die Abmeldung des leitenden Managements dokumentieren. Wenn das Senior Management mit den Risiken des Zugriffs auf die Daten zufrieden ist, dann ist es wirklich nur eine Debatte darüber, wie Sie es sperren.

+0

Eigentlich ist es ein bisschen von allem oben genannten. Die meisten Verbraucher der Webdienste werden benutzerdefinierte Apps sein, die wir geschrieben haben. Einige werden Excel-Tabellen sein. Wir kicken um die Idee, Kerberos zu verwenden, aber keiner von uns hat wirklich ein gutes Verständnis für die Technologie, noch sind wir sicher, dass es unsere Probleme lösen wird. – DashTechnical

Verwandte Themen