如何利用

MembershipUser

更改密码

作者:

vkvi

来源:千一网络

(原创)

时间:

2009-3-11

 

完美集成、增强

KindEditor HTML

编辑器

ASP.NET

自带的成员资格中对改用户密码一事搞得很复杂。

MembershipUser

有个

方法叫

ChangePassword

可以改密码,但要求先输入原密码。如果用户已经忘记了原密码,

叫管理员重新设置一个密码,该方法就办不到了。

不输入原密码重设密码的方法有二:

方法一

首先在配置文件中将

enablePasswordReset

设置为

true

requiresQuestionAndAnswer

设置为

false

也就是说允许密码重置,

禁止用问题和答案找

回密码。关于如何设置,

请参见:

ASP.NET

成员资格-配置

Membership

中为被锁定用

户重设密码

然后是代码:

MembershipUser user = Membership.GetUser("

用户名

");

string password = user.ResetPassword(); //

重置一个随机密码

user.ChangePassword(password, "

新密码

"); //

用指定的密码设置

方法二

这种方法就不用禁用问题和答案了,但它不能想设成哪个密码就设成哪个密码,它的

原理是:将数据库中已知的密码的加密字符串更新到要修改密码的用户中。步骤是:

已经丢失密码的用户名叫

cftea

,另外一用户的用户名是

admin

,密码是

1234567

我们可以在表

aspnet_Users

中通过用户名找到

cftea

admin

UserId

 

然后再到表

aspnet_Membership

中通过

UserId

找到

Password

PasswordSalt

的值。

admin

那个用户对应的

Password

PasswordSalt

 

值更新到

cftea

对应的字

段。

此时

cftea

的密码就和

admin

一样了。

如果我们有多个应用程序在使用同一个库,

那么应该先到

aspnet_Applications

中找

到相应的应用程序的

ApplicationId

,然后在

aspnet_Users

中查找

UserId

时应该把

ApplicationId

也作为

where

条件加进去。

如何利用 MembershipUser 更改密码的更多相关文章

  1. mysql 更改密码

    Mac 安装mysql时会生成一个默认密码: 这个可以在通知中找到,如果你需要更改密码则继续看下面, 今天给mac安装了MySQL,安装过程非常的顺利,但是在用一个可视化工具进行连接时,需要输入密码, ...

  2. jenkins SVN更改密码后出现的坑爹问题

    1.前提 公司SVN账号密码和AD账号密码是绑定在一起的,为了保证代码检出总是最新,jenkins中做代码检查前总会从SVN中检出最新代码. 最近公司要求AD账户不得使用原始密码,更改密码后,jenk ...

  3. Oracle不知道用户密码情况下,如何在不更改密码的前提下解锁用户或者延期密码有效期

    1.问题描述: 生产环境,zabbix告警业务用户密码即将过期,但是如何不知道业务用户密码的情况下来解决该问题? 2.实验一: 1)创建新的用户test,并授予test resource角色和conn ...

  4. MySQL5.7更改密码时出现ERROR 1054 (42S22): Unknown column 'password' in 'field list'

    转自:http://blog.csdn.net/u010603691/article/details/50379282 新安装的MySQL5.7,登录时提示密码错误,安装的时候并没有更改密码,后来通过 ...

  5. Windows Server 2016-批量设置用户下次登陆须更改密码

    Powershell设置某OU下所有用户下次登陆必须更改密码: Get-ADUser -Filter * -SearchBase "ou=syncall,dc=azureyun,dc=com ...

  6. Teamviewer远程ssh命令行更改密码启动

    Teamviewer远程ssh命令行更改密码启动 设置密码 $ sudo teamviewer passwd [NewPasswd ] 查看teamviewer信息 $ teamviewer info ...

  7. centos6.5安装Mysql5.6及更改密码

    (一) centos6.5安装Mysql5.6 二进制文件安装的方法分为两种: 第一种是不针对特定平台的通用安装方法,使用的二进制文件是后缀为.tar.gz的压缩文件: 第二种是使用RPM或其他包进行 ...

  8. AIX 批量更改密码

    使用 chpasswd 可以使用 chpasswd 方便地更改单个或多个账户密码.这意味着不需要像平时一样在命令行上重复输入密码.尽管可以以交互方式使用 chpasswd,但是我建议以非交互方式使用它 ...

  9. 利用itertools生成密码字典,多线程撞库破解rar压缩文件密码

    脚本功能: 利用itertools生成密码字典(迭代器形式) 多线程并发从密码字典中取出密码进行验证 验证成功后把密码写入文件中保存 #!/usr/bin/env python # -*- codin ...

随机推荐

  1. Mirantis OpenStack 8.0 版本

    作为 OpenStack 领域标杆性企业之一的 Mirantis 在2016年3月初发布了最新的 MOS 8.0 版本.本文试着基于公开资料进行一些归纳分析. 1. 版本概况 1.1 概况 社区版本: ...

  2. POJ 2761 Feed the dogs

    主席树,区间第$k$大. #pragma comment(linker, "/STACK:1024000000,1024000000") #include<cstdio> ...

  3. Python数据预处理—训练集和测试集数据划分

    使用sklearn中的函数可以很方便的将数据划分为trainset 和 testset 该函数为sklearn.cross_validation.train_test_split,用法如下: > ...

  4. GNU Octave fact函数输出

    无意间发现了这么一个函数,可以随机输出关于RMS的笑话.挺有意思的. `fact' is a function from the file /usr/share/octave/3.6.2/m/misc ...

  5. sqlmap基础使用

    测试许多款 sql注入工具 最终还是发现 sqlmap 最为强悍 谁用谁知道!赶紧抛弃掉手上一大堆 sql 注入工具吧 : )测试环境:ubuntu 10.10 & windows 7(x64 ...

  6. x264宏块及子块划分方式

    1 宏块划分方式 一副图像(帧,非场图像,x264支持宏块级场编码,这里以帧图像为例说明)按从左到右.从上到下16x16的方式划分宏块,对于图像宽度不是16的倍数的情况,会扩展至16的倍数,然后通过s ...

  7. Android 使用URLConnection来post数据

    /** * @param postUrl * 需要post的地址 * @param map * 存储数据的map * @param handler * 处理message的handler */ pub ...

  8. Linux常用命令汇总及使用方法(二)之文本编辑器VI

    VI可能是在Linux中使用比较频繁的文本编辑器,如果不能熟练使用VI,在一定程度上会影响工作效率,所以在这里记录一下VI的常用命令及操作方式 在[root@test ~]# vi carrie.tx ...

  9. 对dpkg: error processing package xxx (--configure) 的处理

    这个问题是在在安装Deepdive时候碰到的,具体来说在执行 sudo apt-get update碰到的sudo mv /var/lib/dpkg/info/ /var/lib/dpkg/info_ ...

  10. SVN-Attempted to lock an already-locked dir错误

    svn更新时,文件夹被锁死. 解决办法: 右键该文件,在team(版本管理)里面执行"清除"操作后,问题解决了.