无法使用在 Ignite 中新创建的用户名/密码登录 SQL



我已经通过 Ignite 中的 SQL 连接创建了一个具有给定名称/密码的用户。尝试连接时失败,出现以下错误。我已经重置了两次密码,但仍然无法登录。

Error: Authentication doesn't support by remote server[driverProtocolVer=ClientListenerProtocolVersion [major=2, minor=7, maintenance=0], remoteNodeProtocolVer=ClientListenerProtocolVersion [major=0, minor=0, maintenance=0], err=The user name or password is incorrect [userName=ignitetest], url=jdbc:ignite:thin://lvenignapp001u.enbduat.com:10800/PUBLIC] (state=08004,code=0)
java.sql.SQLException: Authentication doesn't support by remote server[driverProtocolVer=ClientListenerProtocolVersion [major=2, minor=7, maintenance=0], remoteNodeProtocolVer=ClientListenerProtocolVersion [major=0, minor=0, maintenance=0], err=The user name or password is incorrect [userName=ignitetest], url=jdbc:ignite:thin://lvenignapp001u.enbduat.com:10800/PUBLIC]
at org.apache.ignite.internal.jdbc.thin.JdbcThinTcpIo.handshake(JdbcThinTcpIo.java:377)
at org.apache.ignite.internal.jdbc.thin.JdbcThinTcpIo.start(JdbcThinTcpIo.java:224)
at org.apache.ignite.internal.jdbc.thin.JdbcThinTcpIo.start(JdbcThinTcpIo.java:145)
at org.apache.ignite.internal.jdbc.thin.JdbcThinConnection.ensureConnected(JdbcThinConnection.java:150)
at org.apache.ignite.internal.jdbc.thin.JdbcThinConnection.<init>(JdbcThinConnection.java:137)
at org.apache.ignite.IgniteJdbcThinDriver.connect(IgniteJdbcThinDriver.java:155)
at sqlline.DatabaseConnection.connect(DatabaseConnection.java:156)
at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:204)
at sqlline.Commands.close(Commands.java:907)
at sqlline.Commands.quit(Commands.java:871)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:38)
at sqlline.SqlLine.dispatch(SqlLine.java:791)
at sqlline.SqlLine.begin(SqlLine.java:668)
at sqlline.SqlLine.start(SqlLine.java:373)
at sqlline.SqlLine.main(SqlLine.java:265)

您必须在 SQL 查询中将用户名括在引号中

使用密码"test"创建用户"测试"; -- 用户将被创建为测试

使用密码创建用户测试 "test"; -- 用户将被创建为 TEST - 全部大写

请确保在输入连接凭据时在用户名中使用适当的大小写。

原答案的学分在这里:http://apache-ignite-users.70518.x6.nabble.com/Ignite-user-create-modify-trouble-tp21861p21887.html

检查是否已明确为服务器启用身份验证。 从文档中:

<!-- Enabling authentication. -->
<property name="authenticationEnabled" value="true"/>

请注意,您还需要为集群配置持久性。