[英]Getting Solr Admin user password as a system variable
是否有默认的 solr 环境属性可用于获取 solr 管理员用户 () 和密码 ()。 这样我就可以使用这个属性而不是在下面的 solr db-data-config.xml 中硬编码管理员用户和密码。 我知道我可以定义一个可以解决这个目的的属性,但想知道是否有任何可用的属性
以下
<entity name="test" processor="SolrEntityProcessor" url="http://<adminuser>:<password>@<server>:<port>/solr/test_core/" query="*:*"
fl="*">
DIH 请求参数 请求参数可以在配置中替换为占位符${dataimporter.request.paramname}
,如下例所示: 您可以如下定义数据源。
<dataSource driver="org.hsqldb.jdbcDriver"
url="${dataimporter.request.jdbcurl}"
user="${dataimporter.request.jdbcuser}"
password="${dataimporter.request.jdbcpassword}" />
然后可以将这些参数传递给 full-import 命令或在solrconfig.xml
的部分中定义。
http://localhost:8983/solr/dih/dataimport?command=full-import&jdbcurl=jdbc:hsqldb:./example-DIH/hsqldb/ex&jdbcuser=sa&jdbcpassword=secret
DIH 可以使用 jndi 和加密密码来连接到数据库。
<dataSource name="informixmydb"
type="JdbcDataSource"
jndiName="java:/comp/env/jdbc/mydb" />
根据嵌入的jetty版本,需要在jetty中添加两个jar。 例如
您将需要在 /opt/solr/solr/server/etc/jetty.xml 文件中配置 jndi 身份验证
<!-- ======================================================== -->
<!-- Configure JNDI -->
<!-- ======================================================== -->
<New id="informixDepluxDs" class="org.eclipse.jetty.plus.jndi.Resource">
<Arg></Arg> <!-- is Configure node id value -->
<Arg>java:comp/env/jdbc/deplux2</Arg>
<Arg>
<New class="com.informix.jdbcx.IfxConnectionPoolDataSource">
<Set name="User">solr</Set>
<Set name="password">
<Call class="org.eclipse.jetty.util.security.Password" name="deobfuscate">
<Arg>OBF:*****</Arg>
</Call>
</Set>
<Set name="ServerName">xxxxxx</Set>
<Set name="IfxIFXHOST">xxxxxx</Set>
<Set name="DatabaseName">mydb</Set>
<Set name="PortNumber">15032</Set>
</New>
</Arg>
</New>
<New id="informixxxxxx" class="org.eclipse.jetty.plus.jndi.Resource">
<Arg></Arg>
<Arg>java:comp/env/jdbc/mydb</Arg>
<Arg>
<New class="com.informix.jdbcx.IfxDataSource">
<Set name="IfxIFXHOST">xxxxxx</Set>
<Set name="ServerName">xxxxxx</Set>
<Set name="User">solr</Set>
<Set name="password">
<Call class="org.eclipse.jetty.util.security.Password" name="deobfuscate">
<Arg>OBF:*****</Arg>
</Call>
</Set>
<Set name="DatabaseName">mydb</Set>
<Set name="PortNumber">15032</Set>
<Set name="DataSourceName">java:comp/env/jdbc/mydb</Set>
</New>
</Arg>
</New>
密码可以加密
java -cp ../lib/jetty-util-9.4.10.v20180503.jar org.eclipse.jetty.util.security.Password 用户名密码。
( https://www.eclipse.org/jetty/documentation/current/configuring-security-secure-passwords.html )
问候
多米尼克
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.