zoukankan      html  css  js  c++  java
  • sharepoint:基于AD的FORM认证

    //来源:http://www.cnblogs.com/jindahao/archive/2012/05/07/2487351.html

    需求:

    1. 认证要基于AD

    2. 登入方式要页面的方式(form)

    3. 添加自定义验证逻辑

    方案:

    根据需求可以很快明白,实际就是个“基于AD的FORM认证”。具体步骤如下:

    1. 修改web.config

    添加“<connectionStrings>”

    <connectionStrings>
            <add name="ADConnectionString" connectionString="LDAP://my.ad/OU=组织机构,DC=my,DC=ad" />
    </connectionStrings>

    添加" <membership>"

    复制代码
        <membership defaultProvider="ADMembership">
          <providers>
            <clear />
            <add name="ADMembership" type="MyADMembershipProvider, MyADMembership, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d7c670baa61f04c6" 
    
    attributeMapUsername="SAMAccountName" connectionStringName="ADConnectionString" connectionUsername="****" connectionPassword="****" />
          </providers>
        </membership>
    复制代码

    2. 添加自定义验证逻辑代码,这里主要是继承了“ActiveDirectoryMembershipProvider” 类

    复制代码
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Web.Security;
    using System.Data;
    using System.Data.OracleClient;
    using System.Web;
    using System.Web.UI;
    using System.Diagnostics;
    namespace MyADMembership
    {
       public class MyADMembershipProvider : ActiveDirectoryMembershipProvider
        {
            public override bool ValidateUser(string username, string password)
            {
                bool bv = base.ValidateUser(username, password);//调用父类验证方法
           //自定义验证逻辑
           ......      }    } }
    复制代码

    3. 部署dll到GAC,重启iis

    4. 在管理中心修改认证方式,修改管理员

    5. 登入验证

  • 相关阅读:
    树状数组进阶
    洛谷 P2824 [HEOI2016/TJOI2016]排序
    抽象类
    关于getClass()和instanceof的区别与联系
    Java中的强制类型转换
    Java中的内联
    Java关键字之final
    Java中的"is-a"规则
    关于虚方法
    Java中的动态绑定
  • 原文地址:https://www.cnblogs.com/TNSSTAR/p/4351854.html
Copyright © 2011-2022 走看看