Documentation ¶
Index ¶
Constants ¶
const ( PROPOSE = "PROPOSE" //LSCC resources LSCC_INSTALL = "LSCC.INSTALL" LSCC_DEPLOY = "LSCC.DEPLOY" LSCC_UPGRADE = "LSCC.UPGRADE" LSCC_GETCCINFO = "LSCC.GETCCINFO" LSCC_GETDEPSPEC = "LSCC.GETDEPSPEC" LSCC_GETCCDATA = "LSCC.GETCCDATA" LSCC_GETCHAINCODES = "LSCC.GETCHAINCODES" LSCC_GETINSTALLEDCHAINCODES = "LSCC.GETINSTALLEDCHAINCODES" //QSCC resources QSCC_GetChainInfo = "QSCC.GetChainInfo" QSCC_GetBlockByNumber = "QSCC.GetBlockByNumber" QSCC_GetBlockByHash = "QSCC.GetBlockByHash" QSCC_GetTransactionByID = "QSCC.GetTransactionByID" QSCC_GetBlockByTxID = "QSCC.GetBlockByTxID" //CSCC resources CSCC_JoinChain = "CSCC.JoinChain" CSCC_GetConfigBlock = "CSCC.GetConfigBlock" CSCC_GetChannels = "CSCC.GetChannels" //Chaincode-to-Chaincode call CC2CC = "CC2CC" //Events BLOCKEVENT = "BLOCKEVENT" FILTEREDBLOCKEVENT = "FILTEREDBLOCKEVENT" )
fabric resources used for ACL checks. Note that some of the checks such as LSCC_INSTALL are "peer wide" (current access checks in peer are based on local MSP). These are not currently covered by RSCC or defaultProvider
const ( CHANNELREADERS = policies.ChannelApplicationReaders CHANNELWRITERS = policies.ChannelApplicationWriters )
Variables ¶
This section is empty.
Functions ¶
func GetConfigTxProcessor ¶
GetConfigTxProcessor initialized at peer startup with ledgermgmt to receive config blocks for channels
func RegisterACLProvider ¶
func RegisterACLProvider(r ACLProvider)
RegisterACLProvider will be called to register actual SCC if RSCC (an ACLProvider) is enabled
Types ¶
type ACLProvider ¶
type ACLProvider interface { //the provider also provides config processor to build state from //config customtx.Processor //CheckACL checks the ACL for the resource for the channel using the //idinfo. idinfo is an object such as SignedProposal from which an //id can be extracted for testing against a policy CheckACL(resName string, channelID string, idinfo interface{}) error }
func NewDefaultACLProvider ¶
func NewDefaultACLProvider() ACLProvider
NewDefaultACLProvider constructs a new default provider for other systems such as RSCC to use
type AclMgmtConfigTxProcessor ¶
type AclMgmtConfigTxProcessor struct { }
func (*AclMgmtConfigTxProcessor) GenerateSimulationResults ¶
func (*AclMgmtConfigTxProcessor) GenerateSimulationResults(txEnvelop *common.Envelope, simulator ledger.TxSimulator) error
GenerateSimulationResults this is just a proxy to delegate registered aclProvider. Need this as aclmgmt is initialized with ledger initialization as required by ledger