Gernhard_Steiff 0 Geschrieben 26. Januar 2015 Melden Teilen Geschrieben 26. Januar 2015 Hallo zusammen, Ich habe mich hier angemeldet, weil ich hoffe ihr könnt mir helfen. Ich habe eine MSSQL Datenbank mit Stored Procedures, die ich aus einem .NET Programm aufrufe. Kunden liefere ich die Software und das SQL Script zum erstellen der Datenbanktabellen und StoredProcedures aus. Eine der StoredProcedures ist für die Lizenzprüfung, um zu prüfen, wieviele Benutzer gleichzeitig angemeldet sind. Theoretisch kann jetzt aber ein Benutzer hergehen und 1. Entweder vor dem Einspielen des SQL Scripts schon die Stored Prozedure direkt im Script ändern (so dass z.B. immer nur ein gleichzeitiger Benutzer der Software gemelet wird) oder 2. Die Stored Procedure direkt in der Dtaenbank anpassen. Jetzt meine Frage: Gibt es Möglichkeiten, die Stored Procedures so zu schützen, dass entweder sie nicht mehr funktionieren, wenn sie manipuliert wurden, oder dass es gar nicht erste mehr möglich ist, diese zu bearbeiten? Vielleicht irgendwie Binär ausliefern? Vielen Dank und viele Grüße Zitieren Link zu diesem Kommentar
Sunny61 806 Geschrieben 26. Januar 2015 Melden Teilen Geschrieben 26. Januar 2015 In https://msdn.microsoft.com/de-de/library/ms187926.aspx gibt es den Punkt ENCRYPTION. Zitat daraus: ENCRYPTION Gilt für: SQL Server 2008 bis SQL Server 2014. Gibt an, dass SQL Server den Originaltext der CREATE PROCEDURE-Anweisung in ein verborgenes Format umwandelt. Die Ausgabe der Verbergung ist nicht direkt in den Katalogsichten in SQL Server sichtbar. Benutzer, die keinen Zugriff auf Systemtabellen oder Datenbankdateien haben, können den verborgenen Text nicht abrufen. Der Text ist jedoch für Benutzer mit umfangreichen Privilegien verfügbar, die entweder auf die Systemtabellen über den DAC-Port oder direkt auf die Datenbankdateien zugreifen. Des Weiteren können Benutzer, die einen Debugger an den Serverprozess anfügen können, die entschlüsselte Prozedur zur Laufzeit aus dem Arbeitsspeicher abrufen. Weitere Informationen zum Zugreifen auf Systemmetadaten finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten. Diese Option ist für CLR-Prozeduren nicht gültig. Prozeduren, die mit dieser Option erstellt wurden, können nicht als Teil der SQL Server-Replikation veröffentlicht werden. Ausführlich testen wenn Du es einsetzen möchtest. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.