在asp.net1.1和2.0下通过Membership完成帐户验证

最近在研究Membership这个东西,也就是一个微软提供Account,由于他的通用性这个Membership集成在VS2005中了,新的登录控件等都是用的Membership。其实Membership在1.1的时候就有了,不过是单独发布的一个组件,我最早是见于CommunityServer。把他们的数据库拿来分析对比可以发现,其实表,视图是完全一样的,不过就是存储过程不同。但这个不同可就麻烦了,1.1的Membership根本无法在2.0的数据库中添加帐户什么的,同样2.0的Membership也不能使用1.1的数据库。那么我想无论是1.1还是2.0的项目都使用同一个Membership数据库该怎么办啦?

为了达到无论是1.1的系统还是2.0的系统都使用同一个数据库的目的,我就把2.0的存储过程用户改为dbo,把1.1的存储过程改为membership,结果还是大失所望,Membership根本没有提供数据执行用户的修改,也就是说,只能执行dbo用户的存储过程。郁闷!

那么我就把数据库这边完全用2.0的Membership数据库嘛,在1.1中要到这个数据库中进行认证的时候就不用1.1的Membership(根本用不起),直接调用数据库中的存储过程嘛。这样当然是可以的,可是用户密码是SHA1加密的,而且其他地方也有不少修改,那么就要再从新写一个能执行2.0数据库的Membership,虽然有Reflector来看源代码,但是这个周期太长了,更痛苦。

那么还有什么好办法啦?最终我想到还是使用WebService算了。在2005下面建立WebService项目,使用2.0Membership数据库,把要用到的几个验证函数都写成Web服务,然后再在1.1中直接调用Web服务就是了。这个方法比较简单,以后所有2.0项目就可以直接使用Membership了,而1.1项目就调用Web服务。

呵呵,目前我所想到的就是这样的解决办法,也不知道还有更好的方案。

时间: 2024-11-03 19:14:28

在asp.net1.1和2.0下通过Membership完成帐户验证的相关文章

ASP.NET1.1和2.0下进行https请求的不同实现

asp.net|请求 今天做项目中进行https请求时遇到这样的调试错误,内部错误:未能为 SSL/TLS 安全通道建立信任关系.错误页面:根据验证过程,远程证书无效.经过分析,在浏览器中打开要进行一个安全确认.就是这个对话框引起的问题.在网上搜了一下一般的解决办法,但是搜的内容比较少,现在在这里总结一下. using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Sec

Windows Server 2008下“管”好Guest帐户

Guest帐户用还是不用,这是个问题?在默认状态下,很多Windows系统都会自动关闭Guest帐户的启用 运行状态,许多对系统安全比较看重的用户,也会毫不犹豫地对Guest帐户"痛下杀手",不让其启动运 行,在这些用户看来,只要开启了Guest帐户,那么Windows系统遭遇黑客攻击将会不可避免!事实上,我 们只要对Guest帐户进行巧妙管理,完全可以在享受Guest帐户带给自己便利的同时,也能有效保证系统的 运行安全!这不,现在本文就以Windows Server 2008系统为操

Windows10系统下如何切换用户帐户

方法一:  Windows 10/8.1/8/7/XP系统均可通过同时按下“Windows+L”组合键在不同的用户帐户间进行切换.     方法二:   Win10系统:   1.在系统下同时按下“Windows+D”组合键,所有窗口将会最小化并切换到桌面:     2.此时再同时按下“Alt+F4”组合键,屏幕中央会弹出“关闭Windows”窗口,在“希望做什么”下方的下拉菜单中选择“切换用户”,并点击“确定”即可.     3.此时系统会切换到登录界面,在画面左下角列出了当前电脑上可以切换的

Asp.net1.0 升级 ASP.NET 2.0 的几个问题总结

asp.net|问题 这几天升级了一下原来的1.1项目,发现了一些问题,总结一下放在这里,也提醒还没有来得及升级或准备升级的朋友,升级的过程中少走弯路,少浪费时间.1.Global.asax文件的处理形式不一样,转化后将出现错误,在vs2003中Global.asax具有代码后置文件,2.0下, 将代码分离文件移到 App_Code 目录下,以便使其自动变为可通过应用程序中的任意 ASP.NET 页面访问."Code-behind"属性将从 ASAX 文件的指令中删除.vs2005则直

数据绑定控件再ASP.NET1.X和ASP.NET2.0的区别

asp.net|控件|区别|数据 数据绑定在ASP.NET2.0里进一步得到简化,绑定控件的基类来自于BaseDataBoundControl,你可以到http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.basedataboundcontrol_members(VS.80).aspx查看该类如果你查看该类的成员,请注意下面两个属性和方法 virtual object DataSource  { get; set;

ASP.NET1.0/2.0里用DIV层元素弹出窗体

asp.net 本文 Bilal Haidar 将带领您如何使用DIV元素来创建弹出的窗体,这种弹出即可以包含简单的HTML元素也可以包含ASP.NET服务器控件,而且在实现过程中没有使用传统的window函数和showModalDialog / showModelessDialog函数(传统的我们使用 window.open,或者showModalDialog 这样的函数来制作弹出窗口--天天注释) 最近我在用ASP.NET1.1技术来开发一个窗体,该窗体包含由三个控件组成的一个面板集合,这个

Asp.net1.0升级至ASP.NET2.0十个问题总结

asp.net|问题 这几天升级了一下原来的1.1项目,发现了一些问题,总结一下放在这里,也提醒还没有来得及升级或准备升级的朋友,升级的过程中少走弯路,少浪费时间. 1.Global.asax文件的处理形式不一样 转化后将出现错误,在vs2003中Global.asax具有代码后置文件,2.0下, 将代码分离文件移到 App_Code 目录下,以便使其自动变为可通过应用程序中的任意 ASP.NET 页面访问."Code-behind"属性将从 ASAX 文件的指令中删除.vs2005则

ASP.NET1.0升级ASP.NET2.0的问题总结

asp.net|问题     这几天升级了一下原来的1.1项目,发现了一些问题,总结一下放在这里,也提醒还没有来得及升级或准备升级的朋友,升级的过程中少走弯路,少浪费时间. 1.Global.asax文件的处理形式不一样,转化后将出现错误 在vs2003中Global.asax具有代码后置文件,2.0下, 将代码分离文件移到 App_Code 目录下,以便使其自动变为可通过应用程序中的任意 ASP.NET 页面访问."Code-behind"属性将从 ASAX 文件的指令中删除.vs2

麻烦问下如何动态生成html表格装载datatable值?(vs2003,asp.net1.1, vb.net)

问题描述 系统是vs2003,asp.net1.1,vb.net.现在我已经从数据库中查询取得数据,放在一个datatable中.麻烦的问题来了,要生成一个待打印的页面,该页面里的数据是放在html表格里的.问题是要读取datatable值,动态生成和datatable当前行数.列数相等的html表格,将datatable中数据放进html表格.真麻烦啊,我是新手,单位里又缺乏互助,在这里请教论坛里的各位朋友,谢谢!!!! 解决方案 解决方案二:水晶报表解决方案三:后台定义一个datatable