Solaris WBEM Services は、Solaris オペレーティング環境で、管理データのセキュリティ保護されたアクセスと操作などの、WBEM サービスを提供するソフトウェアです。製品には Solaris プロバイダが組み込まれているため、管理アプリケーションから Solaris オペレーティング環境の管理リソース (デバイスやソフトウェア) の情報にアクセスできます。
CIM Object Manager は、Remote Method Invocation (RMI) プロトコルか XML/HTTP プロトコルを使用する管理アプリケーションからの接続を受け入れ、接続されたクライアントに次のようなサービスを提供します。
管理サービス – CIM Object Manager は、CIM データの意味と構文を検査し、アプリケーション、CIM Object Manager Repository、および管理リソースの間でデータの送受信を行います。
セキュリティサービス – これらのサービスは、Solaris Management Console のユーザーツールによって WBEM に指定します。これらのサービスについては、『Solaris のシステム管理 (セキュリティサービス)』を参照してください。
SunTM WBEM User Manager – このツールを使用して、WBEM サーバー上の特定のネームスペースのアクセス制御リスト (ACL) を確立します。Sun WBEM User Manager では、承認されたユーザーの追加と削除、承認されたユーザーに対するアクセス特権の設定、および WBEM 対応システム上の CIM オブジェクトに対するユーザー認証とアクセスの管理を実行できます。ACL ベースのセキュリティは、Solaris WBEM Services によって提供される独自の機能です。
ロギングサービス – このサービスを構成するクラスを使えば、開発者は、イベントデータを動的に記録したり取得したりできるアプリケーションを作成できます。管理者はこのデータを使ってイベントの原因を追跡したり、判定したりすることができます。ロギングサービスについての詳細は、『Solaris WBEM SDK 開発ガイド』を参照してください。
XML サービス – XML データを CIM クラスに変換します。XML/HTTP ベースの WBEM クライアントが CIM Object Manager と通信できるようにします。
Solaris WBEM Services ソフトウェアは、アプリケーション、管理、およびプロバイダという 3 つの層で機能するソフトウェアコンポーネントで構成されます。これらのコンポーネントはオペレーティングシステムやハードウェアとデータを送受信します。次の図に、各ソフトウェアコンポーネントと、それぞれの送受信方法を示します。

