ツールボックスIT プロフェッショナル向けの新製品

Greg Steen

このコラムに記載されている見解は、執筆者の個人的な見解であり、必ずしもマイクロソフトの見解を反映するものではありません。すべての価格は 2008 年 9 月 11 日時点のものであり、変更される可能性があります。

グラフィカルにデータをマップする

MapForce

www.altova.com/products/mapforce/data_mapping.html

最近のアプリケーション スタックでは相互接続や内部接続が増加し続けています。このような傾向の中でおそらくあまり喜ばしくない点の 1 つは、こうしたアプリケーション間でなんらかの方法を用いてデータを移動する必要があることです。こうしたアプリケーション間のマッピングが単純に一対一であることは非常に珍しいため、多くの場合、この情報を互換性のある形式で 1 つの場所から別の場所に移動するためになんらかの ETL (抽出、変換、読み込み) 処理をデザインするのに時間を費やすことになります。Altova の MapForce は、この処理を合理化し、大幅に容易にするのに役立ちます。

このツールでは、マウスを使用してグラフィカルにデータ変換処理をマップすることができます。ソースやターゲットとなるデータ ソースには、テキストファイルや CSV ファイル、XML、データベース、電子データ交換 (EDI) データ、Microsoft Office Excel 2007 データを使用することができます。また、Web サービスを使用することもできます。MapForce がソースとして選択できるデータベースには、SQL Server、DB2、Oracle、Sybase、MySQL、および Microsoft Office Access があるので、ほぼすべてのデータベースに接続することができます。

まず、データ ソースとターゲットを作成し、続いて入力フィールドを出力フィールドにマップします。もちろん、単純な一対一のマッピングやすべての行形式のマッピングを使用しない場合もあるでしょうから、MapForce には、データをフィルタ処理するためのデータ処理関数も多数用意されています。MapForce では、ブール ロジック、文字列処理、数値計算などに基づいた条件付きステートメントを構築および使用して、データを選別することができます。

MapForce に付属する関数ライブラリを使用すると、データの変換に役立つ、すぐに使用できる関数が読み込まれます。たとえば、算術関数を使用して、最小値や最大値、平均値、および計算値を取得することができます。データベースの NULL 値を空文字列に変換したり、グリニッジ標準時を東部標準時に変換したり、文字列内で特定のパターンに一致するものを検索したりすることもできます。また、MapForce を使用すると、新しい関数ライブラリを作成して追加することもできます。

マッピングを構成したら、[Output] (出力) タブをクリックしてすぐに結果を確認することができます (これは、データが適切にマップされていることをすぐに確認するのに役立ちます)。

UI を使いこなすには、ある程度の慣れが必要です。しかし、MapForce には、複雑な変換作業用の [Overview] (概要) ペインなど、ユーザーの適応を手助けする機能が用意されています。このペインでは、マップ上でユーザーが見ている箇所を縮小表示することができます。これは、処理内の領域間を移動するのに便利です。

最新エディションのもう 1 つの優れた特色は、Excel 2007 の Office Open XML (OOXML) 形式が直接のデータ ソースとしてサポートされている点です。そのため、ODBC ドライバや同様のコンポーネントは必要ありません。また、Web サービスのサポートも大幅に強化されており、Web メソッドをデータ ソースとして使用したり、ターゲットとして使用したり、データを変換するために使用したりすることができます。この特色を利用するために必要なのは、サービス、サービスの場所、およびサービスの資格情報を Web サービス記述言語 (WSDL) で定義することだけです。また、MapForce は、SOAP 1.1 仕様と SOAP 1.2 仕様の両方を完全にサポートすることができます。

データベース マッピングに関しては、組み込みのクエリ ツールを使用して、必要なデータを選択する SQL ステートメントを構築することができます。MapForce には、このような SQL ステートメントを構築する際に利用できる入力候補提供機能も用意されています。このクエリ ツールでは、主キー制約や外部キー制約を定義したり、ID の生成をデータベースで行わない方がよい場合に ID の生成をすべて MapForce によって行うようにしたりすることもできます。

私が開発者として気に入っている MapForce の特色の 1 つは、データ変換を実行するプログラム コードが含まれる Visual Studio 2008 プロジェクトを生成できることです。MapForce からコードを生成するよりもコードから MapForce のグラフィックを生成する方がよければ、Visual Studio 用のプラグインをダウンロードできます。Visual Studio 用に C# のコードを生成できるだけでなく、Java や C++ のコードも生成できます。

