User Tools

Site Tools


prom20:usermanagement:licencegroup

LicenceGroup

Die Lizenzgruppe umfasst mehrere Mandanten und verwaltet die Lizenzen für diese. Über die Lizenzgruppe wird bestimmt, wieviele Lizenzen erworben wurden, wie lange diese gültig sind1), und für welche Mandanten diese gelten. Ein Lizenzschlüssel, der einen Signatur der Lizenzgruppe gleich kommt, und nur von der TAV Enterprise Software erstellt werden kann, sorgt dafür, dass die Lizenzen zu einer Gruppe nicht vom Kunden manipuliert werden können.

Dabei wird der Lizenzschlüssel unter der Zugabe von Salt gehasht. Noch sicherer wäre eine asymmetrische Verschlüsselung des Schlüssels, aber wegen der Rückwärtskompatibilität zu PRO·M 1.0 wird der Hash beibehalten.

Die Lizenzgruppe wird über ein Master Konto angelegt, über einen zusätzlichen Dienst, der extra hierfür eingeschaltet wird, und danach wieder abgeschaltet werden sollte. Das Master Konto hat ein Kennwort, dass der Kunde vergeben kann und in der Konfigurationsdatei zu dem Dienst speichern kann. Da der Kunde keinen eigenen Lizenschlüssel erstellen kann, ist die Sicherheit für die TAV Enterprise Software GmbH dadurch gegeben, dass der Lizenzschlüssel selbst sicher ist, und die Sicherheit für den Kunden ist dadurch gegeben, dass das Master Konto Kennwort nur ihm bekannt ist und er den Dienst ein und ausschalten kann.

Identität

Die Lizenzgruppe wird über den Namen identifiziert.

Inhalte

Die Lizenzgruppe beinhaltet eine Liste von LicenceGroupTenant Objekten. Ein LicenceGroupTenant Objekt besteht aus der Id des Mandanten und der Domäne für die Anmeldung. DAS IST NOCH FALSCH!!! Hier gehört nur die Id rein, und falls die Authentifizierung eine Domäne für die Anmeldung benötigt2), dann muss der Tenant aus Entity|Tenant eine Rolle in dem Authentifizierungs Modul erhalten.

Regeln

Keine Nennenswerten Regeln.

Befehle

  • AddLicenceGroup: Lizenzgruppe-Rolle einer Person hinzufügen
  • ChangeLicenceGroupName: Änderung des Kontonamens, z.B um ein doppelt vergebenen Namen zu korrigieren.
  • AllowLicenceGroupFullImpersonation: das Recht geben, alle anderen Konten zu impersonieren.
  • DenyLicenceGroupFullImpersonation: das Recht nehmen, alle anderen Konten zu impersonieren.
  • LockLicenceGroup: Das Konto sperren. Egal, welche Authentifizierungsmethode umgesetzt wird, hierauf sollte beim Authentifizieren immer geprüft werden. Die integrierte Authentifizierung sperrt z.B. das Konto nach 5 Fehlversuchen3)
  • UnlockLicenceGroup: Das Konto entsperren, z.B. nach einer automatischen Sperre und nachdem das Kennwort zurück gesetzt wurde4).

Ereignisse

  • LicenceGroupAdded
  • LicenceGroupChanged
  • LicenceGroupAllowedFullImpersonation
  • LicenceGroupDeniedFullImpersonation
  • LicenceGroupLocked
  • LicenceGroupUnlocked

Workflow

I.d.R. hat ein Lizenzgruppe ohne Authentifizierungsmechanismen wenig Sinn. Somit wird meist der Befehl AddLicenceGroup in einem Batch mit dem Befehl AddLicenceGroupAuthentication5) abgeschickt, damit das Konto gleich mit Kennwort oder einem anderen Authentifizierungsmechanismus erstellt wird. Es kann auch gleich mit der Person erstellt werden, da das Konto ja eine Rolle der Person ist, und somit Teil desselben Haupt Aggregates ist.

1) To-Do
2) username@domain
3) Die Logik ist eingebaut, das Ergebnis nicht, weil PRO·M 1.0 noch keine Sperren nach N Fehlversuchen kennt
4) Bzw. in demselben Batch, da beide Befehle auf dasselbe Hauptaggregate gehen
5) Oder einem ähnlichen
prom20/usermanagement/licencegroup.txt · Last modified: 2013/11/13 18:51 by rtavassoli