Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
@consensys-software/permissioning-smart-contracts
Advanced tools
Smart contracts and dapp implementing EEA spec onchain permissioning
Version 1 of these contracts was audited by a third party. Read the report here
Please contact us if you have questions. Additionally we would love to hear from you if you are considering using this implementation of onchain permissioning in a production environment.
The contents of this repository are Apache 2.0 licensed. Important: The dependency chain for this Dapp includes web3js which is LGPL licensed.
You probably got here from Besu. The Besu documentation describes how to use the contracts for onchain permissioning with Besu.
We recommend you use the latest released version of this project.
Note: The build process for the Dapp is currently not supported on Windows. Please use the provided distribution available at the projects release page if on Windows.
Run yarn install
to initialize project dependencies. This step is only required when setting up the project
for the first time.
Linting is set up for contracts using solium
, and for source files using prettier
. To run linting over your code execute yarn run lint
.
yarn test
The Dapp will facilitate managing permissioning rules and maintaining the list of admin accounts that can edit rules.
Note: if you want to run against Besu, follow the Besu docs.
ONLY use these instructions if you are doing development work on the Dapp itself, in which case connecting to a development server (Ganache) will enable faster development.
This is the easiest way to get started for development with the permissioning Dapp:
NODE_INGRESS_CONTRACT_ADDRESS
, ACCOUNT_INGRESS_CONTRACT_ADDRESS
, ACCOUNT_STORAGE_CONTRACT_ADDRESS
, NODE_STORAGE_CONTRACT_ADDRESS
AND
CHAIN_ID
- you might need to restart your terminal session to have your changes applied. If you are using a .env
file, you can comment out the variables.truffle develop
. This will start a Ganache node and create a Truffle console session.migrate --reset
. Keep this terminal session open to maintain your Ganache node running.yarn run build
to build the Dapp.yarn run start
to start the web server that is serving our Dapp.http://127.0.0.1:9545/
)http://localhost:3000
to access the Permissioning Dapp.Snapshots are compared as part of the test suite, to check any changes made to the Dapp are sensible. If you change the Dapp, you also need to update the snapshots.
yarn jest -u
npm run test:app -- -u
yarn run build
will assemble index.html and all other files in build/
build/
as static files.true
, the specified contract will be redeployed. This allows you, for instance, to retain the Admin contract while redeploying NodeRules and AccountRules, or any other combination.RETAIN_ADMIN_CONTRACT=true
RETAIN_NODE_RULES_CONTRACT=true
RETAIN_ACCOUNT_RULES_CONTRACT=true
INITIAL_ADMIN_ACCOUNTS
: The admin account addresses. Comma-separated multiple addresses can be specifiedINITIAL_ALLOWLISTED_ACCOUNTS
: The permitted account addresses. Comma-separated multiple addresses can be specifiedINITIAL_ALLOWLISTED_NODES
: The enode URLs of permitted nodes. Comma-separated multiple nodes can be specifiedyarn install
to initialize project dependencies, otherwise skip this steptruffle migrate --reset
to deploy the contractsconfig.json
with the following contentsNote: The networkID
is defined as the chainID
in the genesis file.
{
"accountIngressAddress": "<Address of the account ingress contract>",
"nodeIngressAddress": "<Address of the node ingress contract>",
"networkId": "<ID of your ethereum network>"
}
index.html
FAQs
Smart contracts and dapp implementing EEA spec onchain permissioning
The npm package @consensys-software/permissioning-smart-contracts receives a total of 15 weekly downloads. As such, @consensys-software/permissioning-smart-contracts popularity was classified as not popular.
We found that @consensys-software/permissioning-smart-contracts demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.