解决shiro报Possible unexpected error错误信息

学习shiro,采用了.ini初始化配置文件来充当数据库角色.在学习shiro使用ini过程报如下错误信息:

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.
-----认证失败-----
org.apache.shiro.authc.AuthenticationException: Authentication failed for token submission [org.apache.shiro.authc.UsernamePasswordToken - admin, rememberMe=false].  Possible unexpected error? (Typical or expected login exceptions should extend from AuthenticationException).
	at org.apache.shiro.authc.AbstractAuthenticator.authenticate(AbstractAuthenticator.java:214)
	at org.apache.shiro.mgt.AuthenticatingSecurityManager.authenticate(AuthenticatingSecurityManager.java:106)
	at org.apache.shiro.mgt.DefaultSecurityManager.login(DefaultSecurityManager.java:270)
	at org.apache.shiro.subject.support.DelegatingSubject.login(DelegatingSubject.java:256)
	at com.stydy.shiro.HelloShiro.main(HelloShiro.java:25)
Caused by: java.lang.IllegalStateException: Configuration error:  No realms have been configured!  One or more realms must be present to execute an authentication attempt.
	at org.apache.shiro.authc.pam.ModularRealmAuthenticator.assertRealmsConfigured(ModularRealmAuthenticator.java:161)
	at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doAuthenticate(ModularRealmAuthenticator.java:264)
	at org.apache.shiro.authc.AbstractAuthenticator.authenticate(AbstractAuthenticator.java:198)
	... 4 more

 错误原因为没有遵循相应的固定写法,如下错误写法:

#定义实体对象
[user]
#定义实体对象属性
userName=shiro
passward=123456

 正确写法:

#固定写法-创建用户对象
[users]
#创建用户名为shiro密码为123456的key-value形式数据
shiro=123456

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 该令牌提交时进行身份验证失败 [org.apache.shiro.authc.usernamepasswordtoken - admin, rememberme=false],可能存在意外错误?(典型或预期的登录异常应该继承自 AuthenticationException)。 ### 回答2: 这个错误信息提示登录口令认证失败。在Shiro框架中,登录认证是一个非常关键的步骤,它会验证用户提供的用户名和口令是否正确,并将认证结果存储在Shiro的Subject上下文中,以便实现后续的授权和访问控制等操作。 在这个错误信息中,我们可以看到认证失败的具体原因是“token submission [org.apache.shiro.authc.usernamepasswordtoken - admin, rememberme=false]”,即用户登录时提交的身份认证口令为“admin”,记住我选项为“false”。这种错误通常是由于用户提供的用户名和口令有误导致的,可以尝试重新输入正确的用户名和口令来解决这个问题。 另外,错误信息中还提到了“possible unexpected error”,即可能存在意外错误。这可能是由于一些系统配置或异常情况导致的,需要进一步排查。通常情况下,在Shiro框架中,登录的异常都应该继承自AuthenticationException类,如果碰到其他类型的异常,则需要进一步分析原因并进行修复。 总之,认证失败是系统安全的重要保障之一,Shiro框架为我们提供了方便易用的认证机制和组件,我们需要对其进行有效配置和使用,以确保系统安全和用户体验的高度质量。 ### 回答3: 授权失败是常见的错误,通常是因为用户名和密码的组合不正确。在本例中,授权失败的token是由“admin”用户名和“rememberme=false”的密码组成的,这意味着令牌中没有包含“rememberme”值。这种情况下,我们需要检查用户输入的用户名和密码是否正确,并确保我们正在使用正确的数据源来验证用户的凭据。此外,我们还需要确保我们的应用程序已正确地配置了Shiro验证和授权机制。对于未知错误,我们需要检查日志文件以查找可能的异常,并在必要时调试代码来识别和解决问题。总之,要解决授权失败,我们需要仔细检查各种可能的原因,并确保我们遵循最佳实践来保护用户凭据和应用程序的安全性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值