cas启用mongodb验证方式报错com.mongodb.CommandFailureException---Authentication failed。

完整报错信息:

二月 08, 2017 5:34:32 下午 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring root WebApplicationContext
2017-02-08 17:34:39,577 INFO [org.jasig.cas.services.DefaultServicesManagerImpl] - <Loaded 2 services from JsonServiceRegistryDao.>
2017-02-08 17:34:40,186 INFO [org.jasig.cas.services.DefaultServicesManagerImpl] - <Services manager will reload service definitions every 60 seconds>
2017-02-08 17:34:43,445 WARN [org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler] - <org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler is only to be used in a testing environment. NEVER enable this in a production environment.>
2017-02-08 17:34:44,182 INFO [org.jasig.cas.ticket.registry.TicketRegistryCleaner] - <Preparing to schedule job to clean up after tickets...>
2017-02-08 17:34:44,183 INFO [org.jasig.cas.ticket.registry.TicketRegistryCleaner] - <TicketRegistryCleaner will clean tickets every 2 minutes>
2017-02-08 17:34:44,506 WARN [org.jasig.cas.util.NoOpCipherExecutor] - <[org.jasig.cas.util.NoOpCipherExecutor] does no encryption and may NOT be safe in a production environment. Consider using other choices, such as [org.jasig.cas.util.BaseStringCipherExecutor] that handle encryption, signing and verification of all appropriate values.>
2017-02-08 17:34:44,592 WARN [org.jasig.cas.util.TGCCipherExecutor] - <Secret key for encryption is not defined. CAS will attempt to auto-generate the encryption key>
2017-02-08 17:34:44,601 WARN [org.jasig.cas.util.TGCCipherExecutor] - <Generated encryption key Y4acTg7kHEq6TZrhxslBBQCmwKeoBaqzXynb6jujecI of size 256. The generated key MUST be added to CAS settings.>
2017-02-08 17:34:44,601 WARN [org.jasig.cas.util.TGCCipherExecutor] - <Secret key for signing is not defined. CAS will attempt to auto-generate the signing key>
2017-02-08 17:34:44,601 WARN [org.jasig.cas.util.TGCCipherExecutor] - <Generated signing key WaeAUq6eR2030BKAxbHqMUh2MnaYy53JPb15tHFPtAT6LSwW4OLYeM4Wk_d9roonjK-8HYZYLa_Nm4vn7ywWWw of size 512. The generated key MUST be added to CAS settings.>
2017-02-08 17:34:44,640 WARN [org.jasig.cas.util.WebflowCipherExecutor] - <Secret key for signing is not defined. CAS will attempt to auto-generate the signing key>
2017-02-08 17:34:44,640 WARN [org.jasig.cas.util.WebflowCipherExecutor] - <Generated signing key 7qZO-o44LeYns0LtuIB4nTwM0t6UV1ARG9umNqkZMmWTDhsqYQ6k1H4YDDRx5nQx_eDUfwAXtTh9eUN8nlQlUA of size 512. The generated key MUST be added to CAS settings.>
2017-02-08 17:34:44,641 WARN [org.jasig.cas.util.WebflowCipherExecutor] - <No encryption key is defined. CAS will attempt to auto-generate keys>
2017-02-08 17:34:44,642 WARN [org.jasig.cas.util.WebflowCipherExecutor] - <Generated encryption key FNbiPXvRvWKVsHVv of size 16. The generated key MUST be added to CAS settings.>
2017-02-08 17:34:45,595 WARN [org.springframework.web.context.support.XmlWebApplicationContext] - <Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongoServiceRegistryDao': Invocation of init method failed; nested exception is org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}>
2017-02-08 17:34:46,054 WARN [org.jasig.cas.services.JsonServiceRegistryConfigWatcher] - <Directory key is no longer valid. Quitting watcher service>
2017-02-08 17:34:46,057 ERROR [org.springframework.web.context.ContextLoader] - <Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongoServiceRegistryDao': Invocation of init method failed; nested exception is org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:778)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1113)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1671)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)
Caused by: org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at org.springframework.data.mongodb.core.MongoExceptionTranslator.translateExceptionIfPossible(MongoExceptionTranslator.java:99)
	at org.springframework.data.mongodb.core.MongoTemplate.potentiallyConvertRuntimeException(MongoTemplate.java:2013)
	at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:448)
	at org.springframework.data.mongodb.core.MongoTemplate.collectionExists(MongoTemplate.java:516)
	at org.jasig.cas.services.MongoServiceRegistryDao.init(MongoServiceRegistryDao.java:57)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
	... 27 more
