标签: change-password

强制用户在spring security中更改过期密码

我正在构建基于网络的应用程序的spring mvc和spring security.

我已经实现了重置密码功能.系统管理员将重置任何用户的密码.随机生成的密码将通过电子邮件发送给用户,同样将在数据库中更新.

现在我希望每当用户使用随机生成的密码登录时,我想强制用户更改其密码.

请查看我的用户 TABLE.

userid bigint(20)
username varchar(20)
password varchar(65)
email varchar(50)
firstname varchar(20)
lastname varchar(20)
groupname varchar(50)
enabled tinyint(1)
credentialsNonExpired tinyint(1)

我的认证提供商

    <!--
        Configuring Authentication Provider to make use of spring security
        provided Jdbc user management service
    -->
    <authentication-provider user-service-ref="jdbcUserService">
        <!--
            Configuring SHA-1 Password Encoding scheme to secure user credential
        -->
        <password-encoder ref="sha1PasswordEncoder" />
    </authentication-provider>
</authentication-manager>
Run Code Online (Sandbox Code Playgroud)

我使用JDBCUserDetailsS​​erviceJDBCDaoImpl扩展为jdbcUserService.

我想在重置密码时将credentialNonExpired设置为我的用户表的false列.

我能够做到这一点.

但是当我登录时,spring security JDBCuserdetailsservice loadUserbyUsername只获取用户名,密码,启用列和其他所有字段设置为true.

protected List<UserDetails> loadUsersByUsername(String …
Run Code Online (Sandbox Code Playgroud)

change-password spring-security

12
推荐指数
2
解决办法
1万
查看次数

首次登录后如何强制用户更改密码?

我想强制用户在首次登录后更改密码.现在,我应该在哪里将重定向代码放到ChangePassword页面?

  • 如果我把它放在Page_Load默认页面中,用户可以移动到任何页面,因为他是经过身份验证的.
  • 如果我把它放在Page_LoadMaster页面中,ChangePassword页面使用相同的母版页,它将进入无限循环的重定向.

    我虽然忽略了重定向,如果它Page是Master页面中的ChagePassword页面,我发现这个答案说:

    这听起来像个坏主意.主人的想法是它不应该关心哪个页面,因为这是每个页面的所有常用代码.

任何建议!

c# asp.net redirect login change-password

10
推荐指数
2
解决办法
2万
查看次数

Virtuoso Conductor的默认登录凭据

我刚刚安装了Virtuoso的opensource软件包,我正在运行名为Conductor的web gui.

它需要登录,但我不认为在安装过程中有任何设置.

这是默认的un/pass吗?如果现在,我该怎么设置?

credentials change-password virtuoso

10
推荐指数
1
解决办法
4128
查看次数

如何从设计表单中分离更改密码

我想做两件事:

1)更改默认的"编辑用户表单" - 随设备提供 - 删除"密码"并允许更新其他字段而无需输入密码,即删除密码的默认验证.

2)创建一个单独的表单来更改密码

我有一切工作,只有一个问题,在单独的表格更新密码,我已经包括一个当前密码的字段.使用表单时,没有对当前密码进行验证,所以我改变了

@user.update_attributes(params[:user]) 
Run Code Online (Sandbox Code Playgroud)

@user.update_with_password(params[:user])
Run Code Online (Sandbox Code Playgroud)

这有效,但它提出了另一个问题.返回主表单中除了密码之外的所有其他详细信息,表单现在要求"当前密码".如果没有验证主表单上调用的当前密码,我怎样才能实现这一目的?

这是我的注册控制器:

def update
  @user = User.find(current_user.id)
  if @user.update_attributes(params[:user])
    set_flash_message :notice, :updated
    # Sign in the user bypassing validation in case his password changed
    sign_in @user, :bypass => true
    redirect_to after_update_path_for(@user)
  else
    clean_up_passwords(resource)
    respond_with_navigational(resource) do
      if params[:change_password] # or flash[:change_password]
        render :change_password
      else
        render :edit
      end
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

谢谢!

解决方案1

我找到了解决问题的方法(虽然非常混乱):

def update
  @user = User.find(current_user.id)

  if params[:user][:password].blank?
    if @user.update_attributes(params[:user])
      set_flash_message :notice, :updated
      # Sign in the user …
Run Code Online (Sandbox Code Playgroud)

forms ruby-on-rails change-password devise

8
推荐指数
2
解决办法
1万
查看次数

大多数使用不同语言的密码

当用户更改密码时,我需要检查密码的强度.为此,我使用zxcvbn.问题是我有说法语和德语的用户和一些非常愚蠢的密码如"motdepasse"(法语中的"密码")被zxcvbn评为良好,因为这个词不在公共密码列表中.

我的问题是:在哪里可以找到法语和德语最常用密码的列表(10K +),将它们添加到zxcvbn的常用密码列表中?

谷歌没有帮助我......

javascript passwords change-password

8
推荐指数
2
解决办法
1889
查看次数

autocomplete = new-password,让他们通过再次输入密码来确认

html5现在为该autocomplete属性提供了一些新的属性值,以在自动填充表单时帮助用户代理。新值之一new-password用于告诉用户代理输入密码,而不是用户当前密码。