このソフトウェアの購入について言えば、Web サービス マッピングのサポート、動的なテキスト ファイル パーサーである FlexText、および OOXML のサポートが不要な場合は、低価格バージョンである Professional Edition を選ぶとよいでしょう。これよりさらに機能が制限された Standard Edition も入手可能です。

価格 : Enterprise Edition は 1,190 ドル、Professional Edition は 599 ドル、Standard Edition は 299 ドル

steen.tool.altova.gif

Altova MapForce を使用するとグラフィカルにデータをマップすることができる (画像をクリックすると拡大表示されます)

正規表現を作成および管理する

Expresso

www.ultrapico.com/expresso.htm

開発者、システム管理者、ネットワークの専門家、QA アナリストのいずれに該当する方でも、おそらく、なんらかのログ ファイルを解析するためにパターン化された情報を探した経験がおありでしょう。正規表現は、こうしたログ内で探している情報を的確に見つけるための非常に強力な方法となる場合があります。Windows PowerShell などのアプリケーションは非常に便利なツールです。しかし、正規表現の構造は難解そうだったり長ったらしかったりすることがあるので、こうしたツールを使用しても、望みどおりの表現を構築するのが非常に難しい場合があります。身に覚えがあるとしたら、Ultrapico の Expresso を使ってみることをご検討ください。このツールを使用すると、正規表現の作成、テスト、および再利用が大幅に簡単になります。

Expresso のメイン UI には、Test mode (テスト モード)、Design mode (デザイン モード)、Expression Library (表現ライブラリ) ビューという、開発用の 3 つの基本的なビューが用意されています。Test mode (テスト モード) には、4 つのペインにわたる機能が用意されています。[Regular Expression] (正規表現) ペインは、探しているデータの検索や置換を行うために実際に表現を編集する場所です。[Sample Text] (サンプル テキスト) ペインには、正規表現の実行対象となるテキストが表示されます。このペインに適切なサンプルを貼り付けます。[Regex Analyzer] (正規表現アナライザ) ペインでは、作成した正規表現の構成要素が非常にわかりやすく階層化されたツリー ビューで表示され、正規表現の各構成要素がどのように機能するかを確認するのに役立ちます。そして、ご想像のとおり、[Results] (結果) ペインには、実行した処理の結果が表示されます。

Test mode (テスト モード) では、作成した正規表現を使用して実行できる処理が 6 つあります。full match (完全一致)、partial match (部分一致)、match exclusion (除外後の内容と一致)、replacement (置換)、validation (検証)、および split (分割) です。full match (完全一致) では、作成した正規表現がサンプル テキストに対して実行されます。一方、partial match (部分一致) や match exclusion (除外後の内容と一致) では、正規表現内のユーザーが選択した部分と一致するテキストが検索されたり、正規表現からその部分を除外したものと一致するテキストが検索されたりして、作成した正規表現の構成要素が適切に機能していることを確認することができます。ツリー ビューを使用して、自動的に特定の部分に移動し、その部分を強調表示することができます。replacement (置換) と split (分割) では、その名のとおりの処理が行われます。validation (検証) では、アイコンを使用して、サンプル テキスト内のどの行に一致が見つかるかが示されます。

Design mode (デザイン モード) には、[Regex Analyzer] (正規表現アナライザ) ペインと [Regular Expression] (正規表現) ペインが用意されており、置換テキストを入力する場所も用意されています (作業時には、Test mode (テスト モード) と Design mode (デザイン モード) の切り替えを何度も行うことになるでしょう)。また、優れたデザイナ ツールボックスも用意されており、これを使用すると、単純な GUI 操作で複雑な表現を作り上げることができます。文字、グループ、位置、繰り返し、および代替テキストを処理するブロックを挿入したり、ASCII 文字用、Unicode 文字用、および制御コード用のヘルパを探したりすることができます。

Expression Library (表現ライブラリ) では、プロジェクトの表現の履歴が示されます。このアプリケーションはプロジェクト ベースなので、実行中の作業や頻繁に使用するワークスペースを保存して、必要なときにそれをまた使用することができます。このアプリケーションには、組み込みの包括的な正規表現ライブラリ関数など、正規表現の作成を始める際に役立ついくつものサンプル プロジェクトも含まれています。既定のライブラリは、ユーザーがニーズに合わせてカスタマイズできる表現と共に読み込まれます。ユーザーは、表現を追加 (および削除) したり、独自のライブラリを作成したりすることができます。

