[Info]2011年7月の窓口休業予定(Premier/Pro) : 7/5 ALL,7/12 PM, 7/18 ALL

平素より弊社サポート サービスをご愛顧くださいましてありがとうございます。本日は 7 月の弊社指定休業日のお知らせです。 7/5 終日と、12 日の午後、そして海の日の 18 日(祝日)は休業となります。 お急ぎの皆様にはご迷惑をお掛けし恐縮でございますが、何卒ご理解の程お願い申し上げます。 お問い合わせ窓口休業のお知らせ http://support.microsoft.com/gp/holiday/ja [指定休業日] 2011 年 07 月 05 日 (火) 終日 2011 年 07 月 12 日 (火) 午後 2011 年 07 月 18 日 (月) 海の日 [対象のサービス] プレミア サポート サービス プロフェッショナル サポート サービス (※) 上記期間内もプレミアサポート、プロフェッショナルサポートの緊急案件 (Severity A) につきましては対応させていただきます。 (ILM/FIM/WMI/PowerShell/ADSI Support Team – Jul 01,…

0

[閑話休題] Relocation Notice – UikoU ありがとうございました!

今日は、私事ですがひとつご報告させていただきます。 本日 7 月 1 日より、ILM / WMI / ADSI とか色々担当チームというかユニットから、SQL Server サポートチームに新たなチャレンジをする運びになりました。 これまで、私が担当させていただいたお客様、当ブログをご覧いただいていらした皆様、本当にお世話になりました。 思えば、2008 年、Windows Media / DirectX サポートからいきなりまったく触ったことがなかった ADSI、ILM の世界に飛び込んだときはさっぱりとっかかりもなく、こりゃまずい…私首になっちゃうわよとどきどきしたのを今でも鮮やかに思い出します。ところがそこに、ぴろとくんや、おとうさんという卓越した才能を持つ人材がそろって、ここまでくることが出来たとしみじみ思っています。そして何より、サポートをご利用いただいていらっしゃる皆様の声が、私たちにとってどれだけ励みになるか。あの長々としたアンケートに答えてくださっただけでもありがたいのに、おかげさまで本当によい評価をいただくことが出来、まただめな対応の際は、建設的なフィードバックをチームで何度も検討し、方針を修正するなどして進めてきました。本当に、ありがとうございます。 今後は、ILM (など) の担当は、ぴろとくんとおとうさんの二人になります。 このブログはどうするのかと多数お尋ねをいただいていますが、基本ぴろとくんか、お父さんが担当になりますので、消されたりはしません。私も、少し書くと約束したコンテンツがまだあるので、しばらく私も書き込むことになります。それが終わったら、私は次のチャレンジに完全に移行することになるのだと思います。なので、今しばらくお付き合いいただければ幸いです。なお、次のチームもブログは持っていますが、今のところ私が書くというような予定はありません。 今日は、久々に技術的な話がまったくないつまらない、完全に私事の記事で恐縮です。このまま書かないでおくことも考えました。ですが、小さなプロダクトの割りに、たくさんのページビューもおかげさまでいただくなど、私たちにとって、とても励みにさせていただいた皆様に一言お礼を申し上げたく、書かせていただきました。 つたない文章を面白いといってくださった方、Tech Fielders の集いで実際に face to face でお会いできた方、かけがえのない大切な、大切な思い出です! ぴろとくんとお父さんの今後の ILM プロジェクトを、皆さんどうぞ今後ともよろしくお願いいたします。 皆様のますますのご清栄を心より願っております。 ありがとうございました。 Appendix / サイトの PageView コメント : アクセス解析を導入したのは2009年でした。教えてくださった安納さんありがとうございます。 コメント : やっぱりいっぱい書いてた月は強いです。 コメント : 今年です。やっぱりきっちり書いていないと、伸びもちょっとイマイチですね。 ページビューランキング (URL 別)…

0

[PowerShell]Get-AD* 系コマンドレットの検索クエリは既定値 30 分 でタイムアップする(MaxEnumContextExpiration)

