4 Stimmen

Was sind einige bewährte Verfahren für den Umgang mit sensiblen Informationen?

Ich entwickle derzeit eine Anwendung für einen Kunden, die es ihnen ermöglichen wird, die Kreditkarten ihrer Kunden automatisch abzurechnen.

Mich interessiert, welche Best Practices es gibt, um Kreditkarteninformationen und andere sensible Daten wie Sozialversicherungsnummern, Kontonummern usw. sicher zu speichern und darauf zuzugreifen.

Ich gehe davon aus, dass eine Art von Verschlüsselung verwendet wird, aber bevor ich zu tief eintauche, wollte ich sehen, wie andere diese Anforderungen handhaben.

Nicht dass es eine Rolle spielt, aber wir entwerfen die Software mit Microsoft SQL Server für die Datenbank und verwenden C# und ASP.NET.

5voto

mannu Punkte 793

Lies die PCI-Anforderungen. Alles wird dort sein.

Eigentlich müssen Sie ihnen folgen.

0 Stimmen

Können Sie das etwas näher erläutern ... vielleicht einige Links bereitstellen?

0 Stimmen

Natürlich. :) Die Kreditkartenunternehmen haben sich im Kampf gegen Betrug zusammengeschlossen. Jetzt müssen alle, die Kreditkarten verwenden, diese Anforderungen beachten. Hier können Sie dazu mehr lesen: biztechmagazine.com/article.asp?item_id=354

3voto

Michael Burr Punkte 320591

1 - Sammeln Sie nicht einmal Sozialversicherungsnummern, es sei denn, Sie benötigen sie wirklich. Und es sei denn, Sie sind eine Bank oder die Regierung, wahrscheinlich benötigen Sie sie nicht.

2 - Sammeln Sie keine anderen sensiblen Informationen, es sei denn, Sie benötigen sie wirklich.

3 - Verwenden Sie alle geeigneten Kontrollen (getrennte Maschine für die Datenbank, firewallgeschützt, Zugriffskontrollen usw.) für die Dinge, die Sie wirklich aufbewahren müssen.

3voto

James Schek Punkte 17598

Verwenden Sie aggressiv Standards, um das Host-System sowohl in Bezug auf das Betriebssystem als auch auf die physische Sicherheit zu sichern, wie z.B. die NSA-Richtlinien.

Platzieren Sie die Datenbank auf einem separaten System vom Webserver oder anderen Funktionen, um physischen Zugriff und Berechtigungserweiterungen zu verhindern.

Programmieren Sie defensiv, um SQL-Injection-Angriffe und ähnliche Exploits zu vermeiden.

Bei der Entwicklung sollten Sie zuerst an Sicherheit denken. Nachträglich Sicherheitsmaßnahmen anzuwenden, kann schwierig und fehleranfällig sein.

Versuchen Sie, die verschiedenen Teile der Anwendung zu trennen... d.h. verwenden Sie nicht den gleichen Viewer oder Controller für den "öffentlichen" Zugriff und den "privaten" Zugriff.

Seien Sie sich bewusst und befolgen Sie alle lokalen Gesetze bezüglich des Umgangs mit diesen Daten... Es gibt viele davon da draußen.

Halten Sie ein Vorrat an Umschlägen bereit, um Ihre Kunden im Falle eines Datenlecks zu benachrichtigen. Wenn Sie Informationen über 26 Millionen Kunden verlieren, könnten Sie möglicherweise nicht genügend Umschläge beschaffen, um die gesetzliche Frist für die Benachrichtigung einzuhalten.

1voto

Simon Gibbs Punkte 4627

Nicht - ich meine, brauchst du das wirklich?

Es gibt einen starken Markt für Drittanbieter-Zahlungsdienste, die die Details für dich empfangen und dir einfach eine Nachricht senden können, wenn die Zahlung erfolgt ist. Es gibt Alternativen wie PayPal und du kannst die Daten mit MD5 oder SHA1 schützen - Triviale Dinge wie die genaue Zeichenfolge von Zahlen weglassen.

0 Stimmen

Ich wünschte, es wäre so einfach ... aber wir müssen.

1voto

mhawke Punkte 79590

Verschiedene PCI-Standards sind für verschiedene Anwendungen erforderlich. Wenn Ihre Anwendung einfach Kreditkartennummern sammelt und diese dann an ein PCI-konformes Zahlungsgateway eines Drittanbieters sendet, sind Ihre Compliance-Anforderungen nicht zu hoch - vorausgesetzt, Sie speichern die Kartennummer oder CVV nicht.

Hinsichtlich des Loggens sollten Sie die Kreditkartennummer "ausnehmen", z.B. die ersten 6 Ziffern und die letzten 3 Ziffern beibehalten, aber die Zwischenziffern unkenntlich machen. CVV überhaupt nicht protokollieren.

Die PCI-Standarddokumente gehen ins Detail, aber alles hängt von den Anforderungen Ihrer Anwendung ab, um festzustellen, welches Compliance-Level erforderlich ist.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X