Skip to content

Commit b910620

Browse files
authored
Merge pull request #211 from sanvenDev/main
Bug Fixes and Extra Log Messages
2 parents f581cf5 + 53ccfd0 commit b910620

File tree

31 files changed

+129
-71
lines changed

31 files changed

+129
-71
lines changed

common/protos-js/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@hyperledger-labs/weaver-protos-js",
3-
"version": "1.2.4-alpha.1",
3+
"version": "1.2.4",
44
"description": "Interop protos for Node JS (Weaver)",
55
"main": "index.js",
66
"exports": {

core/drivers/fabric-driver/.env.docker.template

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ DRIVER_TLS_CERT_PATH=<path_to_tls_cert_pem_for_driver>
1010
DRIVER_TLS_KEY_PATH=<path_to_tls_key_pem_for_driver>
1111
INTEROP_CHAINCODE=<interop-chaincode-name>
1212
DOCKER_IMAGE_NAME=ghcr.io/hyperledger-labs/weaver-fabric-driver
13-
DOCKER_TAG=1.2.1
13+
DOCKER_TAG=1.2.4
1414
EXTERNAL_NETWORK=<docker-bridge-network>
1515
COMPOSE_PROJECT_NAME=<docker-compose-project-name>
1616
COMPOSE_PROJECT_NETWORK=<docker-compose-project-network>

core/drivers/fabric-driver/docker-testnet-envs/.env.n1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ NETWORK_NAME=network1
55
DRIVER_PORT=9090
66
INTEROP_CHAINCODE=interop
77
DOCKER_IMAGE_NAME=ghcr.io/hyperledger-labs/weaver-fabric-driver
8-
DOCKER_TAG=1.2.1
8+
DOCKER_TAG=1.2.4
99
EXTERNAL_NETWORK=network1_net
1010
COMPOSE_PROJECT_NAME=network1
1111
COMPOSE_PROJECT_NETWORK=net

core/drivers/fabric-driver/docker-testnet-envs/.env.n1.tls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ NETWORK_NAME=network1
55
DRIVER_PORT=9090
66
INTEROP_CHAINCODE=interop
77
DOCKER_IMAGE_NAME=ghcr.io/hyperledger-labs/weaver-fabric-driver
8-
DOCKER_TAG=1.2.1
8+
DOCKER_TAG=1.2.4
99
EXTERNAL_NETWORK=network1_net
1010
COMPOSE_PROJECT_NAME=network1
1111
COMPOSE_PROJECT_NETWORK=net

core/drivers/fabric-driver/docker-testnet-envs/.env.n2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ NETWORK_NAME=network2
55
DRIVER_PORT=9095
66
INTEROP_CHAINCODE=interop
77
DOCKER_IMAGE_NAME=ghcr.io/hyperledger-labs/weaver-fabric-driver
8-
DOCKER_TAG=1.2.1
8+
DOCKER_TAG=1.2.4
99
EXTERNAL_NETWORK=network2_net
1010
COMPOSE_PROJECT_NAME=network2
1111
COMPOSE_PROJECT_NETWORK=net

core/drivers/fabric-driver/docker-testnet-envs/.env.n2.tls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ NETWORK_NAME=network2
55
DRIVER_PORT=9095
66
INTEROP_CHAINCODE=interop
77
DOCKER_IMAGE_NAME=ghcr.io/hyperledger-labs/weaver-fabric-driver
8-
DOCKER_TAG=1.2.1
8+
DOCKER_TAG=1.2.4
99
EXTERNAL_NETWORK=network2_net
1010
COMPOSE_PROJECT_NAME=network2
1111
COMPOSE_PROJECT_NETWORK=net

core/drivers/fabric-driver/makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
DOCKER_IMAGE_NAME ?= weaver-fabric-driver
2-
DOCKER_TAG ?= 1.2.1
2+
DOCKER_TAG ?= 1.2.4
33
DOCKER_REGISTRY ?= ghcr.io/hyperledger-labs
44
GIT_URL = https://github.com/hyperledger-labs/weaver-dlt-interoperability/core/drivers/fabric-driver
55
COMPOSE_ARG ?=

core/drivers/fabric-driver/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"author": "",
2121
"license": "ISC",
2222
"dependencies": {
23-
"@hyperledger-labs/weaver-protos-js": "^1.2.0",
23+
"@hyperledger-labs/weaver-protos-js": "^1.2.4",
2424
"@fidm/x509": "^1.2.1",
2525
"@grpc/grpc-js": "^1.1.1",
2626
"@typescript-eslint/eslint-plugin": "^3.5.0",

core/network/fabric-interop-cc/contracts/interop/access_control_cc.go

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,15 +137,27 @@ func verifyAccessToCC(s *SmartContract, ctx contractapi.TransactionContextInterf
137137
// TODO: Check if these will be the same format (Or convert to matching formats at some point)
138138
// TODO: Need to use principalType and perform different validation for type "certificate" and "ca".
139139
// Code below assumes that requestor's membership has already been authenticated earlier if the type is "ca"
140-
if (rule.PrincipalType == "certificate" && query.Certificate == rule.Principal) ||
141-
(rule.PrincipalType == "ca" && query.RequestingOrg == rule.Principal) {
140+
if (rule.PrincipalType == "certificate" && query.Certificate == rule.Principal) {
142141
// Break loop as cert is valid.
142+
log.Infof("Access Control Policy PERMITS the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.Certificate)
143+
return nil
144+
}
145+
if (rule.PrincipalType == "ca" && query.RequestingOrg == rule.Principal) {
146+
// Break loop as cert is valid.
147+
log.Infof("Access Control Policy PERMITS the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.RequestingOrg)
143148
return nil
144149
}
145150
}
146151

147152
}
148-
errorMessage := fmt.Sprintf("Access Control Policy DOES NOT PERMIT the following request: %s", viewAddressString)
153+
var errorMessage string
154+
if (query.Certificate != "") {
155+
errorMessage = fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.Certificate)
156+
} else if (query.RequestingOrg != "") {
157+
errorMessage = fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.RequestingOrg)
158+
} else {
159+
errorMessage = fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from a foreign entity", viewAddressString)
160+
}
149161
log.Error(errorMessage)
150162
return errors.New(errorMessage)
151163

core/network/fabric-interop-cc/contracts/interop/access_control_cc_test.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ func TestVerifyAccessToCC(t *testing.T) {
181181
require.NoError(t, err)
182182
chaincodeStub.GetStateReturns(accessControlBytes, nil)
183183
err = verifyAccessToCC(&interopcc, ctx, &validAddressStruct, viewAddressString, &query)
184-
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the following request: %s", viewAddressString))
184+
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.Certificate))
185185

186186
// Test: Invalid CA
187187
invalidPrincipalRule = common.Rule{
@@ -195,7 +195,7 @@ func TestVerifyAccessToCC(t *testing.T) {
195195
require.NoError(t, err)
196196
chaincodeStub.GetStateReturns(accessControlBytes, nil)
197197
err = verifyAccessToCC(&interopcc, ctx, &validAddressStruct, viewAddressString, &query)
198-
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the following request: %s", viewAddressString))
198+
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.Certificate))
199199

200200
// Test: No rule for requested resource
201201
differentResourceRule := common.Rule{
@@ -209,7 +209,7 @@ func TestVerifyAccessToCC(t *testing.T) {
209209
require.NoError(t, err)
210210
chaincodeStub.GetStateReturns(accessControlBytes, nil)
211211
err = verifyAccessToCC(&interopcc, ctx, &validAddressStruct, viewAddressString, &query)
212-
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the following request: %s", viewAddressString))
212+
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.Certificate))
213213

214214
differentResourceRule = common.Rule{
215215
Principal: "cert",
@@ -222,7 +222,7 @@ func TestVerifyAccessToCC(t *testing.T) {
222222
require.NoError(t, err)
223223
chaincodeStub.GetStateReturns(accessControlBytes, nil)
224224
err = verifyAccessToCC(&interopcc, ctx, &validAddressStruct, viewAddressString, &query)
225-
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the following request: %s", viewAddressString))
225+
require.EqualError(t, err, fmt.Sprintf("Access Control Policy DOES NOT PERMIT the request '%s' from '%s:%s'", viewAddressString, query.RequestingNetwork, query.Certificate))
226226

227227
// Test: No Rule for ID
228228
chaincodeStub.GetStateReturns(nil, nil)

0 commit comments

Comments
 (0)