Installation and usage of the platform

Role management

All the permissions (roles) of the blockchain platform are described in the Permissions article. Permissions can be arbitrarily combined for any address; individual permissions can be revoked at any time.

102 Permission Transaction is provided to manage the participants’ roles. The transaction can be signed using the REST API sign method, and broadcasted using the corresponding gRPC or REST API method. The response received from the sign method is sent to the broadcast method of gRPC or REST node API.

Only a participant with the permissioner role can send 102 transactions to the blockchain.

Regardless of the sending method used, the transaction includes the following fields:

  • type – type of transaction for managing the participants’ permissions (type = 102);

  • sender – the address of the participant with authority to send transaction 102 (permissioner role);

  • password – key pair password in the node keystore, optional field;

  • proofs – transaction signature;

  • target – the address of the participant whom you want to assign or remove permissions;

  • role – the member’s permission which you want to assign or remove; when sending the transaction via broadcast gRPC method, the field specifies the identifying byte of the role; valid values are listed in the Roles Ids table below;

  • opType – type of operation:

    • add – add a permission or

    • remove – remove a permission;

  • dueTimestamp – the date of the permission validity in the Unix Timestamp format (in milliseconds), optional field.

The following role IDs are used when broadcasting the 102 transaction via broadcast gRPC method:

Roles ids

Role

Byte id

prefixS

Miner

1

miner

Issuer

2

issuer

Permissioner

4

permissioner

Blacklister

5

blacklister

Banned

6

banned

ContractDeveloper

7

contract_developer

ConnectionManager

8

connection_manager

Sender

9

sender

ContractValidator

10

contract_validator

See also