How To Link Permission

Overview

This guide provides instructions to link a permission to a smart contract action.

The example uses cleos to link a custom permission customp in the account alice to a hi action deployed to the scontract account so that the alice account's active permission and customp permission are authorized to call the hi action.

Before you Begin

Make sure you meet the following requirements:

  • Install the currently supported version of cleos.

    Note

    Cleos is bundled with the EOSIO software. Installing EOSIO will also install the cleos and keosd comand line tools.

  • You have an EOSIO account and access to the account's active private key.
  • You have created a custom permission. See cleos set account permission.

Command Reference

See the following reference guides for command line usage and related options:

The following step shows you how to link a permission:

  1. Run the following command to link alices account permission customp with the hi action deployed to the scontract account:
cleos set action permission alice scontract hi customp -p alice@active

Where

  • alice = The name of the account containing the permission to link.
  • scontract= The name of the account which owns the smart contract.
  • hi = The name of the action to link to a permission.
  • customp = The permission used to authorize the transaction.
  • -p alice@active = The permission used to authorize linking the customp permission.

Example Output

executed transaction: 4eb4cf3aea232d46e0e949bc273c3f0575be5bdba7b61851ab51d927cf74a838  128 bytes  141 us
#         eosio <= eosio::linkauth              {"account":"alice","code":"scontract","type":"hi","requirement":"customp"}

Summary

In conclusion, by following these instructions you are able to link a permission to a smart contract action.