皆さんごきげんよう。ういこです。最近 PowerShell の案件も微妙に増えております。SEO 対策をあざとく狙い、今回も逝ってみましょう PowerShell! 今日のお題は、「Active Directory 系コマンドレットは 30 分でタイムアップすることがある」です。 【今日のお題】 Active Directory 系コマンドレットは 30 分でタイムアップすることがある (対象 OS とサービス : Windows Server 2008 R2 / Active Directory Web Service) さて、「夏を待てない」と歌ったのは國生さゆりさん (おニャン子クラブ会員番号は 8 番) ですが、コマンドレット君も、あみんのようにいつまでも待てないことがあるのです。 Active Directory といっても、運用形態は様々。オブジェクト数も数個から数万ということもありえます。たとえば数万のオブジェクトを動かしたり、取得したりするとき、いつまでも時間がかかるような事態はパフォーマンスの観点など、まあ色々よろしくありません。というわけで、既定では get-ad 系コマンドレットは、検索クエリのオープン時間に対し、30 分の制限値を持ちます。この制限値は Active Directory Web サービスの Config ファイルのパラメーターで設定されています。 1. 30 分以上のクエリ要求を行うと SocketException やらいろいろな例外が発生することがある なかなかいやらしいことに、30 分以上経過したときの PowerShell コンソール上に出てくる例外、エラーの発生パターンは一定ではありません。ADException…

0

[PowerShell] HEY YOU WHAT’S YOUR NAME?アクセスしてるのはお前さBABY!アカウント名をセキュリティログから取るぜ!

皆さんごきげんよう。ういこです。気が付いたら 6 月。カエル型宇宙人がいたら肌艶が良くなりそうな気候になっていますが私の肌艶は全然よくなりません。ヒアルロン酸が足りないんでしょうか。さて今日は、『セキュリティ イベントログを PowerShell で取る際「アカウント名」を引っこ抜く方法』をお送りします。 【今日のお題】 オレをすりこぎにしちまった奴 そいつは誰だ 誰なんだ HEY YOU HEY YOU WHAT’S YOUR NAME? — 左とん平「とん平のヘイ・ユウ・ブルース」より (※) 敬称略 …一応、Script 担当チームとして Hey, Scripting Guy! を気取ってみましたが、いきなりやらかした感じですみません。なんか引用とかして見たかったんです。すりこぎとか意味不明すぎますね。すみません。いきなりこのページをご参照頂いた方、当ブログは決して怪しいブログではありませんので、ご安心ください。ちなみに名曲です。 セキュリティ イベントログからアカウント名を取得する – コマンドレット Get-EventLog・Get-WinEvent さて、世迷言は置いておいて、唐突ですが、システム管理者様に取って、必要不可欠ながら手がかかるので愛憎合いまみえることもあるものの一つ…そのなかにイベント ログは入っていらっしゃいませんか?特にセキュリティ イベントログ。監査増やした日にはあっという間にログが流れていくわ、WMI で取ろうとするとバッファサイズ超えることもありえるわ、だけど保存しなきゃ…と、すごく手がかかる子です。その辺の話は、過去熱く語ったことがあります。 [WMIは万能ではない] 大容量イベントログ取得時によくある問題と回避策 ~ Script からも wevtutil.exe が使える ~ http://blogs.technet.com/b/jpilmblg/archive/2011/02/15/wmi-script-wevtutil-exe.aspx イベントログを取るコマンドレットとして、Windows PowerShell には、以下の二つがあります。 ・Get-EventLog 古い Windows XP / Windows Server…

0

[重要なお知らせ] 東日本大震災(東北地方太平洋沖地震): サポート対応について (3/21 23:00 Update – 22 日火曜から全深刻度案件受付再開のお知らせ) Ver.6

