Opc ua 区分一个;行政";Milo OPC UA项目中节点的级别访问?

Opc ua 区分一个;行政";Milo OPC UA项目中节点的级别访问?,opc-ua,milo,Opc Ua,Milo,在试图理解基于OPC UA的客户机和服务器的milo项目示例时,希望了解以下场景 当我试图用名称空间字符串测试WriteExample时HelloWorld/OnlyAdminCanWrite/ 要连接使用UserNameIdentityToken值“admin”(用户名)和password2(密码)验证用户的服务器,它无法写入值 这是因为在ExampleNamespace.java文件中的以下代码中,标识未被识别为admin吗 node.setAttributeDelegate(new Res

在试图理解基于OPC UA的客户机和服务器的milo项目示例时,希望了解以下场景

当我试图用名称空间字符串测试WriteExample时
HelloWorld/OnlyAdminCanWrite/
要连接使用
UserNameIdentityToken
值“admin”(用户名)和password2(密码)验证用户的服务器,它无法写入值

这是因为在ExampleNamespace.java文件中的以下代码中,标识未被识别为admin吗

node.setAttributeDelegate(new RestrictedAccessDelegate(identity -> {
    if ("admin".equals(identity)) {
        return AccessLevel.READ_WRITE;
    } else {
        return AccessLevel.READ_ONLY;
    }

如何区分管理员和其他用户?已测试属性,如AccessLevel和UserAccessLevel,但它们对尝试访问的当前用户有效

谢谢您的澄清。是的,你是对的,我用错了NodeId。右侧节点ID为“HelloWorld/OnlyAdminCanWrite/String”,为了测试WriteExample,要写入的变量值应为字符串。现在它工作了

您确定您正在写入正确的NodeId并将其修改为使用admin/password2凭据连接吗?我刚刚测试过,效果很好。