.NET-Anwendung pro Maschine / pro Benutzer Lizenzierung

9

Ich bin dabei, eine sehr einfache Lizenzierungsfunktion für meine Anwendung zu implementieren. Eine Seriennummer kann pro Maschine (oder pro Betriebssystem) oder pro Benutzer erteilt werden (wie für CAL in Windows Server: wenn meine Anwendung von mehreren Benutzern auf einem Computer verwendet wird oder wenn sie von einem Benutzer auf mehreren Computern verwendet wird Maschinen).

  1. Für die Lizenzierung pro Betriebssystem verwende ich SerialNumber von Win32_OperatingSystem .

  2. Für die Benutzerlizenzierung verwende ich:

    %Vor%

Ein Hash einer erhaltenen OS-Seriennummer oder SID wird dann in der Datenbank gespeichert, die mit der Anwendungsserie verknüpft ist; Jedes Mal, wenn das Programm gestartet wird, fragt es den Server ab und sendet Hash von OS SN / SID und Anwendungsserien.

Ist es richtig, es zu tun, oder ist es völlig falsch? Wird es auf jedem Windows-Rechner funktionieren? (Beispiel: Motherboard-Serien verwenden ist falsch )

    
Arseni Mourzenko 27.04.2010, 23:54
quelle

1 Antwort

2

Ich sehe nichts falsch mit Ihrem Ansatz, da ich einen ähnlichen Ansatz bei der Arbeit gesehen habe - jedoch verwenden wir eine Kombination aus Betriebssystem S / N und Hardware-IDs für die Maschinenlizenzierung. Unsere Apps haben keine Lizenzierung pro Nutzer, daher kann ich nicht wirklich darauf hinweisen.

Beachten Sie, dass Sie nicht davon ausgehen sollten, dass von WMI zurückgegebene Werte in einem bestimmten Format vorliegen ( Win32_OperatingSystem sollte OK sein, IDs der Hardware sind nicht immer OK)

Ich habe Fehler festgestellt, bei denen der Code, der Hardware-IDs akzeptiert, ein bestimmtes Format angenommen hat und das Vorhandensein von nicht-alphanumerischen Zeichen wie Kommata und Leerzeichen nicht berücksichtigt wurde.

    
anonymous 29.04.2010, 02:35
quelle