Powershell によるAD ユーザーの一括登録

Powershell によるAD ユーザーの一括登録 (改訂版)

<準備>
・WindowsServer2008R2
・「Active Directory サービス」(役割)のインストール、設定
・「Windows Powershell用のActive Directoryモジュール」(機能)のインストール
・「PowerShell」のヴァージョンアップ ( V.2 —> V.4.0 )
1)Microsoft Download Centerから「.Net Framework 4.5以降」を入手しインストール
        (Windows Update有効の場合はインストール済みか?)
2)同上から「Windows Management Framework 4.0」を入手、インストール

<手順>
・「UserData.txt」ファイルの設置 (例:C:\直下に)
    ——C:\UserData.txt———
    Name,UserPrincipalName,SamAccountName,Path,Description
    Yoshi Oshima,Yoshi_Oshima@tcoffice.virtual,Yoshi_Oshima,”CN=Users,DC=tcoffice,DC=virtual”,練習テスト用
    Kaku Kobayashi,Kaku_Kobayashi@tcoffice.virtual,Kaku_Kobayashi,”CN=Users,DC=tcoffice,DC=virtual”,練習テスト用
    Sari Suzuki,Sari_Suzuki@tcoffice.virtual,Sari_Suzuki,”CN=Users,DC=tcoffice,DC=virtual”,練習テスト用
    Misa Shimazoe,Misa_Shimazoe@tcoffice.virtual,Misa_SHimazoe,”CN=Users,DC=tcoffice,DC=virtual”,練習テスト用
    ……
    …..
・「スタート」→「管理ツール」→「Windows Powershell用のActive Directoryモジュール」の起動

  ・コマンドレット実行権限の確認
    PS> Get-ExecutionPolicy // Restricted の場合に RemoteSigned に変更する
PS> Set-ExecutionPolicy RemoteSigned
  
  ・Csvファイルをインポートし、ADユーザ追加のコマンドレットの実行
——–PS—————–
PS >Import-Csv C:\UserData.txt | New-ADUser `
>>-AccountPassword ( ConvertTo-SecureString ‘P@ssw0rd’ -AsPlainText -Force ) `
>>-Enabled $true
>>
 
 ・「練習テスト用」ユーザを抽出し、ADユーザ設定のコマンドレットの実行
PS > Get-ADUser -Filter ‘Description -eq “練習テスト用” | Set-ADUser `
>>-ChangePasswordAtLogon $true
>>

以上。—————–

めざすスキル

 今現在、社内で使うPCのセットアップを中心にした「インフラ・チーム」にいます。ネットワーク補助の肩書きも頂いて、ネットワーク周りのサブとしてもいろいろやらせてもらっています。フロア的に研修部門と同居しているので、2カ月おきに入ってくる新入社員や外部研修生に混ざって毎日を過ごしている感じです。
 そんなわけですぐ隣で行われているエンジニア研修を毎日見ているのですが、入ってくる段階ではほとんどPCのPの字も知らない女子などもかなりな数見受けるのに、そのほとんどがわずか2ヶ月でプログラミングの現場にしっかりと配属されていくのです。若い人達の理解力、対応力の早いのは納得するがそれにしてもである。
 その隣で口をあけてあっけにとられている自分は、そんな優秀な若者たちとは違うので、高望みせずに地道にスキルアップを目指そうと思うのだが、入社から2年が過ぎ、仕事上必要なスキルはしっかり習得していかなくてはならず、芸術系のアナログな古い頭のデジタル化に挑戦をしています。
ネットワークの補助としてはWindowsを中心にしたネットワークやサーバーの知識、技術は避けて通れないものだが、幸運にも最初からサーバーやネットワークの構築、Active Directoryや、データベースなどなど、そこそこ触らせてもらい経験させてもらっています。
 最近はやっと自分がどこにいて、どのくらいのスキルがあるのかほんの少しだが見えるようになってきた気がします。もちろんまだまだ初心者の域を抜けきっていない状況を考えると、ネットワーク、サーバ関係のスキルはもちろんですが、それらを支える基礎として、ある程度しっかりしたプログラミングの力が必要だと痛感しています。そこで今年に入ってから、以前にLinuxで自宅サーバを立てて遊んでいた頃のコマンドや、かじっただけだったPHPを勉強しなおしたり、さらに今は、JAVAを一から何とか身に付けようと必死にもがいています。
 言語のアルゴリズムや概念はゆっくりかんで含めるように頭に入れていくとそれなりに分かってくるが、何重にも重なった構文の中で複雑な演算を組み合わせてゆく数学的な知識や発想力が徹底的に足りない事がわかり、本当に今の自分の頭ではついて行けず、15分ぐらいごとに頭を解放して、やり直し、考え直しの連続です。
 というわけで一念発起して再開したこのブログではプログラミング言語習得の七点八倒、随時メモのようなものをアップしてゆこうと思います。