前へ 目次 DocHome 索引 次へ
Identrus システムへの iPlanet Portal Server Plug-in インストール、管理、およびユーザガイド



第 4 章   アプリケーションを導入する


Identrus システムへの iPlanet Portal Server Plug-in を導入するには、Identrus 対応の 4 コーナーモデルを使用して証明書ステータスチェックを行う方法を理解することが必要です。この章には、次の項目があります。


概要

Identrus システムへの iPlanet Portal Server Plug-in には、Identrus 対応の Portal Server に開発者独自のアプリケーションを簡単に統合できるように設計された、API とサンプルの Java ソースコードが付属しています。

図 4-1 Portal Server ハードウェアの概要


通常、ポータルはサーバとゲートウェイ上に導入されます。したがって、これらのマシン両方に Java がインストールされていることが必要です。 この環境を作成するには、次の手順に従います。


開発環境をインストールする




サンプルソースコードと API

Identrus 対応アプリケーションの導入方法を示すソースコードは、次のディレクトリにあります。

<Portal_install_directory>/SUNWpin/sample/src/com/iplanet/sample/Sampl eCSC.java

Identrus 対応のアプリケーションの導入に適した API は、次のディレクトリにあります。

<Portal_install_directory>/SUNWpin/apidocs/helper/index.html
<Portal_install_directory>/SUNWpin/apidocs/plugin/index.html

Java セキュリティを保護する API については、次の Web サイトの Java 2 に関するドキュメント中で説明されています。

http://java.sun.com/j2se/1.3/docs/api/

http://java.sun.com/security/JCE1.2/spec/apidoc/


HTML ソース画面は、次のディレクトリにあります。

<Portal_install_directory>SUNWips/public_html

API パッケージ com.iplanet.portalserver は、次のディレクトリにあります。

<Portal_install_directory>/SUNWips/public_html/docs/en_US/javadocs/com /iplanet/portalserver

Portal API パッケージ com.iplanet.portalserver の導入方法に関する情報は、次のサイトに記載されています。

http://docs.iplanet.com/source/816-6130-10/



2 つの Java 仮想マシンを作成する

Web サイトから JDK をダウンロードし、/app などの一時ディレクトリに置きます。

http://java.sun.com


次のように、適切なディレクトリにコピーします。

