% SCABBARD-PERM(1) Cargill, Incorporated | Splinter Commands
NAME
scabbard-perm — Sets or deletes a Sabre namespace permission.
SYNOPSIS
scabbard perm [FLAGS] [OPTIONS] NAMESPACE CONTRACT
DESCRIPTION
This command allows users to set or delete permissions for Sabre namespaces in
state for the targeted scabbard service. Setting a permission requires the
namespace’s state address prefix, the name of the smart contract to set
permissions for, and the -r/--read and/or -w/--write flags to indicate
the permissions to set. Deleting a permission requires the namespace’s state
address prefix and the --delete flag; this deletes all contracts’ permissions
for the namespace.
FLAGS
- 
-d,--delete
- Deletes all permissions for the namespace.
- 
-h,--help
- Prints help information.
- 
-r,--read
- Adds namespace read permissions for the contract. This flag conflicts with the
-d/--deleteflag.
- 
-V,--version
- Prints version information
- -v
- Increases verbosity. Specify multiple times for more output.
- 
-w,--write
- Adds namespace write permissions for the contract. This flag conflicts with
the -d/--deleteflag.
OPTIONS
- 
-k,--keyFILE
- Indicates the key file to use for signing scabbard transactions. The FILEcan be a relative or absolute file path, or it can be the name of a .priv file in the$HOME/.splinter/keysdirectory. The target file must contain a valid secp256k1 private key. This option is required.
- 
--service-idID
- Specifies the fully-qualified service ID of the targeted scabbard service,
using the format CIRCUIT_ID::SERVICE_ID. This option is required.
- 
-U,--urlURL
- Specifies the URL for the splinterdREST API that is running the targeted scabbard service. (defaulthttp://localhost:8080) This option is required.
- 
--waitSECONDS
- If provided, waits the given number of seconds for the batch to commit. Displays an error message if the batch does not commit in time.
ARGUMENTS
- NAMESPACE
- Provides the state address prefix of the namespace to set permissions for.
- CONTRACT
- Specifies the name of the contract to give permissions to for the namespace.
This argument conflicts with the -d/--deleteflag.
EXAMPLES
The following command gives read permissions for the abcdef namespace to the
xo smart contract in a scabbard service on circuit 01234-ABCDE with service
ID abcd, running on the node with the REST API endpoint
http://localhost:8088. The transaction will be signed with the key located in
the file ~/user.priv.
$ scabbard perm \
  --url http://localhost:8088 \
  --service-id 01234-ABCDE::abcd \
  --key ~/user.priv \
  --read \
  abcdef \
  xo
The next command gives both read and write permissions for the 012345
namespace to the intkey_multiply smart contract in the same scabbard service.
It also specifies a key in the $HOME/.splinter/keys directory by name and
waits up to 10 seconds for the namespace permission batch to commit.
$ scabbard perm \
  --url http://localhost:8088 \
  --service-id 01234-ABCDE::abcd \
  --key user \
  --wait 10 \
  --read \
  --write \
  012345 \
  intkey_multiply
This example deletes all permissions for the 012abc namespace in the same
scabbard service as the previous examples.
$ scabbard perm \
  --url http://localhost:8088 \
  --service-id 01234-ABCDE::abcd \
  --key ~/user.priv \
  --delete \
  012abc
SEE ALSO
| scabbard-ns-create(1)
| scabbard-ns-delete(1)
| scabbard-ns-update(1)
|
| Splinter documentation: https://www.splinter.dev/docs/0.7/