2009-05-21 3 views
0

Wir haben eine Velocity-Vorlage für einen Beleg. Die Vorlage enthält die Steueridentifikationsnummer, deren Wert zum Zeitpunkt der Quittungserstellung ersetzt wird. Dadurch wird sichergestellt, dass die TIN des echten Lizenzinhabers auf dem Beleg gedruckt wird.Wie schützt man eine Geschwindigkeitsvorlage vor Manipulationen?

Wie können wir verhindern, dass der Endbenutzer die TIN-Nummer in der Vorlage selbst fest programmiert? Gibt es eine Möglichkeit für Velocity, eine Exception auszulösen, wenn zum Zeitpunkt der Zusammenführung kein Feld in der Vorlage gefunden wird?

+0

Um klar zu sein, machen Sie sich Sorgen darüber, dass der Benutzer, der Ihre Anwendung ausführt, die Vorlage manipuliert? Gibt es nicht noch viele andere Dinge, an denen sie auch manipulieren könnten - zum Beispiel den Ausdruck der Quittung? –

Antwort

1

Darf der Benutzer andere Teile der Vorlage anpassen?

Wenn nicht, könnten Sie eine MD5-Prüfsumme für die Vorlage in Ihrem Programm einfügen und überprüfen, ob die Datei manipuliert wurde.

Nicht sicher, ob dies die Mühe wert ist. Es gibt viele andere Möglichkeiten für einen böswilligen Benutzer, die Quittung zu fälschen, und Sie können nicht alle davon stoppen.

4

Sie sind möglicherweise besser dran, indem Sie die Vorlage selbst schützen, anstatt zu versuchen, Velocity dazu zu veranlassen, über inkorrekte Operationen zu berichten. Velocity ist ziemlich tolerant gegenüber fehlenden Feldern usw. Ich vermute, dass es nicht tun wird, was Sie wollen.

Können Sie die Vorlage schützen, indem Sie sie oder ähnliches signieren? Auf diese Weise sollte es sofort erkennbar sein, wenn jemand damit interferiert hat.

+0

binden Sie auch einen Teil der Lizenz in den Druckprozess (nicht nur das Drucken einer Nummer). Auf diese Weise sollte es ohne gültige Lizenz nicht gedruckt werden. Wenn Sie befürchten, dass sie es verwenden, um mehr zu drucken, als die Lizenz erlaubt, dann haben Sie andere Probleme als eine Vorlage zu sichern, weil das gesamte Geschäftsmodell falsch ist. – Chii