Ich bin damit einverstanden, dass die Rechtfertigungslast bei denjenigen liegen sollte, die Zugang benötigen. Normalerweise hatte ich in Umgebungen, in denen ich mich beraten habe, Zugang zu Produktionssystemen, in denen es sich um eine kleine Umgebung handelte und ich die Support-Person war. Ich hatte Zugriff auf Backups usw., wo ich Support für den Support war, und indirekten Zugriff (über einen dedizierten Support-Entwickler) auf Produktionsdaten.
Die große Sache ist: Sie brauchen diesen Zugang, wenn Sie aufgelegt sind, damit alles reibungslos läuft, und Sie müssen die Frage des Finanzmaklers beantworten, ob etwas nicht funktioniert. In diesem Fall können Sie nicht immer mit Daten arbeiten, die älter als ein Tag sind. Andererseits ist es umso schlechter, je mehr Zugang vorhanden ist. In der Regel vermeide ich als Berater diese Art von Zugriff, es sei denn, er wird benötigt. Da ich an Finanzdatenbanken arbeite, möchte ich als letztes beschuldigt werden, meine eigenen Rechnungen eingegeben zu haben :-D.
Wenn Sie andererseits keinen Zugriff benötigen, sollten Sie ihn nicht haben. Ich kaufe das Argument für vertrauliche Daten nicht wirklich, da der Entwickler wahrscheinlich am Haken ist, um sicherzustellen, dass dies korrekt gehandhabt wird (und es ist sehr schwer zu überprüfen, ohne zu prüfen, was tatsächlich gespeichert wurde, wenn ein Fehlerbericht eingeht). Wenn Sie dem Entwickler nicht vertrauen können, dass er sich die in der Entwickler-App gespeicherten Daten ansieht, sollten Sie den Entwickler nicht damit beauftragen, die App zu schreiben. Es gibt zu viele Möglichkeiten, wie der Entwickler die Daten verschleiern und per E-Mail verschicken könnte, und Sie können sich nie sicher sein. MAC-Steuerelemente helfen hier, sind aber immer noch recht komplex zu implementieren.
Das große Problem von meiner Seite hat mit Schreibzugriff zu tun. Wenn ein Entwickler keinen Zugriff hat, hat der Entwickler erst recht keinen Schreibzugriff. Wenn Sie die Integrität der Bücher überprüfen möchten, möchten Sie den Schreibzugriff auf so wenige Personen wie möglich beschränken. Audit Trails sind viel einfacher zu validieren, wenn die Entwickler keinen Zugriff haben. Wenn der Entwickler über Lesezugriff verfügt, haben Sie immer die Frage, ob eine Privilegieneskallation vorhanden ist, die Schreibzugriff gewähren kann (möglicherweise SQL-Injection mit gespeicherten Prozeduren?). Ich hatte häufig vollen Zugriff auf Kundenrechnungsinformationen, wenn ich Zugriff auf Staging-Umgebungen hatte. Wenn es eine Staging - Umgebung ist , die zwar funktioniert, werde ich in der Regel aktiv fragen nicht den Zugang zu Produktion zu haben , es sei denn , es notwendig ist.
Das ist natürlich nicht perfekt. Ein Entwickler könnte immer noch Hintertüren in die Anwendung einbauen, die möglicherweise nicht leicht zu erkennen sind, aber dieser Ansatz ist ein vernünftiger Ansatz, da Sicherungsdaten ab einem Tag vor dem Tag verfügbar sind, an dem ich den Eindruck habe, dass dies das Problem ist, das sie haben.
Hoffe das hilft.
Bearbeiten: Wenn ich nur hinzufüge, dass ich in den größeren Umgebungen, in denen ich gearbeitet habe, Zugriff auf vollständige Sicherungsdaten hatte, die für das Finanzsystem oft zwischen ein paar Tagen und ein paar Monaten alt waren. Dies war immer gut genug für meine Arbeit und das einzige Mal, dass es zusammenbrach, war, als die Finanzleute die Fähigkeit benötigten, mit neueren Daten zu testen, damit sie mit der Produktion mithalten konnten.