谢谢!
已经解决,默认IIS配置既可以。下面是代码(供和我一样的菜鸟参考):
C#
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.DirectoryServices;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string principal = System.Environment.UserName;
string filter = string.Format("(sAMAccountName={0})", principal );
string domain = "YourDoMainName";
string[] properties = new string[] { "fullname" };
DirectoryEntry adRoot = new DirectoryEntry("LDAP://" + domain, null, null, AuthenticationTypes.Secure);
DirectorySearcher searcher = new DirectorySearcher(adRoot);
searcher.SearchScope = SearchScope.Subtree; searcher.ReferralChasing = ReferralChasingOption.All;
searcher.PropertiesToLoad.AddRange(properties);
searcher.Filter = filter;
SearchResult result = searcher.FindOne();
DirectoryEntry directoryEntry = result.GetDirectoryEntry();
Label1.Text = "用户姓名:" + directoryEntry.Properties["displayName"][0].ToString();
}
}
VB.Net
Imports System.Collections
Imports System.DirectoryServices
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim principal As String = System.Environment.UserName
Dim filter As String = String.Format("(sAMAccountName={0})", principal)
Dim domain As String = "YourDoMainName"
Dim properties As String() = New String() {"fullname"}
Dim adRoot As DirectoryEntry = New DirectoryEntry("LDAP://" & domain, Nothing, Nothing, AuthenticationTypes.Secure)
Dim searcher As DirectorySearcher = New DirectorySearcher(adRoot)
searcher.SearchScope = SearchScope.Subtree
searcher.ReferralChasing = ReferralChasingOption.All
searcher.PropertiesToLoad.AddRange(properties)
searcher.Filter = filter
Dim result As SearchResult = searcher.FindOne()
Dim directoryEntry As DirectoryEntry = result.GetDirectoryEntry()
Label1.Text = "用户姓名:" + directoryEntry.Properties("displayname")(0).ToString
End Sub
End Class
环境:VS2005
注:需要添加引用System.DirectoryServices