Solaris スマートカードの管理

第 4 章 スマートカードの設定 (概要)

この章では、スマートカードの設定の概要を示します。

この章では、次の内容について説明します。

スマートカードは、SmartCard Console またはコマンド行から設定できます。SmartCard Console からスマートカードサポートを設定する手順については、第 5 章「スマートカードの設定 (タスク)」を参照してください。この章では、コマンド行による設定例も示しています。SmartCard Console を起動する手順については、「SmartCard Console を起動するには (コマンド行)」を参照してください。

カードサービスの無効化または有効化

デフォルトでは、OCF サーバーは次のカードサービスを認識します。

「カードサービス」ダイアログボックスを使用すると、特定のカードのサービスが有効であるかどうかを確認したり、カードサービスを無効にしたりできます。カードサービスを無効化または有効化する手順は、「カードサービスを無効または有効にするには (SmartCard Console)」を参照してください。

スマートカードの ATR 属性の追加または変更

ATR (Answer-To-Reset) 属性には、スマートカードのバージョンを識別する数値が含まれています。ATR 属性は、スマートカードのメーカーにより提供されています。

サポートされるスマートカードは、次の ATR 属性値を持ちます。


PayFlex.ATR      = 3B6900005792020101000100A9 
                   3B69110000005792020101000100
IButton.ATR      = 008F0E0000000000000000000004000034909000
CyberFlex.ATR    = 3B169481100601810F 3B169481100601811F

初めてスマートカードを設定するときには、スマートカード上の ATR を OCF サーバーに識別させます。

サイト内で使用しているスマートカードのメーカーが ATR 属性の異なる新しいカードタイプを発行した場合、システムの ATR 属性を変更する必要があります。このとき、新しいスマートカードを使用するすべてのシステムで ATR 属性を変更する必要があります。

アプレットを SmartCard Console からロードしようとしていて、次に示すメッセージが表示された場合は、ATR を追加しなければならない場合もあります。


No compatible devices inserted

新しいスマートカードの ATR を追加または変更する手順については、「スマートカードの ATR を追加または変更するには (SmartCard Console)」を参照してください。

SolarisAuthApplet アプレットの読み込み

ユーザープロファイル情報を追加するためには、デフォルトの SolarisAuthApplet アプレットをスマートカードに追加する必要があります。

アプレットをスマートカードに読み込む手順については、「アプレットをスマートカードに読み込むには (SmartCard Console)」を参照してください。

スマートカード上でのユーザー情報の作成

デフォルトのアプレットを読み込んだ後は、スマートカード上でユーザープロファイル情報を作成します。ユーザープロファイル情報は、ログイン名、パスワード、PIN (Personal Identification Numver)、およびセキュリティ保護されているアプリケーションなど、そのユーザーについての個人情報を指定します。

スマートカード上でユーザー情報を作成する手順については、「スマートカード上でユーザー情報を作成するには (SmartCard Console)」を参照してください。

スマートカードの認証属性の定義

各スマートカードに属性を設定するときは、ユーザーの要件、サイト内のセキュリティポリシー、および使用しているスマートカードのタイプによる制限に基づいて設定します。各スマートカードに対応する属性を定義するには、「アプレットを構成」ダイアログボックスを使用します。システム上のクライアントおよびサーバープログラムは、スマートカード上の属性を読み取って、特定のアプリケーションへのアクセス権をユーザーに与えるかどうかを決定します。

表 4-1 スマートカードの認証属性

属性 

サポートされているスマートカードのタイプ 

説明 

PIN 

すべて 

個人の ID 番号 (PIN: Personal Identification Number) 

Password (パスワード) 

すべて 

ユーザーのパスワード (システムまたはネームサービスのパスワードデータベースにあるパスワードと同じ) 

User (ユーザー) 

すべて 

ユーザーのログイン名 (システムまたはネームサービスのパスワードデータベースにあるログイン名と同じ) 

Application (アプリケーション) 

すべて 

ユーザーが当該スマートカード上の情報を使ってログインする必要があるアプリケーション 

Private Key (非公開鍵) 

CyberFlex、 iButton 

ファイルに署名するときに使用される非公開鍵。詳細は、「非公開鍵属性」を参照

