Articles of active directory

基于Linux的域pipe理解决scheme?

使用Windows Server家族的任何成员,我可以设置一个活动目录,并为大型计算机提供单个用户池; 对给定域中的任何共享资源(包括对客户端计算机的访问等),都可以授予/删除访问权限。 使用Linux来pipe理多用户,多计算机环境有什么类似的(和广泛的)解决scheme? 他们有什么优点/缺点? 他们如何与Windows进行互操作?

如何从dns域名获得简短的“域名”?

原谅我,如果我对这个主题的理解有一些缺点,我只知道我所知道的关于域名和活动目录,因为我从与他们合作。 有两个不同的“版本”的域名。 首先是我称之为company.int (对于用户max@company.int)的DNS域名,其次是像prefixname (对于用户前缀名称\ max),并且它们都指的是相同的事情。 我的问题是,给“company.int”,如何将其转换为“prefixname”? 编辑:或者给定一个System.DirectoryServices.ActiveDirectory.Domain对象,如何获得前缀名? 编辑2:另外,是否有一个除此之外的“prefixname”的名称? 我永远不知道该怎么称呼它。 编辑3:我试图得到的价值是相同的值显示在“login到”(它列出的域和您的计算机)的Windowslogin屏幕上。 编辑4:我已经想通了以下几点可以得到的价值: SecurityIdentifier sid = GetCurrentUserSID(); string prefixName = sid.Translate(typeof(NTAccount)).Value.Split('\\')[0]; 有谁知道更好的方法来获得这个名字?

如何获得所有的Windows组?

我写这个来获得一个特定用户所属的组: DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer"); DirectoryEntry user = AD.Children.Find(completeUserName, "user"); object obGroups = AD.Invoke("Groups"); foreach (object ob in (IEnumerable)obGroups) { // Create object for each group. DirectoryEntry obGpEntry = new DirectoryEntry(ob); listOfMyWindowsGroups.Add(obGpEntry.Name); } for (int j = 0; j < listOfMyWindowsGroups.Count; j++) { //ex } 如何检索窗口中的所有组,而不仅仅是一个特定的用户?

如何从本地Win32(即不是.NET)代码查询ActiveDirectory

如果我想从.NET中的Active Directory获取用户信息,我可以使用DirectorySearcher类。 例如,要查找我要调用的用户的电子邮件地址 : public String GetUserEmailAddress(String accountName) { DirectorySearcher searcher = new DirectorySearcher(); searcher.Filter = String.Format("(&(objectCategory=user)(sAMAccountName={0}))", accountName); searcher.PropertiesToLoad.Add("mail"); SearchResult searchResult = searcher.FindOne(); return searchResult.Properties["mail"][0]; } 查询Active Directory的本地方法是什么? 注意 : 没有指定域名 没有指定服务器名称 我们甚至可以扩展我们的function来允许查询任何通用的任意信息: public Object GetUserAttribute(String accountName, String propertyName) { DirectorySearcher searcher = new DirectorySearcher(); searcher.Filter = String.Format("(&(objectCategory=user)(sAMAccountName={0}))", accountName); searcher.PropertiesToLoad.Add(propertyName); SearchResult searchResult = searcher.FindOne(); return […]

如何使用C ++获取ActiveDirectory中的maxpwdAge属性值?

我正在与AD服务器,我想获得maxpwdAge属性值… 我已经尝试了ADSi,但它提供了一个问题。 VARIANT var; bsNamingContext=L"maxpwdAge"; hr = ADsGetObject(pszADsPath, IID_IADsUser, (void**) &pUser); if(SUCCEEDED(hr)) { VariantInit(&var); hr = pUser->Get(bsNamingContext, &var); } 但是,它给-2147463155(8000500d)错误… 但我使用bsNamingContext=L"cn"; 它正确地给出CN值… 任何人都可以解决它?

活动目录属性“badPwdCount”

问题:我们已经将AD服务器从2003年升级到2008年,由于某些“错误代码”,开发人员以这种方式进行编码,他直接将“badPwdCount”属性值转换为INT,并由于NULL值转换 – NULL引用exception – NULL不能转换为INT。 更大的问题:现在我们无法进行部署,因为有超过100个独立的应用程序依赖于此更改,而我们现在正在寻找最less的处理方法。 背景:现在,这个“badPwdCount”属性的工作方式是,当用户login到域时,它将被设置为零,否则它是NULL。 问题是,这些用户都不会交互式地login,因为他们是外部的,我们通过API对他们进行身份validation,他们也不能使用API​​login。 问题:有人知道这个值是在registry还是在某个地方,我可以find并设置为零? 也想通过脚本启动每个用户的login,但也想收集其他想法… badPwdCount的MSDN页面: http : //msdn.microsoft.com/en-us/library/windows/desktop/ms675244 (v=vs.85) .aspx

LDAP – 检索所有属性/值的列表?

是否可以从LDAP中检索所有属性/值的列表,而不指定,如果可以的话,这怎么可能呢?

有没有办法使用Windows身份validation(Active Directory)的Git服务器?

我find了有关如何在Windows服务器上安装Git的文章,并使用SSH(如CopSSH)进行身份validation。 我有点惊讶,因为我记得读一个不应该使用Windows机器共享的Git仓库(抱歉,不记得我在哪里读)。 我的问题是我可以设置Git使用Windows身份validation,而不是SSH? 这对我来说会比较容易pipe理。 由于机器在我的“业余时间”由我来pipe理,越容易越好。

在SVN中,我如何覆盖自动Windows域身份validation

我有一个构build服务器不是Windows域的一部分,试图连接到一个VisualSVN服务器运行HTTPS通过Apache与域login通过Active Directory。 当我尝试使用指定域用户名连接到服务器时,我发现客户端挂起: svn ls –username=domainuser https://subversion.mydomain/svn/repo1/ 服务器上的日志使用生成计算机的login名以及“域名”字段中的生成计算机主机名显示Windows身份validation失败。 命令行上提供的用户名完全被忽略。 SVN客户端:TortoiseSVN命令行工具:svn,版本1.8.1(r1503906) 在一个单独的机器上(在域上) – 我发现,如果我使用cygwin svn,那么–username不会被忽略。

如何以编程方式确定用户帐户是否是Windows中特定组的成员?

给定一个组名和一个用户帐户,我想知道提供的用户是否属于一个特定的组。 用户可以是本地用户或域用户,并且该组可以是本地组或域组,并且该组也可以嵌套在其他组内。 简而言之,我正在寻找一个像bool IsUserMemberOf(User, Group)这样的函数,它将在内部调用相应的Win32 API来执行search。 我想进行上述查询的过程应具有查询本地和AD组所需的权限。 我想运行企业pipe理员帐户下的进程应该做的查询任何森林区议会,但可能不适用于不属于域的机器。 关于这个查询过程应该运行什么帐户的任何想法,以便它可以查询LSA以及AD?