无法覆盖 Elastic Security 中的静态角色

问题描述

我有一个关于 Elastic Security 的问题。我将 Opendistro 用于 Elastic Security,它是第 3 方工具。我解决了 SSL,并使用 Docker 设置了所有系统。

容器启动后,我必须在容器内运行给定的命令。

./plugins/opendistro_security/tools/securityadmin.sh -cd ./plugins/opendistro_security/securityconfig/ -icl -nhnv -cacert ./config/root-ca.pem -cert ./config/admin.pem -key ./config/admin-key.pem

我希望替换证书和密钥文件并运行 securityadmin 脚本。但是,我正在接受这个错误

Open distro Security Admin v7 将连接到 localhost:9300 ... 完成 连接为 *** LDAP 信息在这里 *** 弹性搜索版本:7.10.2 Open distro 安全版本:1.13.1.0 联系elasticsearch集群'elasticsearch'并等待YELLOW clusterstate ... 集群名称:docker-cluster 集群状态:绿色 节点数:1 数据节点数:1 .opendistro_security 索引不存在,尝试创建它...完成(0-所有副本) 从 /usr/share/elasticsearch/plugins/opendistro_security/securityconfig 填充配置 将使用 ./plugins/opendistro_security/securityconfig/config.yml 更新“_doc/config” SUCC:创建或更新“config”的配置 将使用 ./plugins/opendistro_security/securityconfig/roles.yml 更新“_doc/roles” SUCC:创建或更新“角色”的配置 将使用 ./plugins/opendistro_security/securityconfig/roles_mapping.yml 更新“_doc/rolesmapping” SUCC:创建或更新“角色映射”的配置 将使用 ./plugins/opendistro_security/securityconfig/internal_users.yml 更新“_doc/internalusers” SUCC:创建或更新“内部用户”的配置 将使用 ./plugins/opendistro_security/securityconfig/action_groups.yml 更新“_doc/actiongroups” SUCC:创建或更新“操作组”的配置 将使用 ./plugins/opendistro_security/securityconfig/tenants.yml 更新“_doc/tenants” SUCC:创建或更新“租户”的配置 将使用 ./plugins/opendistro_security/securityconfig/nodes_dn.yml 更新“_doc/nodesdn” SUCC:创建或更新“nodesdn”的配置 将使用 ./plugins/opendistro_security/securityconfig/whitelist.yml 更新“_doc/whitelist” SUCC:创建或更新“白名单”的配置 将使用 ./plugins/opendistro_security/securityconfig/audit.yml 更新“_doc/audit” SUCC:创建或更新“审计”配置 失败:1 个节点报告失败。第一个失败是 FailedNodeException[Failed node [Hrbny7ZxSby9_eNNUodPEA]];嵌套:RemoteTransportException[[37c674e27698][172.23.0.2:9300][cluster:admin/opendistro_security/config/update[n]]];嵌套:NotSerializableExceptionWrapper[static_resource_exception:不能覆盖静态角色]; 失败:预期有 1 个节点返回响应,但得到 0 以失败告终

我不知道如何解决这个问题。 我在等你的帮助。 谢谢。

解决方法

此错误意味着您正在尝试创建已在 static_config 文件夹中定义的角色。将 security_config/roles.yml 与 src/main/resources/static_config/static_roles.yml 进行比较,看看是否有任何重复项。如果出现重复,请从 security_config/roles.yml 文件中重命名或删除角色。