Caused by: com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at com.mongodb.CommandResult.getException(CommandResult.java:76)
	at com.mongodb.CommandResult.throwOnError(CommandResult.java:140)
	at com.mongodb.DBPort$SaslAuthenticator.authenticate(DBPort.java:899)
	at com.mongodb.DBPort.authenticate(DBPort.java:432)
	at com.mongodb.DBPort.checkAuth(DBPort.java:443)
	at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:289)
	at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:269)
	at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:84)
	at com.mongodb.DB.command(DB.java:320)
	at com.mongodb.DB.command(DB.java:299)
	at com.mongodb.DB.command(DB.java:388)
	at com.mongodb.DBApiLayer.getCollectionNames(DBApiLayer.java:152)
	at com.mongodb.DB.collectionExists(DB.java:524)
	at org.springframework.data.mongodb.core.MongoTemplate$6.doInDB(MongoTemplate.java:518)
	at org.springframework.data.mongodb.core.MongoTemplate$6.doInDB(MongoTemplate.java:516)
	at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:446)
	... 36 more
>
二月 08, 2017 5:34:46 下午 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongoServiceRegistryDao': Invocation of init method failed; nested exception is org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:778)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1113)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1671)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)
Caused by: org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at org.springframework.data.mongodb.core.MongoExceptionTranslator.translateExceptionIfPossible(MongoExceptionTranslator.java:99)
	at org.springframework.data.mongodb.core.MongoTemplate.potentiallyConvertRuntimeException(MongoTemplate.java:2013)
	at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:448)
	at org.springframework.data.mongodb.core.MongoTemplate.collectionExists(MongoTemplate.java:516)
	at org.jasig.cas.services.MongoServiceRegistryDao.init(MongoServiceRegistryDao.java:57)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
	... 27 more
Caused by: com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at com.mongodb.CommandResult.getException(CommandResult.java:76)
	at com.mongodb.CommandResult.throwOnError(CommandResult.java:140)
	at com.mongodb.DBPort$SaslAuthenticator.authenticate(DBPort.java:899)
	at com.mongodb.DBPort.authenticate(DBPort.java:432)
	at com.mongodb.DBPort.checkAuth(DBPort.java:443)
	at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:289)
	at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:269)
	at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:84)
	at com.mongodb.DB.command(DB.java:320)
	at com.mongodb.DB.command(DB.java:299)
	at com.mongodb.DB.command(DB.java:388)
	at com.mongodb.DBApiLayer.getCollectionNames(DBApiLayer.java:152)
	at com.mongodb.DB.collectionExists(DB.java:524)
	at org.springframework.data.mongodb.core.MongoTemplate$6.doInDB(MongoTemplate.java:518)
	at org.springframework.data.mongodb.core.MongoTemplate$6.doInDB(MongoTemplate.java:516)
	at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:446)
	... 36 more

二月 08, 2017 5:34:46 下午 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.jasig.cas.CasEnvironmentContextListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongoServiceRegistryDao': Invocation of init method failed; nested exception is org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSin
gletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:778)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538)
	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:444)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
	at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1113)
	at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1671)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)
Caused by: org.springframework.dao.PermissionDeniedDataAccessException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}; nested exception is com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at org.springframework.data.mongodb.core.MongoExceptionTranslator.translateExceptionIfPossible(MongoExceptionTranslator.java:99)
	at org.springframework.data.mongodb.core.MongoTemplate.potentiallyConvertRuntimeException(MongoTemplate.java:2013)
	at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:448)
	at org.springframework.data.mongodb.core.MongoTemplate.collectionExists(MongoTemplate.java:516)
	at org.jasig.cas.services.MongoServiceRegistryDao.init(MongoServiceRegistryDao.java:57)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:354)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:305)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133)
	... 27 more
