Solaris スマートカードの管理

第 5 章 問題発生時の解決方法

この節では、Solaris スマートカードに関する問題を解決する方法について説明します。この章では、次の内容について説明します。

デバッグ属性を設定することで、スマートカードの動作をシステム上でデバッグできます。Solaris スマートカードは標準的なデバッグ機能を提供します。指定しておけば、ユーザーの動作を詳細に追跡できます。有効にすると、デバッグ情報がファイルに記録されます。デバッグ情報のレベルおよび量は、0 - 9 段階で制御することができます。デフォルトでは、デバッグは無効になっています。

デフォルトでは、次のデバッグ属性が ocfserv 用に定義されています。


debugging.filename        = /var/run/ocf.log
debugging                 = 0
OpenCard.trace            = com.sun:9 opencard.core:9

注 –

Solaris 8 を使用している場合は、デバッグログファイルの名前 が /tmp/ocf_debugfile の場合があります。


/var/run/ocf_log

デバッグ情報を格納するファイル名 

debugging = 0

デバッグが無効であることを示す。debugging = 1 はデバッグが有効であることを示す

OpenCard.trace

OpenCard のトレースレベル 

デバッグを有効にするには (Smartcard Console)

ocfserv のデバッグ属性を設定したい場合は、「デバッグ (Debug)」フォルダを使用します。デバッグの設定はオプション (省略可能) です。

  1. ナビゲーション区画で「OCF サーバー (OCF Server)」を選択します。

  2. ローカルシステムを表すアイコンをダブルクリックします。

  3. 「デバッグ (Debug)」フォルダを選択します。

  4. OCF デバッグレベルスライダのインジケータを右側に動かして、OCF サーバーのデバッグレベルを示します。

  5. 「Open Card トレースレベル (Open Card Trace Level)」スライダのインジケータを右側に動かして、OCF サーバーのトレースレベルを示します。

  6. (省略可能) デバッグファイルの代わりの名前を指定します。

    1. 「ブラウズ (Browse)」をクリックして、システム上のファイルシステムを表示します。

    2. 「OCF デバッグファイルの場所 (OCF Debug File Location)」フィールドに、デバッグファイルの絶対パス名を入力します。

  7. 「適用 (Apply)」または「了解 (OK)」をクリックします。

デバッグを有効にするには (コマンド行)

スマートカードのデバッグを有効にするには、次の手順を使用します。

  1. スーパーユーザーになります。

  2. debugging=1 を設定して、スマートカードのデバッグを有効にします。


    # smartcard -c admin -x modify debugging=1
    

    次の例では、-x modify debugging.filename オプションとデバッグファイルの絶対パスによるファイル名を指定することによって、ocfserv デバッグファイルの位置を変更しています。


    # smartcard -c admin -x modify debugging.filename=/var/tmp/sc.debug
    

スマートカードを無効にするには

スマートカードの設定に関する問題によってユーザーのスマートカードでのログインが許可されない場合、またはシステムがスマートカードによるログインを必要としなくなった場合は、システムでスマートカードを無効にする必要が生じることもあります。

  1. スーパーユーザーになります。

  2. スマートカードの操作を無効にします。


    # smartcard -c disable
    

スマートカードを使用したログインに関する問題を解決するには

スマートカードを有効にしたあとで、システムからログアウトすると、CDE ログイン画面には次のようなメッセージが表示されます。


Please insert Smart Card

スマートカードの設定に関する問題のために、スマートカードを使用したシステムのログインを無効にする場合には、次の手順を実行してください。

  1. rlogin または telnet コマンドを使って、リモートからログインします。

  2. su と入力してスーパーユーザーになります。

  3. 次のように入力して、スマートカードを無効にします。


    # smartcard -c disable
    

    スマートカードを無効にすると、CDE 画面には次のようなプロンプトが表示されます。


    Enter User Name
  4. こうしておいて、スマートカードの設定に関する問題を修正します。

構成に関する問題を解決するには

スマートカードの重要な構成情報は /etc/smartcard/opencard.properties ファイルに格納されています。このファイルは管理が不要なので、手動で編集しないでください。ただし、SmartCard Console またはコマンド行からスマートカードを構成するときに問題が発生した場合は、/etc/smartcard/opencard.properties ファイルの前のバージョンをコマンド行から復元できます。

  1. スーパーユーザーになります。

  2. /etc/smartcard ディレクトリに移動します。

  3. 最初に現在のバージョンを保存します。


    #  cp opencard.properties opencard.properties.bad
    
  4. 前のバージョンを現在のバージョンにコピーします。


    # cp opencard.properties.bak opencard.properties
    

アプレットのダウンロードに関する問題を解決するには

  1. アプレットをスマートカードにダウンロードしようとして、次のメッセージが表示された場合、カードリーダーに挿入されているスマートカードの ATR が (システムが受け付けることができる) 有効な ATR のリストに追加されていない可能性があります。


    SmartcardInvalidCardException
  2. 新しいカードタイプのサポートを追加するには (新しい ATR)の手順に従って、スマートカードの ATR を更新してください。

ATR の紛失に関する問題を解決するには

SmartCard Console でスマートカードを追加すると、カードリーダーに挿入されているスマートカードの ATR が表示されます。表示された ATR が有効な ATR のリストに存在しない場合は、その ATR を「card-name.ATR」属性に追加します。

詳細については、新しいカードタイプのサポートを追加するには (新しい ATR)を参照してください。また、次のコマンド行の例も参照してください。

使用例 — 紛失した ATR を追加する(コマンド行)

ocfserv 属性を表示して、「card_name.ATR」属性が存在するかどうかを調べます。


# smartcard -c admin

たとえば、ocfserv は「MySCM.0.ATR」属性を表示します。MySCM はカードリーダーのユーザーフレンドリな名前です。この属性は、カードリーダーに挿入されているスマートカードの ATR を反映しています。この属性は一時的なものです。スマートカードをカードリーダーに挿入すると、ocfserv によって追加され、スマートカードをカードリーダーから取り外すと削除されます。

この属性により表示された ATR が有効な ATR のリストに存在しない場合は、その ATR を「card-name.ATR」属性に追加します。