Zugriffskontrolle

Die Tokenisierungsunterstützung umfasst eine Zugriffskontrollfunktion, die sowohl rollenbasierte als auch eigentumsbasierte Kontrollmechanismen unterstützt.

Mit rollenbasierter Kontrolle können Benutzer bestimmte Methoden mit einer verknüpften Rolle aufrufen, wie Token Admin oder Token Minter. Mit der eigentumsbasierten Kontrolle können Sie den Zugriff von Benutzern auf Assets einschränken, deren Eigentümer sie nicht sind. Bei der eigentumsbasierten Zugriffskontrolle können bestimmte Methoden von den Benutzern aufgerufen werden, die Eigentümer der Assets sind, z.B. Token Owner oder Account Owner. Spezifische Informationen zur Zugriffskontrolle für Methoden finden Sie in den einzelnen Einträgen für die Methoden, die in den folgenden Themen dokumentiert sind:
Die rollenbasierte Zugriffskontrolle unterstützt die folgenden Personas:
Tokenadministrator
Token Admin-Benutzer können zugewiesen werden, wenn ein Token Chaincode bereitgestellt wird. Die Benutzerinformationen Token Admin werden in der Statusdatenbank gespeichert. Ein Token Admin-Benutzer kann Token Admin-Berechtigungen für andere Benutzer erteilen und entfernen. Ein Token Admin-Benutzer kann seine eigenen Token Admin-Berechtigungen nicht entfernen. Ein Token Admin-Benutzer kann jedem Benutzer die Rolle Org Admin, Minter, Brenner oder Notar zuweisen.
Organisationsadministrator
Die erweiterten Token Taxonomy Framework-Methoden unterstützen die Rolle Org Admin. Ein Token Admin-Benutzer kann jedem Benutzer die Rolle Org Admin zuweisen. Org Admin-Benutzer haben administrative Berechtigungen, jedoch nur innerhalb ihrer Organisation. Sie können Konten erstellen oder Kontensalden anzeigen, jedoch nur für Benutzer in ihrer Organisation. Org Admin-Benutzer mit einer Minter-, Brenner- oder Notarrolle können diese Rolle anderen Benutzern in ihrer Organisation zuweisen.
Token-Minter
Ein Benutzer, dem die Minter-Rolle zugewiesen ist, ist Token Minter und kann Token mint.
Tokenbrenner
Ein Benutzer, dem die Brennerrolle zugewiesen ist, ist ein Token Burner und kann Token brennen.
Tokennotar
Ein Benutzer, dem die Notarrolle zugewiesen ist, ist ein Token Notary. Eine Token Notary fungiert bei Transaktionen zwischen Zahlern und Zahlungsempfängern als Dritter. Eine Token Notary kann entweder den Abschluss einer Tokenübertragung von einem Zahler zu einem Zahlungsempfänger auslösen oder die Token stattdessen auf das Konto des Zahlers zurückgeben.
Vault Manager
Ein Benutzer, dem die Vault-Rolle zugewiesen ist, ist Vault Manager. Die Vault Manager kann eine gesperrte NFT entsperren. Die Tresorrolle gilt nur für die erweiterten ERC-721- und ERC-1155-Standards. Die Zuweisung der Vault-Rolle zu einem Benutzer ist eine Voraussetzung für das Sperren von NFTs. Der Vault-Rolle kann nur ein Benutzer pro Chaincode zugewiesen werden.
Die eigentumsbasierte Zugriffskontrolle unterstützt die folgenden Personas:
Accounteigentümer
Jeder Benutzer mit einem Account ist ein Account Owner.
Tokenverantwortlicher
Jeder Benutzer, der derzeit Eigentümer eines nicht fungiblen Tokens ist, ist die Token Owner dieses Tokens.

Die rollenbasierte Zugriffskontrolle und die eigentumsbasierte Zugriffskontrolle werden in einigen Methoden ebenfalls kombiniert. Beispiel: Mit der rollenbasierten Zugriffskontrolle kann ein Benutzer mit der Minter-Rolle Token erstellen. Mit der eigentumsbasierten Zugriffskontrolle kann ein Eigentümer eines nicht fungiblen Tokens die benutzerdefinierten Eigenschaften eines Tokens ändern, aber die Tokenmetadaten nicht ändern. Wenn ein Benutzer mit der Minter-Rolle ein Non-Fungible Token (NFT) erstellt, wird er Eigentümer der NFT. Als Eigentümer dieser NFT können sie die benutzerdefinierten Eigenschaften ändern (bei einem Kunstsammlungstoken ist der Tokenpreis eine benutzerdefinierte Eigenschaft). Nachdem der Token-Ersteller die NFT an einen anderen Benutzer überträgt, wird der zweite Benutzer zum Eigentümer, und der Benutzer, der das Token erstellt hat, ist nicht mehr der Eigentümer des Tokens. Aufgrund der eigentumsbasierten Zugriffskontrolle kann der neue Eigentümer jetzt einen benutzerdefinierten Eigenschaftswert aktualisieren, der vorherige Eigentümer jedoch nicht mehr. Aufgrund der rollenbasierten Zugriffskontrolle kann der vorherige Eigentümer immer noch eine NFT prägen, der neue Benutzer jedoch nicht.

Sie können auch eigene Zugriffskontrollfunktionen schreiben oder die Zugriffskontrolle deaktivieren. Der automatisch generierte Code, der den Zugriff steuert, wird in den folgenden Beispielen gezeigt.

TypeScript:
await this.Ctx.<Token Standard>Auth.checkAuthorization(...)
Start:
auth, err := t.Ctx.<Token Standard>Auth.CheckAuthorization(...)

Hinweis:

Um die automatisch generierte Zugriffskontrollfunktion zu entfernen, entfernen Sie die vorherige Codezeile aus dem Projekt TypeScript oder Go.