我需要提取/检索公司的AD用户列表。我对SQL Server数据库(我相信它等同于Oracle模式?)具有完全访问权限(开发人员访问权限)。我不完全有权像DBA那样管理它。
我在网上搜索过,遇到过各种指南,大多数都在代码中使用use master
。即使我不熟悉SQL Server,这是否意味着我需要对SQL服务器安装进行类似dba的访问? 如果您也可以包含工作代码,那就太好了。
我正在考虑创建一个SQL Server视图来存储数据。这可能吗?我想它只是想检查一下。我已经看过一些例子,但是从2003年开始。从那时起,很多事情都会发生变化。
您认为我还需要其他任何东西吗?
非常感谢
答案 0 :(得分:1)
我过去曾使用它来查询AD用户。
SELECT
*
FROM
OPENROWSET('ADSDSOObject',
'127.0.0.1';
'domain\username';'password',
'SELECT
distinguishedName,
manager,
objectGUID,
samAccountName,
givenName,
SN,
mail
FROM
''LDAP://127.0.0.1/DC=namepart,DC=namepart''
WHERE
objectClass=''User''
AND objectCategory=''Person''
');
您需要先启用ad-hoc分布式查询。
EXEC sp_configure 'Ad Hoc Distributed Queries',1;
GO
RECONFIGURE;
答案 1 :(得分:-2)
基本上:你没有。从程序运行它,不要从SQL Server中运行它。如果需要定期,请将SQL Server中的表与从AD中提取的数据同步。
我搜索网络并遇到各种指南,大多数使用“使用 掌握“在代码中。即使我不熟悉SQL Server, 这是否意味着我需要类似dba的访问SQL服务器安装? 如果你也可以包含工作代码那就太好了。
考虑一下在你职业生涯的某些时候阅读一些文档。 “使用master”就是这样 - 它告诉SQL Server使用名为MASTER的数据库。由于所有操作都在当前数据库(上下文)中执行,因此将此上下文置于已知位置。对于某些事情,这可能是好的,因为删除当前数据库可能会导致问题,因此通过首先更改当前上下文可以更好地完成某些操作。所有这些都在文档中。
我正在考虑创建一个SQL Server视图来存储数据。
你知道SQL吗?任何地方都无法查看STORES数据。它可能实现它,但它永远不会存储。这就是TABLES所做的。视图就像宏。
您认为我还需要其他任何东西吗?
文档。读。您错过了我所知道的实现中任何SQL服务器的基础知识 - 无论是Oracle还是Informix,DB2,Microsoft SQL Server。)VIEW不是主数据存储。基本知识。
通常,不要尝试从任何数据库服务器中访问AD。