我正在尝试在 Apache tomcat
的角色名称中使用完全可分辨的名称。角色名称将包含 "="chars
。
例如:
<tomcat-users>
<role rolename="cn=tomcat,dc=com"/>
<user username="tomcat" password="tomcat" roles="cn=tomcat,dc=com"/>
</tomcat-users>
当我尝试启动 tomcat 时,我得到:
SEVERE: Exception creating UserDatabase MBeans for UserDatabase javax.management.MalformedObjectNameException: Invalid character '=' in value part of property at javax.management.ObjectName.construct(Unknown Source) at javax.management.ObjectName.(Unknown Source) at org.apache.catalina.mbeans.MBeanUtils.createObjectName(MBeanUtils.java:870) at org.apache.catalina.mbeans.MBeanUtils.createMBean(MBeanUtils.java:379) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:194) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:150) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:112) at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:84) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:401) at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:346) at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:725) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.startup.Catalina.start(Catalina.java:675) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:451)
最佳答案
如果要配置 Tomcat 以使用 LDAP 身份验证,请使用 JNDIRealm:
http://tomcat.apache.org/tomcat-7.0-doc/realm-howto.html#JNDIRealm
关于apache - apache tomcat 7 角色名中的无效字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11831038/