W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
Hadoop身份驗證插件使Solr能夠使用Hadoop身份驗證庫來保護Solr節(jié)點。
此身份驗證插件是一個精簡的包裝,它將所有功能委派給 Hadoop 身份驗證庫。庫的所有配置參數都通過插件傳遞。
這個插件在利用Hadoop身份驗證庫中的一組擴展功能或新近可用的功能方面特別有用。
請注意,Solr使用的Hadoop庫版本是定期升級的。雖然Solr將確保插件配置結構(即插件的參數名稱)的穩(wěn)定性和向后兼容性,但這些參數的值可能會根據Hadoop庫的版本而改變。有關更多詳細信息,請查看您的Solr安裝所使用的版本的Hadoop文檔。
對于一些身份驗證方案(例如Kerberos),Solr提供了身份驗證插件的本地實現。如果您需要更穩(wěn)定的設置,在配置、執(zhí)行滾動升級的能力、向后兼容性等方面,您應該考慮使用這樣的插件。請查看“身份驗證和授權插件”一節(jié),了解有關 Solr 的身份驗證插件選項概述。
有兩個插件類:
提示:對于大多數 SolrCloud 或獨立的 Solr 設置,HadoopAuthPlugin 應該足夠了。
應該是solr.HadoopAuthPlugin
或者solr.ConfigurableInternodeAuthHadoopPlugin
。該參數是必需的。
要配置的認證方案的類型。請參閱配置選項。該參數是必需的。
用于定義配置認證機制的Java系統(tǒng)屬性的前綴。此屬性是必需的。
Java系統(tǒng)屬性的名稱是通過將配置參數名稱附加到此前綴值來定義的。例如,如果前綴是solr
那么Java系統(tǒng)屬性solr.kerberos.principal
定義了配置參數的值kerberos.principal
。
由type屬性定義的認證方案所需的配置參數。此屬性是必需的。有關更多詳細信息,請參閱Hadoop配置選項。
authConfigs
屬性指定了配置參數的默認值。默認值被指定為鍵值對(即,"property-name": "default_value"
)的集合。
如果為true
,代表令牌功能將被啟用。
在連接到ZooKeeper之前啟用kerberos的初始化(如果適用)。
為代理用戶配置基礎Hadoop認證機制。該配置表示為鍵值對(即,"property-name": "default_value"
)的集合。
NO| HttpClientBuilderFactory
用于Solr的內部通信的實現。只適用于ConfigurableInternodeAuthHadoopPlugin
。
這個例子允許您將 Solr 配置為使用 kerberos 身份驗證,類似于使用 kerberos 身份驗證插件的方式。
在查閱Hadoop認證庫的文檔后,您可以使用solr.*前綴來提供每個主機配置參數。例如,Hadoop認證庫需要一個參數kerberos.principal,它可以在啟動 solr 節(jié)點時作為一個名為 solr.kerberos.principal 的系統(tǒng)屬性提供。有關其他典型配置參數,請參閱“Kerberos身份驗證插件”部分。
請注意,這個例子使用ConfigurableInternodeAuthHadoopPlugin,因此您必須提供clientBuilderFactory實現。因此,所有的節(jié)點間通信都將使用Kerberos機制,而不是PKI身份驗證。
要設置此插件,請在security.json文件中使用以下內容。
{
"authentication": {
"class": "solr.ConfigurableInternodeAuthHadoopPlugin",
"sysPropPrefix": "solr.",
"type": "kerberos",
"clientBuilderFactory": "org.apache.solr.client.solrj.impl.Krb5HttpClientBuilder",
"initKerberosZk": "true",
"authConfigs": [
"kerberos.principal",
"kerberos.keytab",
"kerberos.name.rules"
],
"defaultConfigs": {
}
}
}
與前面的示例類似,這是設置使用委托令牌的Solr群集的示例。請參考Hadoop認證庫文檔中的參數,或者參考Kerberos認證插件了解更多細節(jié)。請注意,此示例不使用Kerberos,并且對Solr發(fā)出的請求必須包含有效的委托令牌。
要設置此插件,請在security.json文件中使用以下內容。
{
"authentication": {
"class": "solr.HadoopAuthPlugin",
"sysPropPrefix": "solr.",
"type": "simple",
"enableDelegationToken":"true",
"authConfigs": [
"delegation-token.token-kind",
"delegation-token.update-interval.sec",
"delegation-token.max-lifetime.sec",
"delegation-token.renewal-interval.sec",
"delegation-token.removal-scan-interval.sec",
"cookie.domain",
"signer.secret.provider",
"zk-dt-secret-manager.enable",
"zk-dt-secret-manager.znodeWorkingPath",
"signer.secret.provider.zookeeper.path"
],
"defaultConfigs": {
"delegation-token.token-kind": "solr-dt",
"signer.secret.provider": "zookeeper",
"zk-dt-secret-manager.enable": "true",
"token.validity": "36000",
"zk-dt-secret-manager.znodeWorkingPath": "solr/security/zkdtsm",
"signer.secret.provider.zookeeper.path": "/token",
"cookie.domain": "127.0.0.1"
}
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: