Solaris スマートカードの管理

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

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

表 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 はデスクトップにログインできます。