Caused by: com.mongodb.CommandFailureException: { "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}
	at com.mongodb.CommandResult.getException(CommandResult.java:76)
	at com.mongodb.CommandResult.throwOnError(CommandResult.java:140)
	at com.mongodb.DBPort$SaslAuthenticator.authenticate(DBPort.java:899)
	at com.mongodb.DBPort.authenticate(DBPort.java:432)
	at com.mongodb.DBPort.checkAuth(DBPort.java:443)
	at com.mongodb.DBTCPConnector.innerCall(DBTCPConnector.java:289)
	at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:269)
	at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:84)
	at com.mongodb.DB.command(DB.java:320)
	at com.mongodb.DB.command(DB.java:299)
	at com.mongodb.DB.command(DB.java:388)
	at com.mongodb.DBApiLayer.getCollectionNames(DBApiLayer.java:152)
	at com.mongodb.DB.collectionExists(DB.java:524)
	at org.springframework.data.mongodb.core.MongoTemplate$6.doInDB(MongoTemplate.java:518)
	at org.springframework.data.mongodb.core.MongoTemplate$6.doInDB(MongoTemplate.java:516)
	at org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:446)
	... 36 more

二月 08, 2017 5:34:46 下午 org.apache.catalina.core.StandardContext startInternal
严重: Error listenerStart
二月 08, 2017 5:34:46 下午 org.apache.catalina.core.StandardContext startInternal
严重: Context [/cas] startup failed due to previous errors
二月 08, 2017 5:34:46 下午 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext
二月 08, 2017 5:34:46 下午 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
严重: The web application [/cas] appears to have started a thread named [Log4j2-Log4j2Scheduled-1] but has failed to stop it. This is very likely to create a memory leak.
二月 08, 2017 5:34:46 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory F:\tomcat7\webapps\client2
二月 08, 2017 5:34:46 下午 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息: validateJarFile(F:\tomcat7\webapps\client2\WEB-INF\lib\jsp-api-2.1.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/el/Expression.class
二月 08, 2017 5:34:46 下午 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息: validateJarFile(F:\tomcat7\webapps\client2\WEB-INF\lib\servlet-api-2.5.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
二月 08, 2017 5:34:47 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory F:\tomcat7\webapps\ROOT
二月 08, 2017 5:34:47 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-apr-8080"]
二月 08, 2017 5:34:47 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-apr-8009"]
二月 08, 2017 5:34:47 下午 org.apache.catalina.startup.Catalina start
信息: Server startup in 34194 ms

{ "serverUsed" : "192.168.30.249:27017" , "ok" : 0.0 , "code" : 18 , "errmsg" : "Authentication failed."}

是一种比较常见的错误。

就是认证失败,帐号密码连接mongodb认证错误。

查看mongodb的log日志也可以得到相关信息:

I ACCESS   [conn1914] SCRAM-SHA-1 authentication failed for  on testCrm from client 192.168.30.39 ; BadValue: Incorrect SCRAM-SHA-1 user name: n=

log一般存放在/data/mongodb/log文件夹路径。

这种情况分两种:

一种是mongodb数据库本身有启用身份验证的,需要检查帐号密码是否正确。

最好的方式就是 在mongo  shell里在需要连接的数据库上进行db.auth(user,password),返回1则正确,返回0失败。

或者

mongo --authenticationDatabase dbName -u user -p

第二种是mongodb数据库本身没有启用身份验证

既然没有启用身份验证,为什么这里又去验证了帐号密码呢,显然是我们的连接方式和连接语句有问题。

我们注意到cas server对mongodb的连接方式使用的是com.mongodb.MongoClientURI方式,也就是使用的uri。

<bean id="clientUri" class="com.mongodb.MongoClientURI"          c:uri="mongodb://${mongodb.userId}:${mongodb.userPassword}@${mongodb.host}:${mongodb.port}/${cas.service.registry.mongo.db}" />

配置文件和情况如下:

这里我们就发现问题了。

我们是把user和password空着,但是在配置文件里还是把空当作帐号密码来认证了,所以报错了。

我们查看官网的文档:

https://docs.mongodb.com/manual/reference/connection-string/

发现帐号和密码是非必须的

所以com.mongodb.MongoClientURI连接mongodb当没有启用帐号认证,用户名和密码为空时,使用的连接语句应该是

<bean id="clientUri" class="com.mongodb.MongoClientURI"          c:uri="mongodb://${mongodb.host}:${mongodb.port}/${cas.service.registry.mongo.db}" />

如图,不再报错了。

单点登录(十)-----遇到问题-----cas启用mongodb验证方式报错com.mongodb.CommandFailureException---Authentication failed的更多相关文章

  1. 单点登录(十一)-----遇到问题-----cas启用mongodb验证方式报错--Unable to locate Spring NamespaceHandler for XML schema na

    cas启用mongodb验证方式报错--Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.sp ...

  2. 单点登录(十二)-----遇到问题-----cas启用mongodb验证方式登录后没反应-pac4j-mongo包中的MongoAuthenticatInvocationTargetException

    cas启用mongodb验证方式登录后没反应 控制台输出 2017-02-09 20:27:15,766 INFO [org.jasig.cas.authentication.MongoAuthent ...

  3. 单点登录(十五)-----实战-----cas4.2.x登录mongodb验证方式实现自定义加密

    我们在前一篇文章中实现了cas4.2.x登录使用mongodb验证方式. 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方式完整流程 也学习参考了cas5.0.x版 ...

  4. 单点登录(十四)-----实战-----cas5.0.x登录mongodb验证方式常规的四种加密的思考和分析

    我们在上一篇文章中已经讲解了cas4.2.X登录启用mongodb验证方式 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方式完整流程 但是密码是明文存储的,也就是 ...

  5. 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方式完整流程

    我们在之前的文章中中已经讲到了正确部署运行cas server 和 在cas client中配置. 在此基础上 我们去掉了https的验证,启用了http访问的模式. 单点登录(七)-----实战-- ...

  6. 单点登录(十七)----cas4.2.x登录mongodb验证方式成功后返回更多信息更多属性到客户端

    我们在之前已经完成了cas4.2.x登录使用mongodb验证方式登录成功了.也解决了登录名中使用中文乱码的问题. 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方 ...

  7. 单点登录(十八)----cas4.2.x客户端增加权限控制shiro

    我们在上面章节已经完成了cas4.2.x登录启用mongodb的验证方式. 单点登录(十三)-----实战-----cas4.2.X登录启用mongodb验证方式完整流程 也完成了获取管理员身份属性 ...

  8. 单点登录(十六)-----遇到问题-----cas4.2.x登录成功后报错No principal was found---cas中文乱码问题完美解决

    情况 我们之前已经完成了cas4.2.x登录使用mongodb验证方式并且自定义了加密. 单点登录(十五)-----实战-----cas4.2.x登录mongodb验证方式实现自定义加密 但是悲剧的是 ...

  9. CAS单点登录实践(spring cas client配置)

    前言: 最近的项目需要将多个站点统一登录,查阅了资料Jasig cas(Central Authentication Service)(官方站点:http://www.jasig.org/cas)使用 ...

随机推荐

  1. 企业服务总线ESB

    # 企业服务总线ESB 由中间件技术实现并支持SOA的一组基础架构,支持异构环境中的服务.消息以及基于事件的交互,并且具有适当的服务级别和可管理性. 通过使用ESB,可以在几乎不更改代码的情况下,以一 ...

  2. 【python 2.7】获取外部参数

    import sys res_0 = sys.argv[0] res_1 = sys.argv[1] res_2 = sys.argv[2] print res_0 print res_1 print ...

  3. Inception——Going deeper with convolutions

    1. 摘要 作者提出了一个代号为 Inception 的卷积神经网络架构,这也是作者在 2014 年 ImageNet 大规模视觉识别挑战赛中用于分类和检测的新技术. 通过精心的设计,该架构提高了网络 ...

  4. HTTP-HTTPS区别

    超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂 ...

  5. Django_rest_framework_版本(待验证)

    简介 API版本控制可以用来在不同的客户端使用不同的行为.REST框架提供了大量不同的版本设计. 版本控制是由传入的客户端请求决定的,并且可能基于请求URL,或者基于请求头. 有许多有效的方法达到版本 ...

  6. CentOS赋予一个普通用户root权限

    http://www.linuxidc.com/Linux/2012-07/64530.htm

  7. dubbo实际应用中的完整的pom.xml

    http://blog.csdn.net/rodjohnsondoctor/article/details/39030601

  8. “北航Clubs” Alpha版发布!

    一.功能 1.获取活动信息: 用户进入网站后,第一眼就可以查看到近期活动 2.查看活动详情 点击活动标题,可以进入活动详情页面 3.注册功能 首页点击注册,输入学号.密码.姓名.手机号即可完成注册 4 ...

  9. 20172321 2017-2018-2 《Java程序设计》第二周学习总结

    20172321 2017-2018-2 <Java程序设计>第二周学习总结 教材学习内容总结 第一章要点: 要点1 字符串:print和println用法的区别,字符串的拼接,java中 ...

  10. Spring笔记⑤--整合hibernate代码测试

    String整合hibernate代码测试 在上节生成的表中插入数据:   注意:使用myeclipse2014生成的整合项目可能存在问题需要我们自己导入.   第一步 我们写dao接口 packag ...