Javascript 实时密码规则检查器?

Javascript 实时密码规则检查器?,javascript,ajax,Javascript,Ajax,我正在为我的学校做一点初步调查(我作为一名学生在IT部门工作)。这里的学生必须每6个月更改一次密码,他们中的许多人都在与(许多)强制执行的密码规则作斗争。也就是说,他们通常需要多次尝试设置新密码 这些规则是: 中必须包含8个或更多字符 长度 必须包含4种类型中的3种 字符(大写、小写、, 数字(特殊字符) 不能包含用户的第一个, 姓或中名 不能包含用户的用户名 不能与使用的任何密码匹配 以前 用户必须键入两次密码,并且 键入的密码必须完全匹配 我有几个问题: 是否可以创建一个基于web的应

我正在为我的学校做一点初步调查(我作为一名学生在IT部门工作)。这里的学生必须每6个月更改一次密码,他们中的许多人都在与(许多)强制执行的密码规则作斗争。也就是说,他们通常需要多次尝试设置新密码

这些规则是:

  • 中必须包含8个或更多字符 长度
  • 必须包含4种类型中的3种 字符(大写、小写、, 数字(特殊字符)
  • 不能包含用户的第一个, 姓或中名
  • 不能包含用户的用户名
  • 不能与使用的任何密码匹配 以前
  • 用户必须键入两次密码,并且 键入的密码必须完全匹配
我有几个问题:

  • 是否可以创建一个基于web的应用程序 密码检查器,提供 根据用户类型实时反馈 在他们的新密码里?我是 想象一个清单在 绿色复选标记所在的网页 在密码满足时激活 更多标准
  • 是否可以执行此操作 安全完整地检查 客户端
  • 这样的任务从哪里开始? 你能推荐一本指南吗

请记住,我不是一个网络开发者。另外,请留下任何诙谐的评论,如“更改密码策略”或“他们只是哑巴用户”离开这里。

您指定的大多数规则都可以使用javascript实时检查,更具体地说是使用正则表达式。为了安全起见,应该在服务器端检查密码是否已被使用。

您指定的大多数规则都可以使用javascript实时检查,更具体地说是使用正则表达式。为了安全起见,应该在服务器端检查密码是否已经使用过

是否可以创建一个基于web的密码检查器,在用户键入新密码时提供实时反馈?我想象在网页的一侧有一个清单,当密码满足更多标准时,绿色的复选标记被激活

是否可以安全地执行此检查

当指示灯变为绿色时,它会显示密码中满足要求的位置的信息。这会将有关密码的数据泄露给任何能看到屏幕的人

而且完全是客户端的

这样的任务从哪里开始

HTML文档中的规则列表,每个规则旁边都有一个失败图像。JS中规则的编程版本。然后在密码输入的每个按键事件上依次测试每个规则,并根据是否遵循规则交换通过和失败图像

您需要使用XMLHttpRequest对象访问服务器,以检查以前是否使用过密码。不过,请确保您只在那里存储散列和盐渍密码

请记住,我不是一个网络开发者

那么我建议你要么成为一个

此外,请留下任何诙谐的评论,如“更改密码策略”

好吧,把机智放在一边,坚持严肃的问题:

如果人们在使用符合策略的密码时遇到问题,那么他们在记住密码时就会遇到问题。这将导致需要重置密码的人数增加(IT部门需要更多的工作)以及记录密码的人数增加(这可能会比更容易猜测/暴力的密码更不安全)

是否可以创建一个基于web的密码检查器,在用户键入新密码时提供实时反馈?我想象在网页的一侧有一个清单,当密码满足更多标准时,绿色的复选标记被激活

是否可以安全地执行此检查

当指示灯变为绿色时,它会显示密码中满足要求的位置的信息。这会将有关密码的数据泄露给任何能看到屏幕的人

而且完全是客户端的

这样的任务从哪里开始

HTML文档中的规则列表,每个规则旁边都有一个失败图像。JS中规则的编程版本。然后在密码输入的每个按键事件上依次测试每个规则,并根据是否遵循规则交换通过和失败图像

您需要使用XMLHttpRequest对象访问服务器,以检查以前是否使用过密码。不过,请确保您只在那里存储散列和盐渍密码

请记住,我不是一个网络开发者

那么我建议你要么成为一个

此外,请留下任何诙谐的评论,如“更改密码策略”

好吧,把机智放在一边,坚持严肃的问题:

如果人们在使用符合策略的密码时遇到问题,那么他们在记住密码时就会遇到问题。这将导致需要重置密码的人数增加(IT部门需要更多的工作)以及记录密码的人数增加(这可能会比更容易猜测/暴力的密码更不安全)

是否可以创建一个基于web的密码检查器,在用户键入新密码时提供实时反馈?我想象在网页的一侧有一个清单,当密码满足更多标准时,绿色的复选标记被激活

是的,但您需要了解一些javascript才能做到这一点

是否可以安全且完全地在客户端执行此检查

不,是的,或者是的,不是的,但不是两者都有。您可以完全在客户端进行检查(除了检查以前的密码,这需要访问数据库)。但是客户端的任何东西都是不安全的。您在客户端执行的任何操作都应被视为对用户的帮助。