重要なお知らせ [2011/03/21 23:00 Update] 平素より弊社製品およびサポートサービスをご愛顧くださいましてありがとうございます。 2011 年 3 月 22 日火曜日 9:30 AM 以降、サポート窓口は Premier / Professional サポートとも、すべての深刻度で受付が再開されます。これまでお急ぎのところ、ご不便をおかけしておりましたことをお詫び申し上げます。 なお引き続き災害復旧事案の対応を優先するため、お電話のお問い合わせの際も引き続き受付窓口でいったんお受けした後、担当エンジニアよりコールバックする対応とさせていただきます。弊社からお客様へのご連絡が遅れる場合もございますが、何卒ご理解のほどお願いいたします。 サポート窓口の対応のアップデートにつきましては、下記の web および本トピックにて随時更新いたします。 http://support.microsoft.com/select/?target=assistance&ln=ja なお、先日の地震発生に伴い、弊社オフィスも輪番停電の対象となっております。停電時のバックアップ体制は別オフィスなどにも構築しておりますが、停電や電話回線事情により、以前にお伝えしている各担当エンジニアの直通電話番号は 3/16 以降一時着信できない場合があります。引き続き、上述の通りコールバックにて対応いたしますので、メールにてご連絡頂ければ幸いです。誠に恐縮ではございますが、諸般事情のご理解を賜りたく、何卒よろしくお願い申し上げます。 ※ 下記にも反映されました。 http://msdn.microsoft.com/ja-jp/default.aspx 最新ニュース http://technet.microsoft.com/ja-jp/default.aspx IT 担当者向け最新情報 http://technet.microsoft.com/ja-jp/today セキュリティ& サポート [2011/3/16 JST 14:30 Update] 東北地方太平洋沖地震についてのマイクロソフトの対応についてのプレスリリースが発表されました。詳細は下記画像をクリック頂くとページに遷移いたします。 なお、twitter アカウント @msdnjp  @technetj にて最新情報などを随時お伝えしていますので、よろしければご利用ください。 ~ ILM / ADSI / WMI / PCNS サポートチーム…

0

[WMIは万能ではない] 大容量イベントログ取得時によくある問題と回避策 ~ Script からも wevtutil.exe が使える ~

皆さんごきげんよう。ういこです。今日はイベントログのとり方でよくある問題とその対処案についてのお話です。 運用管理をしていてあるある!なニーズとして、イベントログを定期的に保存して、出来ればアーカイブして保存しておきたいなんてことがあると思います。しかもバッチ処理にして、タスク スケジューラなんかで人間様がいなくてもサーバ内の小人さん動かして定期的に保存させちゃおうとか。そんなニーズ、ありませんか。 では、全国津々浦々のイベントログ大好き管理者様はどのようにしてイベントログの取得をされていますか。問い合わせに来るものを見る限りでは、WMI の Win32_NTLogEvent 、Win32_NTEventLog 、Win32_NTEventLogFile とか、その辺を使っていらっしゃる方が多い印象です。それも、VBScript が圧倒的に多く、PowerShell による対処などは殆どお問い合わせとしてあがってきていません。ただ、私は開発サポート部門ですので、OS の基盤(プラットフォーム)サポート部門では違うのかもしれませんね。 ではなぜ WMI が多く使われているのか。非常にカンタンに使うことが出来、かつ VBScript からも .NET Framework ベースのプログラムからもアンマネージ (C++) からも呼び出しやすいという、手軽さが訴求しているのだと思います。しかし、以前から WMI についてはカンタンな反面、RPC 、DCOM などに依存している、内部処理が複雑で遅い、重いといった不便な点についてご紹介してきたように、やはりすべていいことずくめというわけにはいきません。 特に問題なのは、WMI は内部でデータを扱うために持っている領域のサイズが少なく、ある程度サイズ拡張は出来るものの、数ギガバイトといった大容量のデータを取り扱う際にエラーが発生することが多いという点です。イベントログは扱うデータ量が半端なく大きいことが少なくないため、この「内部データ領域足りません問題」に直面することが非常に多いシナリオです。 WMI によるイベントログ保存時に発生しやすい問題 監査ログなどを仕掛けている場合、セキュリティ イベントログの肥大化が問題になることが多くあると思います。こうしたログに対し、WMI でイベントを取得しようとして以下のエラーが発生することが多くあります。また、これらのエラーは必ず発生するのではなく、WBEM_E_QUOTA_VIOLATION が発生したと思えば、次に取得処理を実行すると今度は WBEM_E_OUT_OF_MEMORY が発生するなど、揺らぎが良く見られます。 0x8004106c WBEM_E_QUOTA_VIOLATION    0x80041006 WBEM_E_OUT_OF_MEMORY 0x80041032 WBEM_E_CALL_CANCELLED (※ まれに 0x80041001 WBEM_E_FAILED という形で異常終了することもあり) 調整方法としては、WQL 文で取得してくるイベントログの時間帯を指定することで、一回に扱うデータサイズを減らすということしかありません。ただ、時間を指定しても、その時間帯にたまたまアクセスが集中し、ファイル監査のログが大量発生した場合などは、データサイズがスパイクするため結果としてエラーが発生する可能性があることは避けられません。 なぜこうしたエラーが起きるのか 0x8004106C (WBEM_E_QUOTA_VIOLATION) は、WMI サービスにより消費されるメモリが割り当てられたメモリの制限に達したことを意味します。また、このエラーが発生する状況下では、同じクエリを同じデータストアに対して実施した場合であってもリソースを多く消費しシステムが不安定になることを防ぐために処理をキャンセルすることがあり、その場合に 0x80041032…

