首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >org.jasig.cas.authentication.handler.DefaultPasswordEncoder sha1和md5不工作明文也没问题

org.jasig.cas.authentication.handler.DefaultPasswordEncoder sha1和md5不工作明文也没问题
EN

Stack Overflow用户
提问于 2015-06-16 04:16:37
回答 1查看 567关注 0票数 1

我正在尝试将cas配置为使用数据库中的编码密码。

当我配置为纯文本时,它工作得很好。

当我配置为编码为MD5或SHA1时,它总是无法进行身份验证。

我的配置如下所示

代码语言:javascript
复制
<bean class="org.jasig.cas.adaptors.jdbc.SearchModeSearchDatabaseAuthenticationHandler">
  <property name="tableUsers">
    <value>uh_ors_test_users</value>
  </property>
  <property name="fieldUser">
    <value>username</value>
  </property>
  <property name="fieldPassword">
    <value>password</value>
  </property>
  <property name="passwordEncoder">
    <bean class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder">
      <constructor-arg value="MD5" />
    </bean>
  </property>
  <property name="dataSource" ref="dataSource" />
</bean>

在没有passwordEncoder的情况下,它可以很好地处理纯文本密码。

我通过执行以下操作对密码进行编码。sha1sum“明文密码”| echo echo“明文密码”|echo

并将这些命令的输出放入我的数据库的密码字段中。

例如,对于带有password=" bobs_password“的user="bob”回显bobs_password| md5sum 4ee4c4a91f34ce62335942ca73b15b5c -

因此数据库user表包含user:bob password:4ee4c4a91f34ce62335942ca73b15b5c,用于"MD5“测试

为了测试SHA1,我使用了echo bobs_password | sha1sum d62cfc513413784cb3b9e558abecf56069528681 - So数据库用户表包含用户:bob sha1sum用于我的"SHA1“测试

我不知道我是不是编码错了,是我的配置错了,还是代码做了一些与我期望的不同的事情。

有没有人看到我的所作所为有问题?是否可以启用日志记录来查看post编码的密码以进行比较?我将log4j日志设置为"ALL“,我可以看到getUser和getPassword的值,但它们在我输入时并不是post编码的,所以我不能说出编码值是什么样子。

EN

Stack Overflow用户

发布于 2015-06-16 04:51:04

我找到了我的错误。echo添加了一个需要使用echo密码“-n”| md5sum进行编码的新行

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30854235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档