SharePoint 2010的Form认证的用户注册功能
说明:
这不是一个完成的方案,过程中还是有很多的用户体验方面的问题需要改进。
前提:
SharePoint 2010 配置好了Form认证。相关的配置方法参考:http://donalconlon.wordpress.com/2010/02/23/configuring-forms-base-authentication-for-sharepoint-2010-using-iis7/
如果要配置 LDAP provider的form认证,这篇文章是个不错的选择:http://blogs.technet.com/b/speschka/archive/2009/11/05/configuring-forms-based-authentication-in-sharepoint-2010.aspx
场景:
SharePoint 2010 配置完Form认证之后,我们需要向SQL数据库中添加新的用户。这一步有什么问题吗?当然有,就是所有的操作都的管理员来做:管理员添加帐号,设置初始密码等等。那么有没有其他的解决方案?用户能不能自定注册网站用户,管理员审批权限呢?
答案是肯定的,要不然也不会写这篇博客了。
方案:
首先我们看一下Form认证的登录页面:
通过URL我们得知,这是一个Application页面,也就是在服务器上真实存在的,路径是:C:\inetpub\wwwroot\wss\VirtualDirectories\<Applicationname>\_forms\default.aspx.
打开页面查看源代码(主要代码):
<asp:login id="signInControl" FailureText="<%$Resources:wss,login_pageFailureText%>" runat="server" width="100%"><layouttemplate><asp:label id="FailureText" class="ms-error" runat="server"/><table width="100%">... </table></layouttemplate></asp:login>
其实就是普通的ASP.Net控件,所以接下来的操作也不太难了。
步骤:
第一步,向这个页面添加一个链接按钮,指向注册页面:
代码以及效果如下:
<asp:login id="signInControl" FailureText="<%$Resources:wss,login_pageFailureText%>" runat="server" width="100%"><layouttemplate><asp:label id="FailureText" class="ms-error" runat="server"/><table width="100%">...<tr><td colspan="2" align="right"><asp:LinkButton id="RegisterNew" text="Sign Up" runat="server" PostBackUrl="SignUp.aspx" /></td></tr></table></layouttemplate></asp:login>
第二步,创建自定义注册页面,并且保存在C:\inetpub\wwwroot\wss\VirtualDirectories\<Applicationname>\_forms文件夹下面。这里主要使用了<asp:CreateUserWizard>控件。这样就不要要而外写逻辑代码了。
<%@ Page Language="C#" MasterPageFile="~/_layouts/simple.master" %><asp:Content ContentPlaceHolderId="PlaceHolderPageTitle" runat="server">SignUp
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderPageTitleInTitleArea" runat="server">Sign Up
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderSiteName" runat="server"/>
<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
<asp:CreateUserWizard ID="SignUp" runat="server" CreateUserButtonText="Sign Up">
<TextBoxStyle CssClass="ms-inputuserfield" /><WizardSteps><asp:CreateUserWizardStep runat="server" Title="Sign Up"></asp:CreateUserWizardStep><asp:CompleteWizardStep runat="server"></asp:CompleteWizardStep></WizardSteps>
</asp:CreateUserWizard>
</asp:Content>
第三步,测试。
注册:
关闭浏览器,重新登录。(由于方案不完善,如果不关掉浏览器的话,那么会报错)。登录的结果如下:(管理员还没有给该用户添加权限)
添加权限:
不足:
1.注册页面的样式没有搞定,很丑,很丑;
2.注册完毕后必须要关掉浏览器,然后重新打开浏览器登录,否则报错。
转载于:https://www.cnblogs.com/fanwenxuan/archive/2010/09/18/1830353.html
SharePoint 2010的Form认证的用户注册功能相关推荐
- Sharepoint 2010配置form认证方式(SQL账号)
Sharepoint 2010配置form认证方式(SQL账号) 一.准备工作: 1.首先我们创建我们form认证中所需要的数据库. 找到aspnet_regsql.exe,一般在C:\Windows ...
- SharePoint 2010 类似人人网站内信功能实施
简介:用SharePoint代码加实施的方式,完成类似人人网站内信功能,当然,实现的比较简单,样式也比较难看,只为给大家一个实施的简单思路,如有谬误,还请见谅.当然,还有就是截图比较长,当然为了让大家 ...
- SharePoint 2010 Form Authentication (SQL) based on existing database
博客地址 http://blog.csdn.net/foxdave SharePoint 2010 表单认证,基于现有数据库的用户信息表 本文主要描述本人配置过程中涉及到的步骤,仅作为参考,不要仅限于 ...
- SharePoint 2010认证模式
SharePoint 2010在用户认证模式上,较之以前的版本有了非常大的改变.在SharePoint 2010中,当你创建一个Web应用程序的时候,有两种认证方式可供选择:Windows认证模式or ...
- SharePoint 2010应用开发系列
这段时间一直在忙着写SharePoint 2010的MSDN,花了很大的精力来研究,在这里记录一下一些心得体会,希望能给大家带来帮助,共同进步. 各位如果也在研究SharePoint 2010 ...
- 在 SharePoint 2010 中访问数据
数据访问的关键方法有哪些? | 使用查询类 | 使用 SPQuery | 使用 SPSiteDataQuery | 使用 LINQ to SharePoint | LINQ to SharePoint ...
- Moss/Sharepoint 2010 Form认证(FBA)
更改Moss/Sharepoint 的认证方式,你可以自己写provider同时也可以使用微软框架自带的provider,这方面的准备工作网上有相当多的资料可以查询,你可以搜SqlMembership ...
- SharePoint 2010 Form 认证 之 IIS 添加数据
上一篇简单介绍了Form认证的配置,这一篇再介绍如何通过IIS添加数据. 一.打开IIS,添加角色与用户 二.添加角色 设置默认提供程序 添加用户 三.添加用户 设置默认提供程序 添加用户 用户添加完 ...
- SharePoint 2013 配置基于AD的Form认证
前 言 配置SharePoint 2013基于AD的Form认证,主要有三步: 1. 修改管理中心的web.config: 2. 修改STS Application的web.config: 3. 修改 ...
- 国内首部Sharepoint 2010深入开发(工作流+安全性+单点登录+AD开发、认证等)
简介:本课程是国内首部深入讲解Sharepoint 2010全程开发的课程,讲师为微软中国上海公司高级工程师.课程采用技术结合实例的方式讲解,涉及内容包括Sharepoint2010之Linq.WCF ...
最新文章
- [已解决]window下Can't connect to MySQL server on 'localhost' (10061)与无法启动MYSQL服务”1067 进程意外终止”...
- c++以代理的方式来实现接口化编程
- 第一章 Spring基础
- SAP Fiori应用里日期格式的显示奥秘
- Linux系统编程----8(竞态条件,时序竞态,pause函数,如何解决时序竞态)
- mysql中find_in_set()函数的使用及in()用法详解
- 装机之MBR和GPT
- 【android】string.xml中的一些错误
- 使用python解析C代码
- 超实用的浏览器插件:CSDN 一键搜索、自定义工具、全站去广告、一键美化等
- java arraylist 构造_深入理解java集合框架之---------Arraylist集合 -----构造函数
- openai-gpt_GPT-3不会承担您的编程工作
- 【每日一具17】CAD迷你画图/最新2020R9
- 为什么你的问题总是得不到博主回复?一文教你如何高效和博主进行沟通!
- oracle表空间配额和unlimited tablespace权限
- iterm2 + oh my zsh 实现 macOS X 下炫酷终端
- C++剖析 cout<<“hello world“<<endl;
- ASBR(自治系统边界路由器)
- 股票期货盈亏比的计算,胜率与盈亏比的关系
- Java核心技术卷一、二读书笔记(PDF)分享