If multiple rules are entered into the proprety
Advanced infra-solr-env / Infra Solr Kerberos name rules
There are multiple issues here:
1. The rules should be escaped, the $ characters in them should be handled, so that the expressions in the rules like $0, $1 are not replaced with the script directory, and the script file name. Currently the user must do this in the value entered, which is not even documented.
2. The variable SOLR_KERB_NAME_RULES in infra-solr-env.sh should have quotes around it's value, so that the whole string is assigned to it, not only the first rule.
3. SOLR_KERB_NAME_RULES can not be the part of SOLR_AUTHENTICATION_OPTS, because it is handled incorrectly, if an expression like -Dname="value1 value2" is passed to the jvm from a bash variable. Therefore /usr/lib/ambari-infra-solr/bin/solr should be updated, and -Dsolr.kerberos.name.rules="$SOLR_KERB_NAME_RULES" should be added directly into the command script.