いくつか同じ表現を繰り返し使用する場合は、そのような表現の順番を先頭に移動します。ライブラリ内の表現をダブルクリックすると、その表現をすぐにワークスペースに適用できるようにアプリケーションのメイン ウィンドウにその表現が表示されます。

Expresso には、組み込みのコード生成機能も用意されています。この機能を使用すると、ユーザーがデザインした表現セット用に、C#、C++、または Visual Basic のコード ラッパーが作成されます。また、必要に応じて、これがコンパイルされ、アプリケーションや Windows PowerShell スクリプトですぐに使用できる DLL が作られます。

正規表現に関してまだ初心者の方も、正規表現について長い間学んできた方も、作成した正規表現を保存およびテストする方法を探している認定された専門家の方も、Expresso を使ってみてください。この無償のユーティリティは、皆さんにとって最も価値のあるツールの 1 つとなる可能性があります。

価格 : 無償

steen.tool.expresso.gif

Expresso を使用すると、正規表現の作成、テスト、および再利用が容易になる (画像をクリックすると拡大表示されます)

Active Directory を検索および操作する

Active Directory Query

www.tumbleson.net/products/products.htm

Active Directory の検索と操作は、システム管理者が継続的に実行しなければならない作業です。さいわい、こうした作業を少し簡単にし、管理しやすくするツールが提供されています。私が好きなツールの 1 つは、Tumbleson.NET の使いやすい Active Directory Query です。

このアプリケーションは起動時に、フォレスト内のドメインのうち当該のコンピュータが接続しているドメインを検出するために、スキャンを実行します。そして、検出されたドメインを再利用できるように内部のリストに追加します。手動でドメインを追加したり、希望のドメインを検索するアクセス権がアプリケーションに与えられるように代替の資格情報を指定したりすることもできます。

Active Directory Query では組み込みのクエリがいくつも用意されており、カスタム クエリもサポートされています。Active Directory Query は、既定で、対象の組織単位 (OU) のユーザー、連絡先、コンピュータ、グループ、プリンタ、共有、削除されたオブジェクト、および最近作成されたオブジェクトを検索することができます。

基本的なクエリを実行したら、有効なディレクトリ オブジェクト、無効なディレクトリ オブジェクト、または文字列で結果をフィルタ処理することができます。また、古くなったコンピュータ アカウントを選別するコンピュータ フィルタや、ロックされたアカウント、期限切れのアカウント、古くなったアカウント、期限切れのパスワード、およびドメインにログインしたことがないユーザー アカウントを選別するユーザー フィルタもあります。

ユーザー アカウントに関しては、アカウントの有効/無効の切り替え、アカウントのロックやロック解除、アカウントのパスワードのリセット、アカウントの所属先のグループの表示、およびアカウントの削除を簡単に行うことができます。クリック操作によって、(電子メール、インスタント メッセージ、または電話で) すぐにユーザーと連絡をとることができます。アカウントに関連付ける JPEG イメージをアップロードすることもできます。

Active Directory Query は、コンピュータを検索する際、OS、サービス パック、完全修飾ドメイン名 (FQDN)、LDAP パスなどの有益な情報を、スキャンしやすいテーブルに格納し、問題となっているコンピュータの内容をユーザーがすぐに確認できるようにします。ここでも、クリック操作で簡単に実行できる便利な機能がいくつも用意されており、システムやシステムに対するリモート デスクトップの有効/無効を切り替えたり、リモート アシスタンスを提供したり、管理を行ったり、システムの電源のオン/オフを切り替えたり、コンピュータ上に現在存在する共有の一覧を取得したりすることができます。ping、経路追跡、nslookup、およびコンピュータへの HTTP 接続や FTP 接続を起動することもできます。詳細を確認する必要がある場合は、ハードウェア、ソフトウェア、ネットワーク、実行中のプロセス、およびログインしているユーザーの情報を取得することができます。

もう 1 つ優れた機能があります。最大 10 個のカスタム クエリ用のホットキーを作成および保存することができるので、情報が必要になるたびにこうしたホットキーを作成しなくて済みます。Active Directory Query では、Wake On LAN (WOL) を使用して、電源がオフになっているコンピュータをリモートで起動することもできます。

