2017-03-07 1 views
0

Beachten Sie, dass es sich um eine mandantenfähige Plattform handelt und Benutzer alle Ressourcen anzeigen können, die der Organisation gehören, zu der sie gehören, und die Ressourcen anderer Organisationen nicht anzeigen können. Wenn alle Ressourcen-UUIDs mithilfe einer deterministischen UUID mit der UUID ihrer Besitzerorganisation als Namespace generiert werden, kann die Eigentümerorganisation einer Ressource nur mit der Organisations-UUID, der UUID der Ressource und der deterministischen UUID-Methode ermittelt werden?Ist es möglich und sicher, deterministische UUID für die Zugriffskontrolle zu verwenden?

Ich werde von hochgradig deterministischen Bitcoin-Wallets zu dieser Idee geführt, wo ein initialer privater Schlüssel verwendet wird, um alle nachfolgenden privaten Schlüssel in der Brieftasche zu erzeugen (möglicherweise falsche Umschreibung), so dass Sie immer dieselben privaten Schlüssel wieder generieren können von nur dem ursprünglichen.

Antwort

1

In der Regel weisen Umgebungen mit mehreren Mandanten eine stärkere Isolation der Mandanten auf als nur die UUID eines Besitzers. Im Allgemeinen haben UUID-Werte eine nicht-deterministische Komponente. Wenn Sie mit einer deterministischen UUID arbeiten, kann jemand auf den Wert einer anderen Eigentümerorganisation schließen. An diesem Punkt würde es scheinen, deterministische UUID = int Identität. Wenn ein Angreifer den UUID-Wert angeben kann, ist er anfällig.

Die Frage, die Sie vielleicht stellen, ist, ob Unauffälligkeit Schutz bietet. Während auffällig sein kann ein größeres Ziel auf den Rücken legen, zufällige unauffällige Menschen haben ihre Identität die ganze Zeit gestohlen. Echte Sicherheit ist mit Schlüsseln nicht Algorithmen.

+0

Ich denke, ich habe ein wichtiges Detail weggelassen. Die Firmen-UUID würde nicht wie ein Geheimnis verwendet werden, sondern würde nur verwendet werden, um zu identifizieren, ob eine Firma eine andere Ressource besitzt. Ein authentifizierter Benutzer würde sein Authentifizierungstoken (wie beispielsweise OAuth2) bereitstellen, und von diesem Token würden die Benutzerinformationen vom Authentifizierungssystem einschließlich der Unternehmens-UUID angefordert. Die Unternehmens-UUID könnte mit jeder Ressource gespeichert und auf diese Weise verglichen werden, oder wenn UUIDs basierend auf der ursprünglichen Unternehmens-UUID deterministisch sein können, müssen Sie nicht einmal die Unternehmens-UUID auf jeder Ressource speichern. – rgrwkmn

+0

Wir könnten in Sicherheitsmethoden für Umgebungen mit mehreren Mandanten eindringen, wie separate DB-Tabellen oder separate DBs für jede Firma, aber meine Frage betrifft die Möglichkeiten von deterministischen UUIDs. – rgrwkmn

+0

Beträgst du normale Uuid vs. nicht-deterministische Uuid? Es ist nicht klar, warum sie Ihren Anwendungsfall ansprechen, Sie haben eindeutig Vorbehalte gegenüber ihrer Verwendung. Warum würdest du nicht einfach einen 64 Bit Int benutzen? – user3112728

Verwandte Themen