Schutz des eigenen Codes auf dem SQL-Server

20/01/2009 - 15:31 von Lutz Uhlmann | Report spam
Hallo NG!

Mich beschàftigen wie man beim SQL-Server sein "geistiges Eigentum" schützen
kann.

Der SQL-Server für ein Projekt steht natürlich beim Kunden vor Ort. Der
Server ist in das dortige Windows-Netzwerk (Domain) integriert. Nun mache
ich mir Gedanken um die "Geheimnisse" unserer Anwendung. Der Großteil der
Logik liegt natürlich in der Client-Anwendung und ist dort relativ sicher.
Was ist aber mit der gesamten Datenstruktur bzw. der Logik (SPs etc) im
SQL-Server?
Als Domain-Admin kann die dortige EDV natürlich auch auf den SQL-Server
zugreifen und damit erst einmal die gesamte Datenstruktur sowie SPs,
Funktionen, Views etc einsehen.
Bei den SPs und Funktionen kann ich den Code wohl verstecken, indem ich die
Logik im VS programmiere und die Assemblys in den Server lade - nach meinem
Verstàndnis kann man dann nicht mehr den "Quellcode" auf dem Server
einsehen. Nun gehören ja auch die gesamte Datenstruktur und Sichten in
gewisser Weise dazu. Bei diesen muß ich wohl damit leben, daß diese
einsehbar sind. Oder gibt es die Möglichkeit ungewünschten Domànen-Accounts
den Zugriff sicher zu verweigern?

Wie schützt ihr eure Entwicklungsleistungen bei SQL-Server-Projekten?
Was sollte ich wie schützen?
Gibt es dazu gute Abhandlungen?

Danke im voraus ...

Lutz
 

Lesen sie die antworten

#1 Elmar Boye
21/01/2009 - 09:48 | Warnen spam
Hallo Lutz,

Lutz Uhlmann schrieb:
Mich beschàftigen wie man beim SQL-Server sein "geistiges Eigentum"
schützen kann.



Der beste Schutz ist im deutschen (und internationalen) Recht das
Urheberrecht. Voraussetzung dafür ist eine hinreichende Schöpfungshöhe.

Der SQL-Server für ein Projekt steht natürlich beim Kunden vor Ort.



Am Ende kann ein Kunde immer an die Informationen kommen,
genügend technische Kenntnisse vorausgesetzt (bzw. eingekauft).

Als Domain-Admin kann die dortige EDV natürlich auch auf den SQL-Server
zugreifen und damit erst einmal die gesamte Datenstruktur sowie SPs,
Funktionen, Views etc einsehen.



Du kannst diese Informationen verschlüsseln (WITH ENCRYPTION),
was seit SQL Server 2005 nicht mehr so leicht umgangen werden kann
werden kann (man muß schon einiges mehr hacken).

Bei den SPs und Funktionen kann ich den Code wohl verstecken, indem ich die
Logik im VS programmiere und die Assemblys in den Server lade



.NET Assemblies können geknackt werden, Obsfucation kann
das nicht 100% verhindern, nur schwerer machen.

Wobei das alles kriminelle Energie voraussetzt, und Du gegen
solche "Kunden" vorgehen kannst.

Oder gibt es die Möglichkeit ungewünschten Domànen-Accounts
den Zugriff sicher zu verweigern?



Nein, nicht wirklich.
Mit SQL Server 2008 sind Administratoren zwar nicht mehr
automatisch zugriffsberechtigt (kein Mitglied mehr von SYSADMIN).
In der Praxis wird aber jemand den Server warten müssen,
und wenn ihr nicht die Datenbanken selbst verwaltet (und
die Gewàhrleistung dafür übernehmt) - so wird immer jemand
Zugriff darauf haben.

Wie schützt ihr eure Entwicklungsleistungen bei SQL-Server-Projekten?
Was sollte ich wie schützen?



In der Regel sind eigentlich nur wenige Teile wirklich schützenswert.
Denn eine Datenbankstruktur ist - auch wenn viel an eigener Arbeit
drin steckt - selten wirklich einzigartig.
Auch der Quellcode von Prozeduren ist vielfach mehr Fleißarbeit.
Wenn sich jemand diesem Fleiß nicht unterziehen will und ihn
"klaut", macht er sich strafbar und ist damit regreßpflichtig.

Der beste Schutz am Ende ist ein guter Support und Kundenpflege,
denn solche Dienstleistungen lassen sich, in Verbindung
mit einer guten Software, nicht einfach kopieren.

Gruß Elmar

Ähnliche fragen