サーバー・レベルまたはセル・レベルのトークン生成プログラムの構成

サーバー・レベルまたはセル・レベルのトークン生成プログラムは、これらのバインディングがアプリケーション・レベルで 定義されていない場合に、トークン生成プログラムの情報を指定するために使用されます。 署名情報および暗号化情報はトークン生成プログラム情報を共用することができますが、 これは、これらがすべて同じレベルで定義されているためです。 WebSphere® Application Server には、バインディングのデフォルト値が用意されています。ユーザーは、実稼働環境に合わせてデフォルトを変更する必要があります。

サーバー・レベルでトークン生成プログラムを構成するには、以下のステップを実行します。

  1. サーバー・レベルのデフォルト・バインディングにアクセスします。
    1. サーバー」>「アプリケーション・サーバー」>「server_name」の順にクリックします。
    2. 「セキュリティー」の下で、「Web services: Default bindings for Web services security」をクリックします。
  2. 「Default generator bindings」の下で「Token generators」をクリックします。
  3. 新規」をクリックしてトークン生成プログラム構成を作成するか、「削除」をクリックして 既存の構成を削除するか、既存のトークン生成プログラム構成の名前をクリックして、その設定を編集します。 新規構成を作成している場合は、 「Token generator name」フィールドにそのトークン生成プログラム構成の固有の名前を入力します。 例えば、sig_tgen のように指定してください。このフィールドは、トークン生成プログラム要素の名前を指定します。
  4. 「Token generator class name」フィールドでクラス名を指定します。 トークン生成プログラム・クラスは、com.ibm.wsspi.wssecurity.token.TokenGeneratorComponent インターフェースを実装する必要があります。 トークン生成プログラム・クラス名は、 トークン・コンシューマー・クラス名と類似している必要があります。 例えば、アプリケーションが X.509 証明書トークン・コンシューマーを 必要とする場合、「Token consumer」パネルで com.ibm.wsspi.wssecurity.token.X509TokenConsumer クラス名を、 このフィールドで com.ibm.wsspi.wssecurity.token.X509TokenGenerator クラス名を指定することができます。 WebSphere Application Server には、以下のデフォルトのトークン生成プログラム・クラス実装が用意されています。
    com.ibm.wsspi.wssecurity.token.UsernameTokenGenerator
    この実装は、ユーザー名トークンを生成します。
    com.ibm.wsspi.wssecurity.token.X509TokenGenerator
    この実装は、X.509 証明書トークンを生成します。
    com.ibm.wsspi.wssecurity.token.LTPATokenGenerator
    この実装は、Lightweight Third Party Authentication (LTPA) トークンを生成します。
  5. 証明書パス・オプションを選択します。 証明書パスは、証明書失効リスト (CRL) とともに PKCS#7 内にラップされたセキュリティー・トークンの生成に使用される、CRL を指定します。 WebSphere Application Server には、 以下の証明書パス・オプションが用意されています。
    なし
    セキュリティー・トークンの生成に CRL を使用しない場合、このオプションを選択します。 トークン生成プログラムが PKCS#7 トークン・タイプを使用しない場合は、 このオプションを選択する必要があります。
    専用署名情報
    CRL がセキュリティー・トークン内でラップされる場合、「Dedicated signing information」を選択し、「証明書ストア」フィールドからコレクション証明書ストア名を選択します。 「証明書ストア」フィールドには、既に定義されているコレクション証明書ストアの名前が表示されます。 セル・レベルでコレクション証明書ストアを定義するには、サーバーまたはセル・レベルのバインディングでのコレクション証明書ストアの構成を参照してください。
  6. Add nonce」オプションを選択して、トークン生成プログラムのユーザー名トークンに nonce を組み込みます。 nonce は、メッセージに組み込まれた固有の暗号数値で、ユーザー名トークンの未許可のアタックが繰り返されるのを防ぐために役立ちます。「Add nonce」オプションは、トークン生成プログラムのユーザー名トークンを指定する場合に使用することができます。
  7. Add timestamp」オプションを選択して、トークン生成プログラムのユーザー名トークンにタイム・スタンプを組み込みます。
  8. 「Local name」フィールドで値タイプのローカル名を指定します。 この項目は、鍵 ID によって参照されるセキュリティー・トークンの値タイプのローカル名を指定します。 この属性は、「Key identifier」が鍵情報タイプとして選択されている場合に有効です。 鍵情報タイプを指定するには、サーバー・レベルまたはセル・レベルでの生成プログラム・バインディングの鍵情報構成を参照してください。WebSphere Application Server には、 以下の事前定義 X.509 証明書トークン構成が用意されています。
    X.509 証明書トークン
    http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3
    PKIPath 内の X.509 証明書
    http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509PKIPathv1
    PKCS#7 内の X.509 証明書および CRL のリスト
    http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#PKCS7
    LTPA
    LTPA の場合、値タイプのローカル名は LTPA です。ローカル名に LTPA を入力する場合、 「Value type URI」フィールドでも http://www.ibm.com/websphere/appserver/tokentype/5.0.2 URI 値を指定する必要があります。
    例えば、X.509 証明書トークンが指定される場合、 ローカル名に http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3 を使用することができます。
  9. 「URI」フィールドで値タイプの URI を指定します。 この項目は、鍵 ID によって参照されるセキュリティー・トークンの値タイプのネームスペース URI を指定します。 この属性は、デフォルトの生成プログラムの「Key information」パネルで、 鍵情報タイプとして「Key identifier」が選択されている場合に有効です。 X.509 証明書トークンを指定する場合、 ネームスペース URI を指定する必要はありません。 別のトークンを指定する場合は、 その値タイプのネームスペース URI を指定する必要があります。
  10. OK」をクリックし、次に「保管」をクリックして構成を保管します。
  11. トークン生成プログラム構成の名前をクリックします。
  12. 「追加プロパティー」の下の「Callback handler」をクリックして、コールバック・ハンドラー・プロパティーを構成します。 コールバック・ハンドラーは、Simple Object Access Protocol (SOAP) メッセージ内の Web サービス・セキュリティー・ヘッダーに挿入される セキュリティー・トークンの取得方法を指定します。このトークン取得は、セキュリティー・トークンを取得するために Java™ 認証・承認サービス (JAAS) javax.security.auth.callback.CallbackHandler インターフェースを利用するプラグ可能なフレームワークです。
    1. 「Callback handler class name」フィールドで コールバック・ハンドラー・クラス実装を指定します。 この属性は、 セキュリティー・トークン・フレームワークをプラグインするために使用するコールバック・ハンドラー・クラス実装の名前を指定します。 指定したコールバック・ハンドラー・クラスは、javax.security.auth.callback.CallbackHandler クラスを実装する必要があります。WebSphere Application Server は、以下のデフォルトのコールバック・ハンドラー実装を提供します。
      com.ibm.wsspi.wssecurity.auth.callback.GUIPromptCallbackHandler
      このコールバック・ハンドラーは、ログイン・プロンプトを使用して、ユーザー名とパスワードの情報を収集します。 ただし、このパネルでユーザー名およびパスワードを指定した場合、 プロンプトは表示されず、WebSphere Application Server はユーザー名およびパスワードをトークン生成プログラムに戻します。 この実装は、 Java 2 Platform, Enterprise Edition (J2EE) アプリケーション・クライアントに対してのみ使用してください。
      com.ibm.wsspi.wssecurity.auth.callback.NonPromptCallbackHandler
      このパネルの基本認証セクションで指定されている場合、 このコールバック・ハンドラーは、プロンプトを発行しないで、ユーザー名とパスワードを戻します。 このコールバック・ハンドラーは、Web サービスがクライアントとして機能している場合に使用できます。
      com.ibm.wsspi.wssecurity.auth.callback.StdinPromptCallbackHandler
      このコールバック・ハンドラーは、standard-in プロンプトを使用して、ユーザー名およびパスワードを収集します。ただし、 ユーザー名およびパスワードがこのパネルの基本認証セクションで指定される場合、WebSphere Application Server はプロンプトは表示せずに、トークン生成プログラムに ユーザー名およびパスワードを戻します。 この実装は、 Java 2 Platform, Enterprise Edition (J2EE) アプリケーション・クライアントに対してのみ使用してください。
      com.ibm.wsspi.wssecurity.auth.callback.LTPATokenCallbackHandler
      このコールバック・ハンドラーは、Run As 呼び出しサブジェクトから Lightweight Third Party Authentication (LTPA) セキュリティー・トークンを取得するために使用されます。 このトークンは、バイナリー・セキュリティー・ トークンとして SOAP メッセージ内で Web サービス・セキュリティー・ヘッダーに挿入されます。 ただし、このパネルの基本認証セクションでユーザー名およびパスワードが指定されると、WebSphere Application Server はユーザー名およびパスワードを認証して、LTPA セキュリティー・ トークンを取得します。 セキュリティー・トークンは、Run As サブジェクトからではなく、この方法で取得します。 このコールバック・ハンドラーは、Web サービスがアプリケーション・サーバー上でクライアントとして機能している場合のみ使用してください。 このコールバック・ハンドラーを J2EE アプリケーション・クライアント上で使用することはお勧めしません。
      com.ibm.wsspi.wssecurity.auth.callback.X509CallbackHandler
      このコールバック・ハンドラーは、バイナリー・セキュリティー・トークンとして SOAP メッセージ内の Web サービス・ セキュリティー・ヘッダーに挿入される X.509 証明書を作成するために使用されます。 このコールバック・ハンドラーには、鍵ストア・ファイルおよび鍵定義が必要です。
      com.ibm.wsspi.wssecurity.auth.callback.PKCS7CallbackHandler
      このコールバック・ハンドラーは、PKCS#7 フォーマットでエンコードされる X.509 証明書を作成するために使用されます。証明書は、バイナリー・セキュリティー・トークンとして SOAP メッセージ内の Web サービス・セキュリティー・ヘッダーに挿入されます。このコールバック・ハンドラーには鍵ストア・ファイルが必要です。 コレクション証明書ストアで証明書失効リスト (CRL) を指定する必要があります。 CRL は、PKCS#7 形式で X.509 証明書と共にエンコードされます。 コレクション証明書ストアの構成について詳しくは、 サーバーまたはセル・レベルのバインディングでのコレクション証明書ストアの構成を参照してください。
      com.ibm.wsspi.wssecurity.auth.callback.PkiPathCallbackHandler
      このコールバック・ハンドラーは、PkiPath フォーマットでエンコードされる X.509 証明書を作成するために使用されます。 証明書は、バイナリー・セキュリティー・トークンとして SOAP メッセージ内の Web サービス・セキュリティー・ヘッダーに挿入されます。このコールバック・ハンドラーには鍵ストア・ファイルが必要です。 CRL はコールバック・ハンドラーによってサポートされていないため、コレクション証明書ストアは不要であるか使用されません。

      X.509 証明書トークンの場合、com.ibm.wsspi.wssecurity.auth.callback.X509CallbackHandler 実装を指定できます。

    2. オプション: Use identity assertion」オプションを選択します。 IBM® 拡張デプロイメント記述子で定義された ID 表明がある場合は、このオプションを選択します。 このオプションは、初期送信側の ID のみが必要で、SOAP メッセージ内の Web サービス・セキュリティー・ヘッダーに挿入されることを示します。例えば、WebSphere Application Server は、ユーザー名トークン生成プログラムの元の呼び出し元のユーザー名のみを送信します。 X.509 トークン生成プログラムの場合、 アプリケーション・サーバーはオリジナルの署名者認証のみを送信します。
    3. オプション: Use RunAs identity」オプションを選択します。 以下の条件を満たしている場合、このオプションを選択します。
      • IBM 拡張デプロイメント記述子で定義された ID 表明がある場合は、このオプションを選択します。
      • ダウンストリーム呼び出しの ID 表明に対して、初期呼び出し元 ID の代わりに Run As ID を使用したい場合は、このオプションを選択します。
    4. オプション: 「ユーザー ID」フィールドおよび「パスワード」フィールドに、 基本認証ユーザー ID およびパスワードを指定します。 この項目は、コールバック・ハンドラー実装の コンストラクターに渡されるユーザー名およびパスワードを指定します。 WebSphere Application Server に用意された以下のデフォルトのコールバック・ハンドラー実装 のいずれかを指定する場合、基本認証ユーザー ID およびパスワードが使用されます。
      • com.ibm.wsspi.wssecurity.auth.callback.GUIPromptCallbackHandler
      • com.ibm.wsspi.wssecurity.auth.callback.LTPATokenCallbackHandler
      • com.ibm.wsspi.wssecurity.auth.callback.NonPromptCallbackHandler
      • com.ibm.wsspi.wssecurity.auth.callback.StdinPromptCallbackHandler
    5. オプション: 鍵ストアのパスワードおよびパスを指定します。 トークンを生成するために鍵または証明書が使用される場合、鍵ストアおよびその関連情報が必要です。 例えば、WebSphere Application Server に用意された以下のデフォルトの コールバック・ハンドラー実装のいずれかを選択する場合、鍵ストア情報が必要です。
      • com.ibm.wsspi.wssecurity.auth.callback.PKCS7CallbackHandler
      • com.ibm.wsspi.wssecurity.auth.callback.PkiPathCallbackHandler
      • com.ibm.wsspi.wssecurity.auth.callback.X509CallbackHandler

      鍵ストア・ファイルには公開鍵、秘密鍵、ルート認証局 (CA) 証明書、中間 CA 証明書などが含まれています。 鍵ストア・ファイルから取得された鍵は、 メッセージやメッセージ・パーツの署名および妥当性検査、または暗号化や暗号化解除に使用されます。 鍵ストア・ファイルから鍵を取得するには、 鍵ストア・パスワード、鍵ストア・パス、および鍵ストア・タイプを指定する必要があります。

  13. 「タイプ」フィールドから鍵ストア・タイプを選択します。 WebSphere Application Server には、以下のオプションが用意されています。
    JKS
    Java Cryptography Extensions (JCE) を使用していない場合、 かつ鍵ストア・ファイルで Java Keystore (JKS) フォーマットを使用している場合は、このオプションを使用します。
    JCEKS
    Java Cryptography Extensions を使用している場合は、このオプションを使用します。
    PKCS11KS (PKCS11)
    鍵ストア・ファイルが PKCS#11 ファイル形式を使用する場合は、この形式を使用します。このフォーマットを使用する鍵ストア・ファイルには、暗号ハードウェア上に RSA 鍵が含まれている場合、または 暗号ハードウェアを使用する鍵を暗号化して保護を実行する場合があります。
    PKCS12KS (PKCS12)
    鍵ストア・ファイルが PKCS#12 ファイル形式を使用する場合は、このオプションを使用します。
  14. OK」をクリックし、次に「保管」をクリックして構成を保管します。
  15. トークン生成プログラム構成の名前をクリックします。
  16. 「追加プロパティー」の下で、「Callback handler」>「Keys」の順にクリックします。
  17. 新規」をクリックして鍵情報を作成するか、 「削除」をクリックして既存の構成を削除するか、既存の鍵構成名をクリックして、その設定を編集します。 新規構成を作成している場合は、 「Key name」フィールドに鍵構成の固有の名前を入力します。 この名前は、 鍵ストア・ファイル内に保管されている鍵オブジェクトの名前を参照します。
  18. 「Key alias」フィールドに鍵オブジェクトの別名を指定します。 この別名は、鍵ロケーターが鍵ストア内の鍵オブジェクトを探す場合に使用します。
  19. 「Key password」フィールドで、この鍵に関連付けられたパスワードを指定します。
  20. OK」と「保管」をクリックして、構成を保管します。
サーバー・レベルまたはセル・レベルのトークン生成プログラムが構成されました。
同様のトークン・コンシューマー構成を指定する必要があります。
関連タスク
サーバーまたはセル・レベルのバインディングでのコレクション証明書ストアの構成

フィードバック