PowerShell與活動目錄

從發布以來,Windows PowerShell已經成為Windows自動化平臺的選擇。它的強大和靈活已經在許多環境中被許多Windows技術所證明。不幸的是,在活動目錄支持方面,PowerShell 1并沒有什么可以炫耀。從基礎角度,微軟提供了ADSI“類型加速器”作為它的支持。如果你需要去完成多高級任務,就不得不訪問提供AD支持的本地.NET類——而這需要更多的超出大部分管理員學習興趣的高級技能。

但隨著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活動目錄模塊節點,如圖所示。選擇復選框,點擊是添加該模塊。

?

模塊被安裝之后,你既可以從開始菜單、程序、管理工具組選擇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”















本文轉自legendfu51CTO博客,原文鏈接:?http://blog.51cto.com/legendfu/1072327,如需轉載請自行聯系原作者


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392803.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392803.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392803.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

408計算機組成原理有匯編嗎,2021考研408計算機組成原理習題:計算機系統概述

10月是2021考研學子們備考的突破提升階段,我們在復習專業課時,需要結合一定量的練習題來查漏補缺。接下來,小編為計算機考研考生們,帶來了408統考計算機組成原理習題:計算機系統概述,供考生參考。2021考研408計算機組成…

react 文本框_React自動完成文本框

react 文本框In this React tutorial for beginners you will learn to create a basic React app and an autocomplete text box React component.在這個面向初學者的React教程中,您將學習創建一個基本的React應用程序和一個自動完成的文本框React組件。 This vid…

MyBatis-Plus入門Demo詳解

一.簡介: 引用官方文檔(本文主要參考官方文檔示例): MyBatis-Plus(簡稱 MP)是一個 MyBatis 的增強工具,在 MyBatis 的基礎上只做增強不做改變,為簡化開發、提高效率而生。 愿景 我們的愿景是成為 MyBatis 最好的搭檔,就…

RHEL 5基礎篇—常見系統啟動類故障

常見系統啟動類故障 在linux系統的啟動過程中,涉及到MBR主引導記錄、GRUB啟動菜單、系統初始化配置文件inittab等各方面,其中任何一個環節出現故障都有可能會導致系統啟動失敗。因此一定要注意做好相關文件的備份工作。 1、MBR扇區故障 MBR引導記錄位…

hcharts生成圖表

借助hcharts插件,可以很方便地在模板頁面中生成圖表。類似插件還有echarts。 補充。。。 轉載于:https://www.cnblogs.com/Forever77/p/11144346.html

css empty_何時使用:empty和:blank CSS偽選擇器

css emptyI made a terrible mistake when I tweeted about :empty and :blank a while ago. I said that :empty wasn’t useful, and :blank is much more useful than :empty.不久前我在Twitter上發布:empty和:blank時,我犯了一個嚴重的錯誤。 我說過:empty沒用&…

浙江大學計算機系統結構,高級計算機體系結構-浙江大學計算機系統結構室.pdf...

高級計算機體系結構-浙江大學計算機系統結構室高級計算機體系結構陳文智 浙江大學計算機學院chenwzzju.edu.cn2014年9月11.1 計算機技術發展綜述(1)?1946年: 在二次世界大戰期間研制成功的世界上第一臺電子計算機ENIAC(Electronic Numerical Intergrator andCalculator)正式對…

PVS 6.1 Configuring Services Failed

好久沒有更新了,嘿嘿,更新一個。 項目中遇到一個問題,PVS安裝到最后一步報錯,如下圖: 環境:PVS 6.1,數據庫是SQL Server 2005 SP4 查了一下文檔,PVS 6.1支持SQL Server 2005 SP4 排查…

javascript動態創建table

function createTable(parentNode,headres,datas){//創建表格var table document.createElement("table");//將表格追加到父容器中parentNode.appendChild(table);//設置table的樣式table.cellSpacing 0;table.cellPadding 0;table.border "1px";//創建…

leetcode 234. 回文鏈表(快慢指針+鏈表倒置)

請判斷一個鏈表是否為回文鏈表。 示例 1: 輸入: 1->2 輸出: false 示例 2: 輸入: 1->2->2->1 輸出: true 代碼 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) { val x; }* }*/…

面試小問題——Object中有哪些常用方法?

一、equals方法 Object類中的equals方法用于檢測一個對象是否等于另外一個對象。Java語言規范要求equals方法具有下面的特性: (1)自反性:對于任何非空引用x,x.equals(x)應該返回true (2)對稱性&…

職稱計算機證書 評中級職稱,軟考證書如何申請評職稱及職稱申請流程的詳細介紹...

我們很多考友參加軟考。比如信息系統項目管理師和系統集成項目管理工程師考試,目的都是為了評職稱,那么在拿到軟考證書后,很多人最關心的一個問題就是關于職稱評聘問題,今天就以軟考證書如何申請評職稱及職稱申請流程的詳細介紹&a…

播客51:媽媽可以編碼的創始人埃里卡·彼得森(Erica Peterson)

On todays episode of the freeCodeCamp.org podcast, Abbey Rennemeyer chats with Erica Peterson, a founder, entrepreneur, and mother of two who lives and works in Pittsburg, Pennsylvania.在freeCodeCamp.org播客的今天節目中,Abbey Rennemeyer與Erica P…

leetcode 1024. 視頻拼接(dp/貪心)

你將會獲得一系列視頻片段,這些片段來自于一項持續時長為 T 秒的體育賽事。這些片段可能有所重疊,也可能長度不一。 視頻片段 clips[i] 都用區間進行表示:開始于 clips[i][0] 并于 clips[i][1] 結束。我們甚至可以對這些片段自由地再剪輯&am…

java實現時鐘方法匯總

import java.awt.Dimension; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask;import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; //第一種比較…

js中注冊標識符流程

注冊分為三個階段:分別是注冊階段,函數處理階段,變量處理階段;這三個階段有先后順序的。(注:這三個階段的名字沒有權威性,是作者為了方便記憶自己起的名字) 注冊階段的特征 1.此時不…

jsp論壇網站模版_網站關鍵詞優化怎么做

說到網站關鍵詞優化,大多企業都很陌生,建站公司說的關鍵詞優化頭頭是道。跟聽天書似的,51商務網小編為大家總結的網站優化方法希望可以幫到大家,首先要說的是做網站優化第一點就是要有耐心,如果很長時間沒有收錄的話&a…

feature功能_利用feature-u V1釋放基于功能的JS開發的強大功能

feature功能This article is an introduction to a new JS library called feature-u, that facilitates feature-based development in your React project.本文是對新的JS庫(稱為feature-u )的介紹,該庫促進了React項目中基于功能的開發 。 Note: On 8/14/2018 f…

虛擬實驗工場大學計算機實驗報告答案,虛擬實驗實驗報告 - 實驗報告 - 書業網.doc...

虛擬實驗實驗報告 - 實驗報告 - 書業網虛擬實驗實驗報告 - 實驗報告 - 書業網篇一:虛擬實驗報告第一章 文獻綜述1.1 丙酮酸脫氫酶概述丙酮酸脫氫酶復合體(Pyruvate Dehydrogenase Complex)催化丙酮酸不可逆的氧化脫羧轉化成乙酰輔酶A。該復合體是糖酵解的關鍵限速酶…

【筆記】一些linux實用函數技巧【原創】

函數返回的是函數的地址 kallsyms_lookup_name() 本文轉自張昺華-sky博客園博客,原文鏈接:http://www.cnblogs.com/sky-heaven/p/5191491.html,如需轉載請自行聯系原作者