加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

从asp.net获取验证AD用户objectGuid

发布时间:2020-12-16 00:18:35 所属栏目:asp.Net 来源:网络整理
导读:我在ASP.NET应用程序中使用Windows身份验证.我想知道如何最好地从当前登录的用户获取objectGuid? 此致,埃吉尔. 解决方法 您可以使用System.DirectoryServices命名空间执行此操作. Dim entry As DirectoryServices.DirectoryEntryDim mySearcher As System.D
我在ASP.NET应用程序中使用Windows身份验证.我想知道如何最好地从当前登录的用户获取objectGuid?

此致,埃吉尔.

解决方法

您可以使用System.DirectoryServices命名空间执行此操作.
Dim entry As DirectoryServices.DirectoryEntry
Dim mySearcher As System.DirectoryServices.DirectorySearcher
Dim result As System.DirectoryServices.SearchResult
Dim myEntry As DirectoryEntry
Dim domainName As String
Dim userId As String
Dim objectGuid As Guid

'Split the username into domain and userid parts
domainName = Page.User.Identity.Name.Substring(0,Page.User.Identity.Name.IndexOf(""))
userId = Page.User.Identity.Name.Substring(Page.User.Identity.Name.IndexOf("") + 1)

'Start at the top level domain
entry = New DirectoryEntry(domainName)

mySearcher = New DirectorySearcher(entry)

'Build a filter for just the user
mySearcher.Filter = ("(&(anr=" & userId & ")(objectClass=user))")

'Get the search result ...
result = mySearcher.FindOne

'... and then get the AD entry that goes with it
myEntry = result.GetDirectoryEntry

'The Guid property is the objectGuid
objectGuid = myEntry.Guid

可能有更好的方法来做到这一点,但这是有效的!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读