启用身份验证

时间:2020-02-27 11:55:25

标签: java server ignite

我正在运行此代码,我想在apache ignite 2.7.6中启用身份验证。它仍然显示authentication = off

如何启用身份验证?

public static void main(String[] args) throws ClientException, Exception {
    Class.forName("com.mysql.jdbc.Driver");
    Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/ignite_sample","root","99@Jj");
    // Apache Ignite node configuration.
    IgniteConfiguration cfg = new IgniteConfiguration();

    // Ignite persistence configuration.
    DataStorageConfiguration storageCfg = new DataStorageConfiguration();

    // Enabling the persistence.
    storageCfg.getDefaultDataRegionConfiguration().setPersistenceEnabled(true);

    // Applying settings.
    cfg.setDataStorageConfiguration(storageCfg);

    // Enable authentication
    cfg.setAuthenticationEnabled(true);

    Ignite ignite = Ignition.start(cfg);
}

1 个答案:

答案 0 :(得分:2)

我想这是因为您尝试在启动服务器节点之前创建连接。

再试一次:

1)使用authenticationEnabled = true和persistenceEnabled = true(用于默认区域)启动服务器

2)然后继续运行:

// Register JDBC driver.
Class.forName("org.apache.ignite.IgniteJdbcThinDriver");

// Open the JDBC connection.
try (Connection conn = DriverManager.getConnection("jdbc:ignite:thin://127.0.0.1:10800?" +
    "user=client&password=password"))
{
    conn.createStatement().executeQuery("select 1");
    System.out.println("Done");
}
catch (SQLException e) {
    e.printStackTrace();
    }

更新:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:util="http://www.springframework.org/schema/util"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/util
        http://www.springframework.org/schema/util/spring-util.xsd">

    <!-- Ignite configuration. -->
    <bean class="org.apache.ignite.configuration.IgniteConfiguration">
        <property name="authenticationEnabled" value="true"/>

        <property name="dataStorageConfiguration">
            <bean class="org.apache.ignite.configuration.DataStorageConfiguration">
                <property name="defaultDataRegionConfiguration">
                    <bean class="org.apache.ignite.configuration.DataRegionConfiguration">
                        <property name="persistenceEnabled" value="true"/>
                    </bean>
                </property>
            </bean>
        </property>

        <!-- TCP discovery SPI -->
        <property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="ipFinder">
                    <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
                        <property name="addresses">
                            <list>
                                <value>127.0.0.1:47500</value>
                            </list>
                        </property>
                    </bean>
                </property>
            </bean>
        </property>
    </bean>
</beans>