Certificate (証明書) 

CyberFlex、 iButton 

構成可能な属性であるが、Solaris スマートカードには証明書用に定義されたインタフェースは用意されていない。詳細は、smartcard(1M) のマニュアルページを参照


注 -

このような属性は、Solaris スマートカードが提供する SolarisAuthApplet アプレットで初期化されたスマートカードだけに適用されます。異なるスマートカードアプレットを使用している場合、利用可能な属性は異なる場合があります。詳細は、smartcard(1M) のマニュアルページを参照してください。


PIN 属性

PIN 属性は、スマートカードの PIN (Personal Identification Number) を定義する認証属性です。スマートカードに作成されているデフォルトの PIN は $$$$java です。管理者またはユーザーは $$$$java を個人専用の PIN に変更できます。サイトのすべてのユーザーに、同じデフォルトの PIN 名 (たとえば changeme など) を付与することも考えられます。その後、各ユーザーが、その PIN をユーザー自身しか知らない値へ必ず変更するようにします。


注 -

SolarisAuthApplet アプレット内の各アプリケーションには複数のログイン名とパスワードの組み合わせを定義できますが、このアプレットには PIN は 1 つしか定義できません。


スマートカードの PIN を変更する手順については、「スマートカード上の PIN を変更するには (SmartCard Console)」を参照してください。

ユーザーは後でこの PIN を変更できます。「スマートカード上の PIN を変更するには (コマンド行)」を参照してください。

ユーザー属性とパスワード属性

ユーザー属性とパスワード属性は、ユーザーを識別して、ユーザーをスマートカードの PIN に関連付ける認証属性です。これらの属性を設定するには、ユーザーのログイン名とパスワードを知っている必要があります。

ユーザー属性とパスワード属性がどのように機能するか

デフォルトの認証機構 (PIN Password) を使用するシステムでは、ocfserv は PIN が認証されていることを確認します (「PIN Password がどのように機能するか」を参照)。次に、ocfserv はスマートカード上のユーザー属性とパスワード属性を読み取ります。スマートカード上のパスワードがシステムのパスワードデータベース内にあるユーザーのエントリと一致する場合、ocfserv はユーザーのそのアプリケーションへのアクセスを許可します。

スマートカードには複数のログイン名とパスワードの組み合わせを定義できます。たとえば、スマートカードのユーザーが別のアプリケーションにアクセスするために、異なるログイン名とパスワードを使用する必要がある場合などです。また、システム管理者の場合、通常のユーザーとしてのログイン名とパスワードの他に、スーパーユーザーとしてのパスワードもスマートカードに定義できます。ただし、スマートカードに定義できる PIN は 1 つだけです。

アプリケーション属性

アプリケーション認証属性を使うと、ユーザーがログイン名とパスワードを使ってログインする必要があるアプリケーションを指定できます。たとえば、デスクトップにスマートカードを使用したログインが必要な場合、スマートカード上のログイン名とパスワードに関連付けられたアプリケーションとして、dtlogin をアプリケーション属性に指定する必要があります。また、サイトに固有なアプリケーション (財務パッケージや個人データベースなど) にスマートカードを使用したログインが必要な場合、そのアプリケーションの名前をアプリケーション属性に指定します。

スマートカード上でアプリケーションを初期化する前に、ユーザーがスマートカードによる認証を使ってアクセスする必要があるアプリケーションを決定しておきます。root (スーパーユーザー) など、一般のユーザーには使用が制限されているアプリケーションにログインする必要があるユーザー (システム管理者など) 用にスマートカードを用意する場合は、この作業は特に重要になります。

アプリケーション属性がどのように機能するか

スマートカード上のアプリケーション属性は他の認証属性と共に機能します。たとえば、次の情報を使って、ユーザー Frank のスマートカードを初期化する場合を考えます。

これらの情報は、次のようにコマンド行に入力する必要があります。


# smartcard -c init -A A000000062030400 -P `$$$$java' application=dtlogin 
user=frank password=changeme

Frank が自分のスマートカードをカードリーダーに挿入して、デスクトップにログイン (dtlogin) しようとすると、ocfserv はスマートカードを読み取って、dtlogin に関連付けられた認証属性があるかどうかを調べます。

