设为首页 收藏本站
查看: 1249|回复: 0

PowerShell与活动目录

[复制链接]

尚未签到

发表于 2018-9-3 08:49:23 | 显示全部楼层 |阅读模式
  但随着Windows 7和Windows Server 2008 R2的发布,PowerShell对AD完全支持的期待告一段落。微软在新的版本中已经发布了一个AD模块和PowerShell驱动提供程序,使得可以通过PowerShell管理单元管理AD。
  如何安装
  如果你安装一个Windows Server 2008 R2与控制器通过使用服务器管理添加活动目录服务角色,AD PowerShell模块将被默认安装。但是,如果你想在你的Windows 7工作站上安装这个模块(模块是PowerShell cmdlet、提供程序、脚本等的集合),你需要安装服务器远程管理工具(RSAT)。
  一旦你安装完毕RSAT,请打开控制面板的程序和功能类别,选择打开或关闭Windows功能的RSAT节点。展开,转到Windows PowerShell活动目录模块节点,如图所示。选择复选框,点击是添加该模块。
DSC0000.png

  模块被安装之后,你既可以从开始菜单、程序、管理工具组选择Windows PowerShell活动目录模块,又可以通过键入如下命令很容易的把它添加到你现有的PowerShell会话中:
  Import-module ActiveDirectory
  在短暂的闪烁之后,提示符将返回,然后你将可以访问PowerShell和AD所提供的所有强大功能。不过,在我们开始使用PowerShell的AD模块之前,让我再来补充一条重要信息。不同于之前任何基于PowerShell的AD自动化实现,这个新的模块要求在你的域中至少有一台域控制器运行新的活动目录Web服务(ADWS)。ADWS默认在R2的域控制器上安装,但你在Windows Server 2003或Windows Server 2008域控制器上需要特殊的附件才能使用这个模块。
  如果你在你的域中没有ADWS服务器,当你在PowerShell中试图导入AD模块时会出现错误。一般而言,对ADWS和这些PowerShell cmdlet最有趣的事,是它们都不使用LDAP和AD沟通。具体而言,它们使用基于XML Web服务的协议与AD交互。对以前的AD管理工具集而言,这是一个意义重大的改变,并且观察微软在未来的AD管理工具中是否延续这个趋势是很有趣的。注意如果你在非R2的域控制器中安装了ADWS,你将依然可以使用常规的基于LDAP的工具如‘活动目录用户和计算机’来管理这些服务器。
  使用cmdlet
  在你安装完成这些cmdlet并有一台运行ADWS的DC之后,你就可以开始探索PowerShell对AD的强大威力。微软为使用PowerShell对AD进行自动化管理提供了两个主要工具。第一个工具是一系列cmdlet,可以让你通过查找AD对象做你想做的一切,如创建计算机账号、更改账号等。第二个工具是一个针对AD的PowerShell驱动提供程序,可以让你像一个文件系统一样导航AD。这个工具交互式使用具有强大的能力,我将为你展示一些你可以对AD进行的很棒的操作。
  让我们开始看看一些AD cmdlet。如果你想得到一个活动目录 PowerShell模块中所有AD相关的cmdlet列表,打开PowerShell并键入如下命令:
  get-command -module ActiveDirectory
  这将返回一个有76个cmdlet名字的清单,它们是AD模块的一部分。正如你从清单中看到的,有一些显眼的cmdlet,如检索组成员的Get-ADGroupMember和为域添加计算机账号的New-ADComputer。让我们看看你如何使用这几个命令。比方说,你想快速检索你域中“Marketing Users”组的成员列表。你可以使用如下cmdlet轻松完成:
  get-ADGroupMember -identity "Marketing Users"
  参数identity作为引用一个特定对象的方式在整个AD cmdlet中很常见。Identity参数可以采取一个可分辨名称(如,DC=cpand1,DC=com),一个对象GUID或者samAccountName的形式。
  PowerShell和这些AD cmdlet的另一个强大特性,是能够通过管道把输出从一个cmdlet传递到另一个。例如,假设你想在AD中查找一个用户对象,然后禁用该用户对象。你知道用户的samAccountName是kmyer,所以你可以使用下面的两个cmdlet完成这个任务:
  get-ADUser -identity kmyer | Set-ADUser -enabled $false
  在这个例子中,我们使用get-ADUser cmdlet搜索samAccounName为kmyer的用户账号。只要我们找到那个用户,我们使用管道把它传递给Set-ADUser cmdlet,并给他赋予带有$false标记的-enabled参数来禁用账号。
  这是一个简单的例子,说明了PowerShell和AD cmdlet的威力和简洁。由于这个模块中有76个cmdlet,你可以想想你能使用这个功能做得更多。让我们来看看另一个功能更多更值得讨论的模块:活动目录PowerShell驱动提供程序。
  活动目录PowerShell驱动提供程序
  什么是活动目录PowerShell驱动提供程序?PowerShell支持资源管理的概念,这就像驱动器卷一样。正如你可以使用cd进入一个文件夹一样,PowerShell驱动提供程序可以让你以同样的方式浏览其他类型的资源。例如,在PowerShell 1中,微软提供了一个注册表PowerShell驱动,因此你可以像对待文件夹和文件一样对待注册表键。你可以在PowerShell中改变路径到HKEY_LOCAL_MACHINE,然后导航到键,使用类似于你在文件系统中使用的命令添加或删除键和值。微软已经提供了一个AD的PowerShell驱动程序和cmdlet共同使用。这个PowerShell驱动提供程序让你像对待文件系统一样对待你的AD层次结构。要使用这个功能,打开PowerShell并加载AD模块,然后键入:
  Cd AD:
  你会发现驱动提示发生了改变以反映你新的工作路径。如果从此处键入dir,你会得到你当前AD林所有分区的列表。我们假设你想导航到你的域,并创建一个新的OU。在AD的最高层次:驱动提示上下文中键入(以你AD域的目录名称取代DC=cpandl,DC=com):
  cd “DC=cpandl,DC=com”
  现在假设我们想在Marketing OU下创建一个新的HR OU。更改到Marketing OU文件夹,键入:
  cd “OU=Marketing”
  最后,在Marketing OU下创建HR OU,键入:
  Md “OU=HR”


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-561837-1-1.html 上篇帖子: Installing PowerShell Management Library for windows server 2008-Robin的学习笔记 下篇帖子: WSUS基于PowerShell的管理方案
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表