cd/app
mkdir java1.2.2_06
cp -r java1.2/* java1.2.2_06/


Portal Server を起動する

Portal Server を起動するスクリプトを次に示します。

#!/bin/sh
LD_LIBRARY_PATH=/app/SUNWips/lib
export LD_LIBRARY_PATH
/app/SUNWips/bin/ipsserver start debug > ipsserver.out
JAVA_HOME=/app/java1.2.2_06
export JAVA_HOME
/app/SUNWips/bin/ipsgateway start
tail -f ipsserver.out


Portal Server を停止する

Portal Server を停止するスクリプトを次に示します。

/app/SUNWips/bin/ipsserver stop
/app/SUNWips/bin/ipsgateway stop


証明書ステータスチェック



証明書ステータスチェックを実行するには、次のインタフェースパッケージを使用します。

図 4-2 インタフェースパッケージを使用して CSC を実行する



CSC チェックを実行する



CertStatusChecker は、証明書 ID のステータスを取得するための API パッケージです。 これは、checkStatus(CertID) を使用して導入できます。 返されたプロパティオブジェクトからは、 リクエストの時刻、証明書のステータス、レスポンスのステータス、およびトランザクション ID を取得できます。.checkStatus(CertID) を呼び出すと、提供された証明書 ID を使用して、証明書ステータスチェックが実行されます。 ただし、レスポンダ URL と署名証明書が Portal Server 内で適切に設定されていないと、証明書ステータスチェックは成功しません。 レスポンダ URL と署名証明書を設定するには、管理サーバ (通常は http://127.0.0.1:8080/console) を使用します。 次の構成が必要です。

  • CSC 構成 : リクエスト署名証明書、レスポンス署名証明書、および信頼できるレスポンス確認証明書

  • RC ホスト

  • RC 設定 : レスポンダタイプ、レスポンダの URL、OCSP リクエスタ名

  • 組織に関する詳細 : 組織 ID、正式名、省略名、ロゴの URL、所在地、および連絡先の情報

次のコードにこの例を示します。

CertStatusChecker statusChecker = SingletonCertStatusChecker.getChecker( mySessionID );
    Properties certProps = statusChecker.checkStatus( myCertID );
    //Get the Certificate Status
   String certStatus = certProps.getProperty( CertStatusChecker.CERT_STATUS );
      if (certStatus.equals ( CertStatusChecker.GOOD ) )
   {System.out.println("証明書は信頼できます。");}
   else if (certStatus.equals ( CertStatusChecker.REVOKED ) )
   {System.out.println("証明書は取り消し済みです。");}
   else if (certStatus.equals ( CertStatusChecker.UNKNOWN ) )
   {System.out.println("CSC は証明書ステータスを認識できません。");}
   else if (certStatus.equals ( CertStatusChecker.ERROR ) )
   {System.out.println("証明書ステータスの取得中にエラーが発生しました。");}
    //Get request time
   String requestTime = certProps.getProperty( CertStatusChecker.REQUEST_TIME );
    System.out.println("リクエスト時刻 : " + requestTime);
    //Get response status
   // The response code is used to provide more detail of an error if the cert status was ERROR.
   String requestStatus = certProps.getProperty( CertStatusChecker.RESPONSE_STATUS );
    System.out.println("リクエストステータス : " + requestStatus);
    //Get Transaction ID
   String transID = certProps.getProperty( CertStatusChecker.TX_ID );
    System.out.println("トランザクション ID : " + transID);



開発者の方は、次のファイルを参照してください。
<Portal_install_directory>/SUNWpin/apidocs/com/iplanet/portalserver/identrus/statuscheck/CertStatusChecker.html

また、構成の設定については、『管理者ガイド』の第 3 章を参照してください。




証明書ストアをマップする



CertMapStore は、証明書および 証明書 ID にアクセスするための API パッケージです。 証明書 ID は、CertMapStore 内の証明書を識別するために、Portal Server CSC ライブラリによって使用されます。 次に、一般的な使用方法の例を示します。

CertMapStore certStore = SingletonStatusStoreRegistry.getCertMapStore( mySessionID );

//例 1 : 単独の証明書 (base64 として提示される場合もあり)

X509Certificate aPKCS7Cert = convertSomePKCS7DataFromSomeSource ( pkcs7data ) ;

CertID certID = certStore.getCertID ( aPKCS7Cert ) ;

performCSCCode ( certID ); //詳細は CertStatusChecker を参照



x509 証明書 へのアクセス方法については、次のサイトを参照してください。

http://java.sun.com/j2se/1.3/docs/api/java/security/cert/X509Certificate.html

CertMapStore インタフェースについては、次のファイルを参照してください。

<Portal_install_directory>/SUNWpin/apidocs/com/iplanet/portalserver/identrus/statuscheck/CertMapStore.html




サンプルプログラムをコンパイルする



CSC アプリケーションの開発に必要なライブラリはすべて、次の場所にあります。

<Portal_install_directory>/SUNWips/lib

また、このディレクトリには、すべての Portal Server ライブラリに加え、すべての Plug-in ライブラリがあります。 サンプルプログラムを MS-DOS から実行およびコンパイルするスクリプトを次に示します。

cd <Portal_install_directory>/SUNWips/lib
set CLASSPATH=sample.jar:activation.jar:asn1.jar:config.jar:ipspin.jar:dsm s.jar:jndi.jar:jaas.jar:jss21.jar:ldapbp.jar:jsskeystore.jar:ldapfilt. jar:ldap.jar:ocsp.jar:ldapjdk_debug.jar:mail.jar:servlet.jar:pkcs.jar: tbmail.jar:providerutil.jar:tbutil.jar:ssl.jar:x509v1.jar:tokenkeystor e.jar:country.zip:xml.jar:identrus_update.zip:xml4j.jar:utiloverride.z ip:identrus.zip:oracle-jdbc-815.zip:
tbextlibrary.zip: tblibrary.zip: ips_services.jar: trustbase.zip
export CLASSPATH
javac
<Portal_install_directory>/SUNWpin/sample/src/com/iplanet/sample/Sampl eCSC.java
cd <Portal_install_directory>/SUNWpin/sample/src
jar cvf <Portal_install_directory>/SUNWpin/sample/src /com/iplanet/sample/sample.jar com/iplanet/sample/SampleCSC.class

プログラムをコンパイルして sample.jar ファイルに読み込んだら、このファイルを Portal Server_install_directory内の jar ファイルのディレクトリにコピーします。

<Portal_install_directory>/SUNWips/lib/sample.jar


サンプルプログラムを実行する



プログラムを実行するには、次の条件を満たすことが必要です。

  • CSC が設定されていること (第 2 章、「管理」を参照)

  • スマートカードユーザとして、または管理コンソールから、ログインしていること

サンプルプログラムを実行するには、次のように入力します。

http://hailstorm.uk.sun.com:8080/SampleCSC

次の画面が表示されます。

図 4-3 サンプル証明書ステータスチェックのメイン画面


「Perform CSC」を選択します。次の出力が表示されます。

図 4-4 サンプル証明書ステータスチェックの出力



前へ 目次 DocHome 索引 次へ
Copyright © 2001 Sun Microsystems, Inc. Some preexisting portions Copyright © 2001 Netscape Communications Corp. All rights reserved.

最終更新日 2001 年 3 月 14 日