これを行うには、起動する 1 台または複数のコンピュータを検索し、右クリックして Windows Management Instrumentation (WMI) 経由でコンピュータの MAC アドレスを取得するだけです。Active Directory Query は、MAC (Active Directory Query の内部データベースに保存されます) を使用してコンピュータに WOL パケットを送信します。

必要であれば、Active Directory Query を使用して、数回のクリック操作で Excel、メモ帳、またはクリップボードへのエクスポートを行い、クエリによって返された情報を保存、共有、または再利用することができます。全体的に、これは便利で非常に使いやすいツールです。

価格 : 89.99 ドル

steen.tool.activedquery.gif

Active Directory Query を使用してシステムの検索と管理を行う (画像をクリックすると拡大表示されます)

ブック レビュー

Crimeware: Understanding New Attacks and Defenses

www.symantec.com/business/solutions/symantecpress.jsp

サイバー犯罪と情報 (個人情報と企業情報の両方) 保護の必要性に対するユーザーの意識は高まってきています。しかし、攻撃は巧妙さを増してきており、より広範囲に行われるようになってきています。クレジット カード情報、個人情報、または企業データの盗用という方法であれ、標的となったユーザーに誤った情報を伝えるという方法であれ、攻撃は成功し続けています。

所属している組織のセキュリティ ポリシーに自分が直接関与しているとお考えかどうかにかかわらず、皆さんは、攻撃者が使用する最新のツールやテクノロジに対する意識を高めることによって、こうしたポリシーに直接影響を与えることができます。必要な情報を得るのに役立つ書籍の 1 つは、セキュリティ プロフェッショナルの Markus Jakobsson と Zulfikar Ramzan による『Crimeware: Understanding New Attacks and Defenses』(Symantec Press、2008 年) です。

では、クライムウェアとは何でしょうか。この書籍の簡潔な説明によると、より聞き慣れた言葉であるマルウェアは "悪評" を得ることを主な目標としているのに対して、クライムウェアの "目標は利益や政治的な力を得ること" です。導入部を読むとわかるように、クライムウェアの作成者が使いこなす手法やツールセットは、キーロガー、スクリーン スクレーパ、トロイの木馬、トランザクション ジェネレータ、システムの再構成、プロキシ攻撃、ルートキット、ピギーバックなど、広範囲にわたります。

この書籍では、このようなツールや手法について説明した後で、この書籍内で "問題をもたらす 3 要素" と呼ばれているもの (接続性、複雑さ、および拡張性) が原因でアプリケーションがどれほど攻撃を受ける可能性に満ちているかについて説明しています。続いて、悪用されたり攻撃の対象となったりする可能性があるさまざまなプラットフォーム (ピアツーピア ネットワーク、ハンドヘルド デバイス、RFID デバイス、ファームウェア、ブラウザ、ボット ネットワークなど) が紹介されています。こうしたセクションでは、クロスサイト スクリプティング攻撃がどのように機能するか、ボット ネットワークがどのように広がり利用されるか、WiFi ルーターがどのようにしてクライムウェアに感染する場合があるかなどについて学ぶことができます。

その次のセクションでは、ルートキットについて説明されています。また、攻撃への対策が不十分なシステムに仕掛けられることがあるカーネル モード フックについて、およびルートキットがどのようにして検出されることなくメモリ アクセスをリダイレクトしたりファイル システムの変更をフィルタ処理したりできるかについても説明されています。オンライン仮想世界における詐欺やオンライン広告詐欺についての章も設けられています。このような章では、犯罪者が他人のお金や情報を盗み出すために使用する多様なテクノロジ、手法、およびソーシャル エンジニアリング戦略について説明されています。ビジネス モデルについての章では、こうした攻撃がどれほど儲かるものであるかについて説明されています。

しかし、最後に、サイバー犯罪を防ぐために制定された法律、および攻撃を受けるリスクを "信頼できるコンピューティング" などの防御手法によってどのように減らすことができるかを扱ういくつかのセクションで、ある程度希望も示されています。現在使用されている攻撃や防御の手法について必要な情報を得ようとお考えの方は、最近の攻撃をあらゆる角度から理解するためにこの書籍を最初から最後までよく読んでみることをご検討ください。

価格 : 49.50 ドル

steen.tool.book.gif

Greg Steen は技術プロフェッショナルであり、企業家でもあります。また、新製品のファンとも言えます。より簡単な操作、品質保証、および開発に役立つ IT プロフェッショナルのための新しいツールを日夜追い求めています。