• 春はADSIの季節です~ユーザー管理からプロビジョニングへ

    ※一部不適切な表現がございましたので修正いたしました

    高添さんのblogを見ていてふと思ったこと.....桜きれいだなぁ、そういえば弘前は今頃満開かなぁ、今年も花見ができなかったなぁ。

    唐突ですがここで問題です。

    「春は・・・の季節です」の・・・に言葉を入れてください

    「お別れ(といえばY.Kかなぁ。Nもありか?)」「出会い」「卒業(と言えばY.S。これは譲れない。)」「入学」「新入社員」「満開の桜の下で缶ビール」「新しいマザーボード」「あ、メモリも追加しておこうかな」「まてよ、もうベイに空きがないな」「せっかくだからケースもいっとくか」「「だめだとても持ちきれない。カートを買おう」「うーん、Tまで行くのめんどうだな。」「これで一通りそろったかな」「な、なにーUSBワンセグチューナーだって!?」「うわーCのほうが安いじゃん」「ふぅ、腹減った。ちょっと歩くけどHでも行くか」と、いろいろおありかと思いますがが、わたしはズバリADSI(Active Directory Service Interfaces )です。それ以外、一切思いつきません

    春は、企業ならば人事異動と新入社員、大学ならば新入生と卒業生を大量に処理する季節です。

    私が前職で担当していた文教市場の場合、3月末から4月上旬にかけて大量のユーザー登録作業が発生します。少ない大学では数百人程度ですが、大規模な大学になると「ひと春」の処理件数は10000人を超えます。この大量の入学生を、できる限り短時間に、そして正しくActive Directoryに投入するには、とても10000回の手作業では追いつきません。そこで頼りになるのが、ADSIを使用したスクリプティングです。

    まだActive Directoryが無かったNT4の時代は net user コマンドリソースキットaddusers コマンド を使用したバッチファイルで十分対応できました。ホームディレクトリを作成する必要があればmd コマンド、アクセス権を設定するには caclsコマンド、共有を作成するには、net share コマンドか rmtshare (これもリソキ)を使えば何とでもなりました。

    NT4も晩年になると、より高度なマネジメントを実現することを目指して、WSH(Windows Scripting Host ← 今は Windows Script Host と言ってますね)がリリースされました。同時に、Winodws NT 4.0用ADSIもリリースされ、CSVファイルをコンバートしてからADSIでユーザー登録をしたりと、多彩な芸当が可能になりました。それでも従来のやり方を変えてまでスクリプトを使用するシチューエーションというのは、さほど無かったような気がします。

    ※ご参考 
    ご存知の方も多いと思いますが、ADSIにはNT4でサポートされていた従来のWindows NTディレクトリサービスにアクセスするために、WinNTプロバイダというインターフェースが実装されています。Active Directoryに対してもWinNTプロバイダを使用することが可能です。実はWinNTプロバイダを使用したほうが効率が良いこともあり、状況によって使い分けると便利です。例として、Hey, Scripting Guy! をごらんください。

    WSH+ADSIのありがたみを本当に実感したのは、やはりActive Directoryがリリースされてからです。Active Directoryが当たり前のように使われるようになった現在は、ADSI無しにユーザー管理を行うことはもはや不可能と言っても過言ではありません。もちろん、市販のGUIを使用すればある程度のことは可能です。しかしながら、ユーザー管理業務の100%をカバーできるかと言えば難しいところです。

    私は10年以上、お客様に導入されているWindowsのユーザー管理を自らの手で行ってきましたが、そこで得られた1つの結論があります。それは、

    完全に汎用的なユーザー管理システムはありえない!
    (多分ありえないと思う。ありえないんじゃないかな。ま、ちょっと覚悟はしておけ.....。)

    ということです。だたし、汎用化できる部分はたくさんあります。汎用化できる部分とできない部分を分け、できない部分をパラメタ化することが運用管理業務削減の鍵になるわけですが、ひとまずそのお話はおいときます。

    なぜありえないのか。理由(というか事情)はたくさんありますが、大項目で抽出してみます。

    1. 入力データが違う 
    2. Active Directoryで管理する属性の種類が違う
    3. Active Directoryでの情報の持ち方や形式が違う
    4. 情報や状態の遷移ルールが違う
    5. 情報の流れが違う

    大きく分けるとこんなところでしょうか。

    このような「事情」を考慮せず、ただ単にユーザーを登録し、ホームディレクトリを作成し、アクセス権を設定しただけでは、とても使える状態とはいえません。「事情」に答えるためには、ADSIを駆使し、細かな制御スクリプトをたくさん作りこむ必要があります。その中には、本当に1回しか使わない、作った本人でさえも忘れてしまうようのなものもあります。

    では、今後もこうした現場での手作りを永遠に続けていかなければならないの?という絶望感に似たものがこみ上げてきますよね。やってられませんよね。正直。

    これは私が現場で感じたことなのですが、ここ5年間の傾向として、上記の4,5が複雑になりつつあります。いや、ちょっと違いますね。正確書きますと、上記の4,5をActive Directoryに任せようとする場面が多くなってきました。もっとぶっちゃけてしまうと、上記の4,5を「Active Directoryに任せてもいいんじゃない?ディレクトリサービスとしてもよくできているし」と考える方が増えてきました。

    これは、「ADは単に認証だけしてくれればいいよ」と考えていた情報部門の皆さんが、次第にActive Directoryの信頼性を評価し、システムの中心に置こうとしてくださっている、ということだと思います。

    ITPROのブログを以前よりごらんになっている方には、もしかしたら「なにをいまさら」と思われるかもしれませんが、従来「ユーザー管理」と呼ばれていた業務は、数年前から「プロビジョニング」という言葉で置き換えられるようになりました。 企業や個人によってプロビジョニングの定義はまちまちだったりするのですが、おおむね、「ユーザーとそのリソースを適切なタイミングで適切に配置するとともに、ユーザーのライフサイクルを適切に遷移させる」ことを意味しています。

    プロビジョニングなんて、言われてみれば当たり前のことですし、多くの企業や大学では実現できていると思います。では、なぜ、その当たり前のことが今更注目されているのか....それは多くの場合、それを行っていたのは「人」だからです。

    私も「人」なので良く知っていますが、「人」はミスをしますし、病気で会社を休みますし、だんなさんや奥さんと喧嘩して気分が悪いこともあります。2007年問題が良く取り上げられますが、社内のルールや事情を熟知した団塊の世代が会社を辞めてしまったら、もしかしたら、まったく回らなくなる企業もあるかもしれません。2008年には日本版SOX法も施行されますから、「人がやることだし」という言い訳がしずらい世の中にもなります。

    人の作業ゆえに発生してしまう信頼性の低下を如何にして回避し、一定レベルの品質を維持するか...ITに任せられる部分はすっぱり任せてしまい、人はそれを制御するのみとする...というのが、今のところベストな選択であると考えられます.....が、これ、口では簡単に言いますが、難しいんですよね、正直なところ。
    ITは言われたことはきっちりやりますし、おおむねコストダウンが可能ですが、、イレギュラーには弱いやつです。どうしても人やルールがITに歩み寄らないとなりません。つまり、IT化により、すっぱりあきらめざるを得ないビジネスロジックが発生します。これは確実に発生します。

    人からITに業務を移管するにあたり、やらねばならないこと、まずは従来のユーザー管理業務をモデリングすることです。要らない部分と要る部分にわけ、頻度の少ないものはひとまず脇においときましょう。でもって、汎用化できる部分とできない部分に分けます。汎用化できる部分とは、すなわちパッケージが適用できる部分です。汎用化できない部分は、独自のプログラムを作りこまなければならない部��ですね。コストを下げるには、汎用部分の面積を広くすることが必要です。

    すでにご存知かもしれませんが、マイクロソフトが提供するライフサイクル管理製品としてMIIS(Microsoft Identity Integration Server)というものがあります。これは、もうすこしでILM(Identity Lifecycle Manager) 2007 という製品に進化します。本製品により、ユーザーやリソースの管理に関わるコスト、リスク、煩雑さは軽減することが可能ですが、どの程度軽減できるかは、事前の業務モデルの分析にかかっています。この手の製品は、少なからず作りこみが発生しますし、ノープランでの導入は禁物です。

    またまた長くなりすぎました...すみません。
    今後、できれば、ILMの効果的な使い方をご紹介できればと考えています。

    今日はこのへんで...

  • はじめてのIT Pro道場 BDD編に参加して思ったこと

    本日、はじめてエバンジェリストとしてIT Pro道場に参加しました...といっても後ろで勉強させてもらっただけなのですが...お恥ずかしい

    本日のテーマは BDD、Bussiness Desktop Deployment でした。

    13時に開始して、途中休憩を入れながら17時まで延々とプレゼンとデモンストレーションの繰り返し...これは大変な部署に配属されたものだと泣きそうになりました(笑)。長坂さんをはじめ、エバの皆さんの体力に感動を覚えました。おまけに長坂さんは、「1年以上更新していないblogを更新します!」とお客様に宣言されていましたので、まだまだ体力がありあまって困っているということなのでしょう。すごいです。そんな大人になりたいと思う今日この頃です。

    で、BDDです...ここ2年、パッケージ開発ばかりしていたせいで、展開周りの話に疎かったのですが、久しぶりのDeploymentのお話は非常にエキサイティングでした。

    ....思えば、Win3.0に初めて出会ったのが前職場への入社時でしたから、もう16年前になります。まだまだクライアントOSとしては不十分だった「あいつ」が、いつの間にか当たり前のように使われるようになり、しかもですよ、「大量のWINの展開が大変だから自動でできるようにして!」なんてことになるとは....WIN3.1のころも展開ツールはありましたが、所詮は20MB のHDDに入る程度ですから、XCOPYで十分でした。iniファイルを書き換えれば環境変更もできましたし、デスクトップのカスタマイズなんて...壁紙程度でしたね。SEがみんなで知恵を出し合い、なんとか楽をしようとバッチを作りこんでいたという、古きよき時代です。へたしたら、ISDN経由で展開してましたから(笑)。

    衝撃的だったのはZAKの登場です。なんといっても、「Zero Administration Kit」ですから、Windowsの管理に悩んでいた私は即座に飛びつきました。徹夜でDOSのネットワークブートディスクを作成し、Unattend.txtを書いて、Sysdiffで差分を取って、さぁ、無人セットアップだ!と意気ごんだところ、セットアップの最後でコマンドパスが間違えていて実行に失敗....あのときの絶望感は今でも忘れられません。
    WOL(Wakeup On Lan)なんてものも当たり前のように使えますから、自宅からVPNで大学のネットワークに入り込み、ターミナルサービスでマスタークライアントの環境を修正し、ネットワークブートで環境を吸い上げ、ほかのクライアントに展開という離れ業も、簡単に行えます。

    そんな展開ソリューションが(おそらく)一般的である中で、なぜBDDなのか... きっと皆さんは疑問だと思います。

    実を言えば、そんな便利なイメージ配信機能も、穴が無いわけではないのです。
    それは、マスターイメージの品質の維持です。
    新しい障害修正がリリースされたり、バージョンアップ版がリリースされたり、ソフトウェアの細かな修正の頻度は年々短くなってきています。突如リリースされる「重要な更新」を、次回のリプレイスまで放っておくことなんて....なかなかできないですよね。ただでさえ、管理責任を問われやすい世の中になってしまいましたから、パッチを当てないばかりに大切なファイルが漏れてしまったなんてことを考えると、担当SEの心中も穏やかじゃありません。

    じゃぁ、修正パッチがリリースされるたびにマスターイメージを作り直して2000台のPCに展開しなおすのか?....そんなことは物理的に無理です。想像もしたくありません。

    そういった状況を考えると、最も理想的なのは、個々のコンポーネント単位にイメージが管理されている状態なのです。必要に応じて差分だけ適用するという方式のほうが、本当は細かな修正に対応しやすいのです。

    BDDは、そうした理想的なマスターイメージの管理ソリューションを提供してくれます。SMSと連携することで、より緻密に展開スケジュールを管理することが可能です。

    問題は、世の中への浸透ですね....。利用者だけでなく、ソフトウェアベンダー、そしてフリーソフトの開発者をも巻き込んでいかなければなりませんし、それが我々エバンジェリストの責任だと思っています。

    ぜひ皆さん、一度道場に参加してみてください。そして、BDDのコンセプトに触れてください。
    特に、ZAWやZAKを知っている方!あまりにも便利になったWindows Deployment Solutionにびっくりしていただけるはずです。
    そして、懇親会で昔を懐かしみつつ、若いころ苦労させられた愚痴でもこぼしながら飲みましょう!

    長くなりましてすみません。

  • はじめまして 安納(あんのう)です

    みなさん、はじめまして。
    38歳にして新人の安納(あんのう)と申します。

    4月21日付でIT PRO エバンジェリズムグループに配属されました。
    すでにBLOGが公開されている、長坂、奥主、田辺、高添と同じチームになります。
    どうぞよろしくお願いいたします。

    元の職場ではフィールドSE兼パッケージ開発を担当していましたので、フィールドSEの皆さんが欲しい情報は把握しているつもりです。
    まだまだエバンジェリストとしては半人前ですが、フレッシュな視点(?)での情報発信を心がけたいと思います。

    皆さんのお仕事の一助となれるよう頑張りますので、どうぞよろしくお願いいたします。