ocfserv サーバーは、ユーザー属性とパスワード属性が dtlogin に関連付けられていることを検出すると、PIN を入力するように Frank に要求します。PIN が入力されると、スマートカード上に格納された、dtlogin アプリケーションに割り当てられている PIN と比較します。また、ocfserv は Frank のスマートカード上のログイン名とパスワードがシステムのパスワードデータベース内にある Frank のエントリと一致するかどうかを調べて、Frank が本人であることを確認します。これらの属性が一致した場合、Frank はデスクトップにログインできます。

OCF サーバーとクライアントアプリケーションのデフォルトの認証機構の設定

authmechanism」属性は、クライアントアプリケーションがローカルシステム上で使用する認証機構を定義します。Solaris スマートカードは、次の 3 つの認証機構を提供します。

デフォルトの「authmechanism」属性は PIN Password です。

PIN Password がどのように機能するか

ocfserv とクライアントアプリケーションのデフォルトの認証機構は PIN Password です。この場合、ユーザーがアプリケーション (デスクトップなど) にログインしようとすると、アプリケーションによりユーザーは PIN の入力を求められます。

ocfserv サーバーは、ユーザーが入力した PIN とスマートカードの PIN を照合して、ユーザーが本人であることを確認します。PIN が一致した場合、アプリケーションへのアクセス権がユーザーに与えられます。あるいは、ocfserv がさらにスマートカード上の補助的な認証属性を読み取ります。

コマンド行からこの属性を設定する手順については、「サーバーとクライアントアプリケーションのデフォルトの認証機構を設定するには (コマンド行)」を参照してください。

クライアントアプリケーションのデフォルトの認証

ローカルシステムの認証を設定するときは、スマートカード上に対応する認証機構を持っていないユーザーはアクセスできないように設定します。デフォルトでは、スマートカードでログイン中に、ocfserv はサーバーの認証機構を使用します。

ユーザーが異なる認証シーケンスセットでクライアントアプリケーションにアクセスしようとした場合は、ログイン中 ocfserv はクライアントの認証機構を使用します。

クライアントの認証属性を構成する前に、ocfserv の認証機構が有効になっている必要があります。デフォルトでは、Solaris スマートカードがサポートするすべての認証機構は、Solaris 8 リリースをインストールしたときに有効になります。サポートされている認証機構は次のとおりです。

個々の OCF クライアントアプリケーションが使用するデフォルトのスマートカードとデフォルトの認証シーケンスには、属性を定義する必要があります。ローカルシステム上で動作する重要なアプリケーションのセキュリティを保護するには、スマートカードを使用したログインが必要となるように構成します。デフォルトでは、アプリケーション dtlogin がセキュリティ保護されています。このアプリケーションは、共通デスクトップ環境 (CDE) へのログインを制御します。

アプリケーションは、必ずしも、ocfserv と同じ認証シーケンスを持つ必要はありません。ocfserv の認証シーケンスと異なる場合、クライアントの認証シーケンスが優先されます。たとえば、ocfserv のデフォルトの認証機構として「password」を構成しておいて、クライアントアプリケーション (Solaris デスクトップなど) にアクセスしようとするユーザーの認証シーケンスに PIN 認証を追加することもできます。

コマンド行からこの属性を設定する手順については、「サーバーとクライアントアプリケーションのデフォルトの認証機構を設定するには (コマンド行)」を参照してください。

スマートカードの操作の有効化

スマートカード設定における最後の手順は、スマートカードの操作を有効にすることです。

スマートカードの操作を有効にする手順は、「スマートカードの操作を有効にするには (コマンド行)」 を参照してください。

スマートカードを有効化し、かつ以下の状態である場合、dtlogin によるログインはできません。

現在使用されているスマートカードの構成がなく、スマートカードを有効化する場合は、次のことを行います。

  1. 「dtlogin」ログイン画面の「オプション」メニューから「コマンド行ログイン」を選択します。

  2. スーパーユーザー (root) としてログインします。

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

スマートカードの操作を無効にする手順は、「スマートカードの操作を無効にするには (コマンド行)」 を参照してください。