【发布时间】:2014-06-20 09:33:15
【问题描述】:
我有一个 java 应用程序,只有两个用户可以使用这个应用程序,他们之间的区别是一个可以使用菜单栏中的打印菜单,另一个不能使用他的。
为此,我制作了这个“登录”框架,其中显然包含用户名字段和密码,以及三个按钮,“连接”“取消”第三个是“更改密码”。
问题当然出在最后一个.. 应用程序实际上应该定期更改“密码”,例如每 3 个月通知用户一次,并且可以通过具有三个文本字段的 Jdialog(旧密码,新密码和确认密码)只需点击“更改密码”按钮。
这是一个“可能很愚蠢”的问题:我怎样才能让应用程序存储密码和用户名、通知用户并允许他更改密码,而这一切都不需要数据库?由于数据库已准备好使用,但我没有成功,也无权向其中添加任何内容...
顺便说一句,该应用程序是一个桌面应用程序,我搜索了身份验证插件等,但我只找到了服务器应用程序身份验证,我认为它们不是同一个概念,但我是谁说的,我只是java新手。
希望我足够澄清这个问题。并提前感谢您。
【问题讨论】:
-
如果您可以将数据存储在数据库中会更好。但是,如果你不能,你可以看看序列化。它允许您将 Java 对象(例如,您的用户)导出到文件中。这样,您每次启动应用时都会加载序列化文件,并在每次关闭时将更新后的数据导出到文件中。
-
为什么? IMO 定期密码重置是浪费时间,对用户来说是一个主要的烦恼。实际上没有具体的理由来更改尚未包含的密码。
-
@EJP 这对我来说是一个很长的时间,对我来说比对用户来说更令人烦恼,哈哈!但这实际上不是一个选择,“非付费客户”需要,为了更有意义,用户会定期更改密码以在 Windows 上登录他的用户帐户,以解决安全问题(顺便说一下,此应用程序适用于企业),并且该用户希望在更改用户帐户密码的同时更改应用程序的密码(顺便说一下)
标签: java authentication login passwords