クライアント接続を開始する場合、CIMClient クラスを使用して CIM Object Manager に接続します。CIMClient クラスは、次の 4 つの引数を取ります。
name – 必須。クライアント接続に使用されるホストおよび名前空間の名前を含む CIMNameSpace オブジェクトのインスタンス。デフォルトは、ローカルホスト (クライアントアプリケーションが稼働するホスト) 上の root\cimv2。CIM Object Manager への接続が完了すると、後続の CIMClient 操作はすべて指定された名前空間内で発生する
principal – 必須。有効な Solaris ユーザーアカウント名を含む UserPrincipal オブジェクトのインスタンス。CIM Object Manager は、ユーザー名のアクセス権を検査して、CIM オブジェクトに許可されるアクセスの種類を判断する
credential – 必須。UserPrincipal Solaris アカウントの有効なパスワードを含む PasswordCredential オブジェクトのインスタンス
protocol – 任意 (文字列)。CIM Object Manager へのメッセージ送信に使用するプロトコル (RMI (デフォルト) または HTTP)
次の例では、アプリケーションは、デフォルトの名前空間のローカルホストで稼働する CIM Object Manager に接続します。アプリケーションは、デフォルトの名前空間のすべての CIM オブジェクトに読み取り権および書き込み権を持つ、ルートアカウント用 UserPrincipal オブジェクトを作成します。
{ ... /* 2 つの NULL 文字を使用して初期化された名前空間オブジェクトを作成する。 2 つの NULL 文字はデフォルトのホスト (ローカルホスト) とデフォルトの 名前空間 (root\cimv2) を表す */ CIMNameSpace cns = new CIMNameSpace("", ""); UserPrincipal up = new UserPrincipal("root"); PasswordCredential pc = new PasswordCredential("root_password"); /* root パスワードを使用し、スーパーユーザーとして名前空間に接続する */ CIMClient cc = new CIMClient(cns, up, pc); ... }
次の例では、アプリケーションは、最初に CIMNameSpace、UserPrincipal、および PasswordCredential オブジェクトのインスタンスを作成します。次に、 CIMClient クラスを使用して CIM Object Manager に接続し、ホスト名、名前空間、ユーザー名、およびパスワード資格を CIM Object Manager に渡します。
{ ... /* ホスト happy 上の A (名前空間名) によって初期化される名前空間オブジェクトを作成する */ CIMNameSpace cns = new CIMNameSpace("happy", "A"); UserPrincipal up = new UserPrincipal("Mary"); PasswordCredential pc = new PasswordCredential("marys_password"); CIMClient cc = new CIMClient(cns, up, pc); ... ... }
SolarisUserPrincipal および SolarisPasswordCredential クラスを使用して、ユーザーの役割 ID を認証します。次の例では、Mary の役割を Admin として認証します。
{ ... CIMNameSpaceRole cns = new CIMNameSpace("happy", "A"); SolarisUserPrincipal sup = new SolarisUserRolePrincipal("Mary", "Admin"); SolarisPswdCredential spc = new SolarisPswdCredential("marys_password", "admins_password"); CIMClient cc = new CIMClient(cns, sup, spc);