2009-06-25 11 views
0

Gibt es eine Möglichkeit, eine eindeutige maschinenspezifische System-ID in einer Flex-Anwendung in einem Browser abzurufen, damit beispielsweise festgestellt werden kann, ob die Maschine ordnungsgemäß lizenziert ist Anwendung?Get unique System ID mit Flex

+0

Lassen Sie mich den Zweck klären, warum eine maschinenspezifische Identifikation benötigt wird. Vielleicht weiß jemand, wie dies auch ohne jeglichen Hardware-Informationszugriff erreicht werden kann. Ich habe eine Bibliothek für Flex entwickelt und möchte die Testversion herunterladen. Der Benutzer kann dann seine Anwendung mit dem SWC für zB 14 Tage zusammenstellen. Nach 14 Tagen werden sie sich auf der Website registrieren, um die Vollversion der SWC herunterzuladen, die speziell vor Ort kompiliert wurde und nur auf dem Rechner läuft, auf den sie heruntergeladen wurde. Hier kommt die einzigartige ID ins Spiel. – Fergal

Antwort

3

Ich kann mir keine Möglichkeit vorstellen, dies auf der Basis des Benutzers Maschine oder Betriebssystem zu tun. Der springende Punkt bei Browser-Anwendungen ist, dass sie überall und jederzeit über einen Browser laufen können. Nach meinem Wissen stellt Flash keine Informationen bereit, die vernünftigerweise in eine eindeutige Rechner-ID für Lizenzzwecke umgewandelt werden könnten, nicht einmal die MAC-Adresse einer Netzwerkkarte auf dem Rechner.

Persönlich denke ich, dass Sie besser einen Benutzernamen/ein Passwort für Benutzer benötigen, um sich einzuloggen, und dann einen in einem Cookie gespeicherten Sitzungsschlüssel verwenden, um den Benutzer diesen Schritt überspringen zu lassen Diese Art von Feature, wie Google Mail hat. Dies hat den Vorteil, dass der Benutzer die Anwendung von jedem beliebigen PC aus starten kann.

+0

Ja, nachdem ich mich gut umgesehen habe, bin ich zu demselben Schluss gekommen. Am besten lassen Sie jemanden sich authentifizieren und speichern Sie diese Authentifizierung als Flash-Cookie. Vielen Dank. – Fergal

+1

Während es für Video- und Audioinhalte verwendet werden soll, enthält Flash Access 2.0 DRM eine API zur eindeutigen Identifizierung eines Clients/Computers. Diese Informationen sind nur im Lizenzserver (Java SDK) und nicht in ActionScript verfügbar und erfordern einen Individualisierungsprozess, der auftritt, wenn der Flash-Zugriffscode zum ersten Mal von der Flash-Laufzeit des Clients geladen wird. Siehe: http://help.adobe.com/de_DE/flashaccess/2.0/javadocs/com/adobe/flashaccess/sdk/cert/MachineToken.html – jaaronfarr

0

Sie können nicht wirklich maschinenspezifische Informationen wie MAC-Adresse oder andere IDs von einer Flex-App abrufen. Sie sollten wahrscheinlich eine andere Technik wie ASP.NET oder JSP verwenden.

2

erstellen UUID innerhalb flex

import mx.utils.UIDUtil; 

var myUUID:string = UIDUtil.createUID(); 

Ich nehme an, wenn Sie wirklich klug erhalten mögen Sie diese Zeichenfolge mit einem lokal bekannten Salz verschlüsseln konnten und einen verschlüsselten Lizenzschlüssel generieren, die gemeinsam genutzt werden können. Sie können die Salze oder Schlüssel in regelmäßigen Abständen ändern, um den Lizenzablauf zu erzwingen.

Sie müssen die Schlüsseldaten in einem Backend irgendwie verwalten.

+0

Es hat eine Weile gedauert, bis ich gefunden habe, aber in neueren Air-Versionen gehört diese Funktion nun zu einer anderen Klasse: RPCUIDUtil.createUID. Paket: mx.utils. Ich musste auch in einem flexiblen Projekt auf /frameworks/libs/air/aircore.swc verweisen, um es verwenden zu können. – santiagoIT

2

ILog Elixir tut dies, aber sie tun es durch einen traditionellen Installationsvorgang. Die SWC-Dateien sind mit einem Wasserzeichen versehen, aber wenn Sie Ihre gültige Seriennummer eingeben, werden unmarkierte SWC-Dateien entsperrt und der Quellcode wird zur Verfügung gestellt.

Ich habe keine Details, wie sie tatsächlich darüber gehen, aber es ist nicht direkt durch flex. Vielleicht würde die Suche nach traditionellen Softwareinstallationsprozessen und das Entschlüsseln verschlüsselter Daten auf diese Weise die gewünschte Antwort liefern.