Corda:正在尝试将RPC权限放在外部数据库上



我正试图将RPC权限、用户及其密码放在外部数据库中。我遵循了Corda v.3.3的文件(https://docs.corda.net/clientrpc.html#rpc-安全管理(。

它说我需要为有问题的节点创建一个"安全"字段,并填写所有必要的信息。我已经完成了,但一旦我尝试部署节点,就会出现以下错误:

"无法为net.corda.plugins.Node类型的对象设置未知属性'security'。">

节点的信息在build.gradle文档中如下所示:

node {
name "O=myOrganisation,L=Lisbon,C=PT"
p2pPort 10024
rpcSettings {
address("localhost:10025")
adminAddress("localhost:10026")
}
security = {
authService = {
dataSource = {
type = "DB"
passwordEncryption = "SHIRO_1_CRYPT"
connection = {
jdbcUrl = "localhost:3306"
username = "*******"
password = "*******"
driverClassName = "com.mysql.jdbc.Driver"
}
}
}
}
cordapps = [
"$project.group:cordapp:$project.version"
]
}

您混淆了两种语法:

  • Cordform任务(如deployNodes(内配置node块的语法
  • 直接通过node.conf配置节点的语法

安全设置适用于node.conf内部。您必须首先创建节点,然后在创建后使用这些设置修改节点的node.conf

Corda 4将引入extraConfig选项,用于Cordfromnode块中,如本文所述。

最新更新