0

[WinRM/WinRS] 簡単リモート管理!WMI の代わりに使ってみませんか?

皆さんごきげんよう。ういこです。最近森ガールの後継の山ガールが流行ってるらしいですね。私もついカッとなってファーベストを試着したら山狩り上等なマタギ感溢れるコーデになってしまいそして僕は途方にくれるな秋ですが皆さま如何お過ごしでしょうか。 さて、今日は WinRM についてです。あんまり情報が無いので、おいしそうに見えませんが、毒キノコじゃないですよ。WinRM は食べて美味しいものですよ!食べず嫌いはもったいないです。というわけで、今日は本当に基本の基本になっちゃいますが、簡単な使い方を御紹介します。 能書き WinRM とは…というのを語ってるとすごく難しくて、色々語られつくされているのですがまあ要は DCOM 使わないで HTTP/HTTPS などでリモートコンピュータやらの管理ができる便利なインターフェースと思ってください。興味をもたれた方は後述の technet コンテンツなどご参照頂ければと思います。管理系インターフェースとしては、WMI が随分人口に膾炙している感がありますが、WinRM も基本同じような目的のものなので、ほとんど同じことが出来ます。むしろ、もっと出来ることあるかも。 ① WinRM のバージョンを見てみよう 2010 年 10 月 27 日現在、WinRM のバージョンは二つありますです。 ・Windows Vista / Windows Server 2008 … Version 1.x ・Windows 7 / Windows Server 2008 R2 … Version 2.x 実は、それぞれ微妙に違います。例えば、既定のポート番号が違ったりします。そこで、まずあなたの環境と、リモートでこっそりいじりまわしてやりたい環境と双方の WinRM のバージョンを確認してみたいと思います。 ローカルで実行してみる 1. PowerShell を管理者権限で実行します。 2. WinRM id…

0

[WinRM] トラブルシュートはエラーとイベントビューアから確認を開始するべし

皆さんごきげんよう。ういこです。今日は「WinRM でトラブル発生したときは、表示されたエラーと、イベントビューアをじっくり見よう!」をお送りします。 WinRM というのは、"リモートコンピュータを管理を可能にする" 機構だと Web でご覧になった方もいらっしゃるかと思います。SOAP ベースとか何とか色々難しいことが良く書いてありますが、あの弊社の誇る素敵エバンジェリストの安納さんのブログにもございますように、要は HTTP (含む HTTPS) で WMI が使えちゃうぞーというステキテクノロジです。はて、WMI はリモート コンピュータを対象にしても使えるし、何をいまさらジロー?と思うそこのあなた!いえいえ、何がいいって、DCOM 使わなくていいんです。DCOM。 以前の記事にもちらっと触れたことがありますが、WMI は DCOM を基盤として動作しますので、動作前提として DCOM がきちんと構成されている必要があります。DCOM はさらに RPC を基盤として動作します。よって、WMI でリモート コンピュータを管理したいというときは、以下の三つが動作する必要があるのです。 ・RPC ・DCOM ・WMI 当然、そこにはリモートコンピュータへのアクセス権の他、RPC、DCOM が使うポートが外部から使える状態になっていなくてはいけません。 会社のイントラネットで使うならまだしも、例えばインターネット越しに操作してほしい!という端末で、RPC / DCOM などのポート解放は…怖いです。そうしたことに対する一つの答えとして、WinRM があります。WinRM は HTTP / HTTPS で WMI の動作が出来てしまうので、セキュリティ上の懸念が随分楽になります。 さて、そんないいことずくめに思える WinRM ですが、やっぱりなんか問題が起きた時は結構面倒です。 WMI もそうですが、使うに易しいからと言って、トラブルシュートや仕組みも易しいわけではないということを常に考える必要があります。ここを誤解すると、保守などのフェーズでとんでもないことになります。 …と、脅かしまくりですが、WinRM、どうも問題発生時の状況を把握するのが WMI と比べるとずっと楽になっているようです。 とにかく、失敗時にコンソールに出るメッセージも詳細だし、イベントログに出る情報が判りやすいこと。 WMI…