アプリケーション層 – WBEM クライアントが管理リソースからのデータを処理したり、表示したりします。Solaris WBEM Services には、次のアプリケーションがあります。
Sun WBEM User Manager および Solaris Management Console ユーザーツール – これらのアプリケーションでは、システム管理者が、承認されたユーザーの追加や削除を実行したり、それらのユーザーの管理リソースへのアクセス特権を設定したりできます。
Solaris Management Console ログビューア – ログファイルを表示するアプリケーションです。ログに残ったコマンドを実行したユーザーの名前や、ログに残ったイベントが発生したクライアントコンピュータなど、ログレコードの詳細を表示できます。
Managed Object Format (MOF) コンパイラ – このプログラムは、MOF 文を含むファイルを解析し、そのファイルで定義されているクラスやインスタンスを Java クラスに変換し、その Java クラスを CIM Object Manager Repository (管理データを一元的に格納する場所) に追加します。
MOF は、CIM のクラスやインスタンスを定義する言語です。MOF ファイルは、MOF 言語を使って CIM オブジェクトを記述する ASCII テキストファイルです。CIM オブジェクトは、プリンタ、ディスクドライブ、CPU などの管理リソースを表したモデルです。MOF ファイルは /usr/sadm/mof にあります。
管理リソースの情報は MOF ファイルに格納されることがあります。MOF は Java に変換できるため、Java 仮想マシン (JVM) を持つシステムで動作するアプリケーションならこの情報の解釈や交換を行うことができます。さらに、インストールの後で、mofcomp コマンドを使って MOF ファイルをいつでもコンパイルできます。MOF については、DMTF の Web ページ http://www.dmtf.org を参照してください。
管理層 – この層のコンポーネントは、接続された WBEM クライアントに次のサービスを提供します。
Common Information Model (CIM) Object Manager – WBEM システム上の CIM オブジェクトを管理するソフトウェアです。CIM オブジェクトは内部的には Java クラスとして格納されます。CIM Object Manager は WBEM クライアント、CIM Object Manager Repository、管理リソースとの間で情報を送受信します。
CIM Object Manager Repository – CIM のクラスやインスタンスの定義を一元的に格納する場所です。
クライアントおよび CIM アプリケーションプログラミングインタフェース (API) – WBEM クライアントアプリケーションは、これらの Java インタフェースを使って、管理リソースのクラスやインスタンスの作成および表示などの操作を CIM Object Manager に要求します。
プロバイダインタフェース – プロバイダは、これらのインタフェースを使って管理リソースの情報を CIM Object Manager に転送します。CIM Object Manager は、プロバイダインタフェースを使って、ローカルにインストールされたプロバイダに情報を転送します。
プロバイダ層 – プロバイダは、CIM Object Manager と 1 つまたは複数の管理リソースとの間の仲介を行います。CIM Object Manager は、WBEM クライアントから、CIM Object Manager Repository に存在しないデータを要求されると、要求を適切なプロバイダに転送します。
Solaris プロバイダ – Solaris オペレーティング環境内の管理リソースのインスタンスを、CIM Object Manager に提供します。プロバイダは、管理デバイスに関する情報の取得および設定を行います。ネイティブプロバイダとは、管理デバイスで動作するように作成されたマシン固有のプログラムです。たとえば、Solaris オペレーティング環境を実行しているシステム上のデータにアクセスするプロバイダには、そのシステムに照会する C 関数が含まれているはずです。Java Native Interface は、JDKTM ソフトウェアの一部です。Java Native Interface を使ってプログラムを作成すれば、その Java プログラムコードはどのプラットフォームに移植しても確実に動作します。Java Native Interface を使うと、Java 仮想マシン内で動作する Java コードを、C、C++、アセンブラなど、他の言語で作成されたアプリケーションやライブラリとともに動作するようにできます。
Solaris スキーマ – Solaris オペレーティング環境内の管理対象オブジェクトを記述するクラスの集合です。CIM スキーマや Solaris スキーマのクラスは CIM Object Manager Repository に格納されます。CIM スキーマは、どの管理環境にもある管理オブジェクトを表すためのクラス定義の集合です。
Solaris スキーマは CIM スキーマを拡張したもので、一般的な Solaris オペレーティング環境の管理オブジェクトを表すクラス定義の集合です。ユーザーは、MOF コンパイラ (mofcomp) を使用して CIM スキーマ、Solaris スキーマ、あるいはその他のクラスを CIM Object Manager Repository に追加することもできます。
オペレーティングシステム層 – Solaris プロバイダを使えば、管理アプリケーションから Solaris オペレーティング環境にある管理リソース (デバイスおよびソフトウェア) の情報にアクセスできます。
ハードウェア層 – 管理クライアントは、サポートされる任意の Solaris プラットフォームの管理データにアクセスできます。
ネームスペースと呼ばれるディレクトリのような構造には、1 つまたは複数のスキーマを格納できます。CIM ネームスペースには、他のネームスペース、クラス、インスタンス、および修飾子型を格納できます。1 つのネームスペース内のオブジェクト名は、一意でなければなりません。
Solaris WBEM Services では、WBEM クライアントアプリケーションが特定のネームスペースに接続されると、それ以後のすべての操作はそのネームスペース内で行われます。ネームスペースに接続されているクライアントは、そのネームスペースとそのネームスペースに含まれるすべてのネームスペースのクラスやインスタンスに (存在すれば) アクセスできます。たとえば、child というネームスペースを root\cimv2 ネームスペースに作成すれば、root\cimv2 に接続することにより、root\cimv2 と root\cimv2\child ネームスペースのクラスやインスタンスにアクセスできます。
アプリケーションを、あるネームスペース内のネームスペースに接続することができます。これはディレクトリ内のサブディレクトリを使用するのと同じことです。アプリケーションを新しいネームスペースに接続すると、それ以後のすべての操作はそのネームスペース内で行われます。たとえば、アプリケーションを root\cimv2\child ネームスペースに接続すると、そのネームスペースのすべてのクラスやインスタンスにはアクセスできますが、親ネームスペース root\cimv2 のクラスやインスタンスにはアクセスできません。
インストール時に、次のネームスペースがデフォルトで作成されます。
root – 他のネームスペースを含む、一番上位にあるネームスペース
root\cimv2 – LogicalDisk、Netcard など、システム上のオブジェクトを表すデフォルトの CIM クラスおよびインスタンスが入っている。これがデフォルトのネームスペース
root\security – CIM Object Manager が使用する、ユーザーやネームスペースのアクセス権を表すセキュリティクラスが入る
root\snmp – WBEM 用の SNMP プロバイダおよび SNMP アダプタのためのクラスが入る
root\system – CIM Object Manager の情報とプロバイダのパスが入る
WBEM クライアントアプリケーションが CIM データにアクセスすると、WBEM システムは現在のホストにあるユーザーのログイン情報を検証します。ユーザーには、デフォルトで CIM スキーマと Solaris スキーマに対する読み取り権が与えられます。CIM スキーマは、システムにあるすべての管理オブジェクトを標準形式で記述します。WBEM 対応のすべてのシステムやアプリケーションは、この標準形式を解釈できます。
プロバイダとは、管理オブジェクトと通信してデータにアクセスするクラスです。プロバイダは、この情報を Repository に統合し解釈するために CIM Object Manager に転送します。CIM Object Manager Repository に存在しないデータの要求を管理アプリケーションから受け取る場合、CIM Object Manager はその要求をプロバイダに送ります。
CIM Object Manager は、オブジェクトプロバイダの API を使用してプロバイダと通信します。アプリケーションが動的データを CIM Object Manager に要求すると、CIM Object Manager はプロバイダインタフェースを使って要求をプロバイダに渡します。
プロバイダは、CIM Object Manager からの要求に応答して次の機能を実行します。
WBEM クライアントと WBEM システムは、同じシステムで動作することも、別々のシステムで動作することもできます。WBEM システムには複数の WBEM クライアントを接続できます。たとえば、1 つの WBEM システムで 4 つまたは 5 つの WBEM クライアントをサポートすることが可能です。
Solaris WBEM Services は、Version 1.1 Specification for CIM Operations over HTTP をサポートします。この仕様では、XML を使って CIM のオブジェクトやメッセージを記述します。XML は、Web 上のデータを記述するための標準マークアップ言語です。この仕様では、XML マークアップを拡張して CIM のオブジェクトや操作を定義します。XML は Web 上で送信可能なデータを記述する標準的な方法であるため、WBEM クライアントは、XML データを解析できる任意の WBEM システム上の CIM データにアクセスできます。