Sharepoint 中,使用Form认证后,为了使用资源管理器打开文档,使用SharepointDesigner打开编辑页面时能够正常进行,用户登陆时必须手动选择 自动登陆。
为了解决这个问题,我修改了login.aspx文件
1、首先在 C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS 下找到login.aspx文件,一般都放在这里,除非你修改过默认的_layouts路径。
2、找到如下代码:
- <asp:login id="login" FailureText="<%$Resources:wss,login_pageFailureText%>" runat=server width="100%">
- {.... ....}
- </table>
- </layouttemplate>
- </asp:login>
3、在</layouttemplate>前,添加如下代码:
下载: login.js
- <script type="text/javascript"><!--
- document.getElementById("ctl00_PlaceHolderMain_login_RememberMe").checked=true;
- // --></script>
这样做可以使自动登陆文字前的checkbox默认下就选中,这样用户就不需要手动选择了
4、如果不想让用户看到这个自动登陆的选项,可以对 自动登陆 所在的行进行隐藏。首先要找到如下代码
- <tr>
- <td colSpan=2><asp:CheckBox id=RememberMe Enabled=”False” text=”<%$SPHtmlEncodedResources:wss,login_pageRememberMe%>” runat=server /></td>
- </tr>
这段代码就是用来显示自动登陆文字及自动登录文字前的checkbox的。
现在对<tr>添加display=none的属性对其进行隐藏:
- <tr style=”display:none”>
- <td colSpan=2><asp:CheckBox id=RememberMe Enabled=”False” text=”<%$SPHtmlEncodedResources:wss,login_pageRememberMe%>” runat=server /></td>
- </tr>
这样,就解决了Sharepoint中使用Form认证后强制自动登陆的问题。
Form验证方式下,Sharepoint总是有这样那样的问题,比如需要开启客户端集成等等,其登陆页面也及其丑陋,有时间要研究一下如何修改自定义登陆页面。