0

[Info] VBScript / ADO RecordSet : 時刻を文字列として扱う際 “0:00:00” の場合は文字列が Drop されてしまう

本日は VBScript で時刻を扱う処理を実施する際、システム時刻の 0 時 0 分 0 秒に実行すると、日付は取れるものの時刻が返却されない現象が発生するという事象についてご報告申し上げます。 問題の概要 VBScript (WScript/CScript) の時刻を扱う処理を実施したタイミングがシステム時刻の 0 時 0 分 0 秒である場合、日付は取れるものの時刻は取り扱われません。 この現象は製品の設計上の動作であり、障害ではありません。またこれは時刻取扱を行う関数動作に起因するものではなく、Scripting Runtime 内部で時刻の戻り値を文字列に変換する部分が原因です。 再現コードおよび再現例 Wscript.Echo Now ■00:00:00の場合(現象発生時) 2010/9/6 ■00:00:01の場合(正常時) 2010/9/6 00:00:01 原因 例えばコンソール に出力する、ファイルに出力するなどの動作を行う場合などは、Scripting Runtime 内部で時刻データを文字列に変換してから値を引き渡す動作になります。この際 Scripting Runtime 側での内部では結果的に VarBstrFromDate() API を使用して "時間:分:秒(hh:mm:ss)" に変換いたします。この動作の際、内部実装では、明示的に時間:分:秒がすべて 0 の場合は、これらを文字列として変換しない処理となります。 日付型のデータは内部的には浮動小数点型 (日付が整数部で時刻が小数部) で扱われますが、時刻が 0:00:00 のときは xxx.0 = xxx というように小数部を省略した形式で扱えることもあり、String 型への変換時には…

0

[WMI基礎] トラブルシュートの基礎知識 (4)/n : アクセス拒否発生!WMIPrvSEの実行ユーザの権限を確認しよう!

皆さんごきげんよう。ういこです。 今日は WMI のトラブルシュートの続き、”アクセス拒否系 – WMI プロバイダの実行権限は適切に割り当てられているか?” をお送りします。 WMI のアクセス拒否系でよくひっかかるのが、WMI をコールしたプロセスの実行権限が適切なはずなのに、なぜかアクセス拒否が返るというところです。実は、このとき WMI の呼び出し側の他、その先の WMI のプロバイダ ホストと呼ばれるプロセス実行アカウントの権限も同時に考慮する必要があります。 以下、これまでのあらすじです。 ************************************************ [WMI基礎] トラブルシュートの基礎知識 (1)/n : WMI の動作基盤のテストから始めよう http://blogs.technet.com/jpilmblg/archive/2010/04/04/wmi-1-n-wmi.aspx [WMI基礎] トラブルシュートの基礎知識 (2)/n : WMI 詳細ログと WMIDiag ダイジェスト http://blogs.technet.com/jpilmblg/archive/2010/04/05/wmi-2-n-wmi-wmidiag.aspx [WMI基礎] トラブルシュートの基礎知識 (3)/n : DCOM の既定の構成であるか確認し、動作するか確かめてみよう http://blogs.technet.com/jpilmblg/archive/2010/04/10/wmi-3-n-dcom.aspx ************************************************ WMI を使用すると、WMIPrvSE.exe というプロセスが WMI を呼び出したプロセスとは別に立ち上がります。この WMIPrvSE は、”WMI プロバイダ ホスト” とよばれ、実際の WMI の処理の仲介を行い、その先の実際のシステムからの情報取得などを行うモジュールとやり取りなどを行います。  一般的には、WMI…

0