但是我不清楚,当您的表单使用户两次输入新密码作为确认时如何正确地告诉它在两个字段中生成相同的密码?也许通过section-*在两个输入上使用相同的自定义前缀,例如autocomplete="new-password section-my-new-pw"?规范中提到section-*前缀会影响自动填充范围,但是对于我的情况而言,它并不过分具体。

我想这是一个示例表单,它代表了许多网站不久将要使用的表单-区分了current-passwordnew-password,并让用户确认新密码。

<form>
    <p>Username             <input type="text"     autocomplete="username"         name="username"></p>
    <p>Current Password     <input type="password" autocomplete="current-password" name="current-password"></p>
    <p>New Password         <input type="password" autocomplete="new-password"     name="new-password"></p>
    <p>Confirm New Password <input type="password" autocomplete="new-password"     name="confirm-new-password"></p>
</form>
Run Code Online (Sandbox Code Playgroud)

如果答案引用的文档与有关当前浏览器或扩展程序行为的观察相反,则我更喜欢。

passwords html5 autocomplete autofill change-password

8
推荐指数
1
解决办法
3757
查看次数

Errno 111连接被拒绝,并重置了非常基本的密码

django的新手在这里,当前正在尝试使用admin password_reset函数来实现密码恢复,但出现错误。根据我对其他遇到类似问题的人的了解,这是某种端口/套接字问题,但我不确定如何进行更改或修复。我应该提到我是通过虚拟ubuntu运行此命令的,不确定是否与此有关。

Environment:

Request Method: POST
Request URL: http://127.0.0.1:8000/admin/password_reset/
Django Version: 1.1.4
Python Version: 2.6.6
Installed Applications:
['django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'homework.events',
 'django.contrib.admin']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware')


Traceback:
File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/base.py" in   get_response
  99.                     response = callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/views.py" in password_reset
  116.             form.save(**opts)
    File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/forms.py" in save
  136.                 t.render(Context(c)), None, [user.email])
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send_mail
  407.                         connection=connection).send()
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send
  281.         return self.get_connection(fail_silently).send_messages([self])
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send_messages
  179.         new_conn_created = self.open()
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in open
  144.                                            local_hostname=DNS_NAME.get_fqdn()) …
Run Code Online (Sandbox Code Playgroud)

python django change-password django-admin password-recovery

7
推荐指数
1
解决办法
4057
查看次数

更改Derby DB密码

我已经在Glassfish/Netbeans中设置了Derby DB密码.我还检查了记住我的复选框.

现在我不能再更改密码了.

derby change-password

7
推荐指数
1
解决办法
1万
查看次数

Djongo + Django + MongoDB Atlas 尝试重置密码时出现数据库错误

因此,我尝试为在 Django 上运行并使用 Djongo 的网站创建密码重置链接。每当我输入密码并单击重置密码按钮时,都会出现此错误:

Environment:


Request Method: POST
Request URL: http://localhost:8000/password-reset/

Django Version: 3.1.4
Python Version: 3.8.3
Installed Applications:
['blog.apps.BlogConfig',
 'users.apps.UsersConfig',
 'crispy_forms',
 'django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django_cleanup']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware']



Traceback (most recent call last):
  File "C:\Users\Harry\anaconda3\envs\agrifarm\lib\site-packages\djongo\cursor.py", line 51, in execute
    self.result = Query(
  File "C:\Users\Harry\anaconda3\envs\agrifarm\lib\site-packages\djongo\sql2mongo\query.py", line 783, in __init__
    self._query = self.parse()
  File "C:\Users\Harry\anaconda3\envs\agrifarm\lib\site-packages\djongo\sql2mongo\query.py", line 875, in parse
    raise e
  File "C:\Users\Harry\anaconda3\envs\agrifarm\lib\site-packages\djongo\sql2mongo\query.py", line 856, in parse
    return handler(self, statement)
  File …
Run Code Online (Sandbox Code Playgroud)

python django change-password mongodb djongo

7
推荐指数
1
解决办法
551
查看次数

Chrome/Firefox 自动完成=新密码不起作用

我正在尝试添加autocomplete=new-password到一些用户编辑表单中,但它未能遵循 Chrome 79 和 Firefox 71 中的正确行为。这两种浏览器都应该支持它

这里有什么问题?
我创建了两个非常简单的示例来消除对问题的任何外部干扰。它们可以从任何 HTTP 服务器(例如php -S localhost:8999)提供服务。第一个页面触发“保存登录”功能,但第二个页面不应该使用该信息来自动完成密码 - 然而,它确实如此。

<!-- login.htm -->
<html>

<head></head>

<body>
  <form action="edit.htm" method="post">
    <label>Login <input type="text" name="login" /></label></br>
    <label>Password <input type="password" name="pwd" /></label><br />
    <input type="submit">
  </form>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)


<head></head>

<body>
  <form>
    <label>Login <input type="text" name="login" /></label></br>
    <label>New Password <input type="password" name="pwd" autocomplete="new-password" /></label><br />
    <input type="submit">
  </form>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

这不完全是“如何使用 autocomplete=new-password”的重复,因为行为似乎已经改变或记录不全。

html autocomplete change-password

6
推荐指数
2
解决办法
3392
查看次数