Sun Enterprise Authentication Mechanism ガイド

チケットの管理

この節では、チケットを取得、表示、および破棄する方法を説明します。チケットの概要については、「SEAM はどのように動作するのか」を参照してください。

チケットを意識する必要があるか

SEAM をインストールすると Kerberos は login コマンドに組み込まれるため、ユーザーはログイン時にチケットを自動的に取得します。Kerberos 化されたコマンド rshrcptelnet、および rlogin は、通常チケットを他のマシンに転送するように設定されているため、ユーザーはこれらのマシンへのアクセスを取得するためのチケットを明示的に要求する必要はありません。この動作はデフォルトです。チケットを自動的に転送しないように SEAM を構成することもできます。チケットの転送についての詳細は、「Kerberos 化されたコマンドの概要」-f-F によるチケットの転送」を参照してください。

ほとんどの Kerberos 化されたコマンドは、終了時にチケットを自動的に破棄します。しかし、使用後に Kerberos チケットを確実に破棄したい場合は、kdestroy で破棄することができます。kdestroy についての詳細は、「チケットを破棄するには」を参照してください。 チケットの有効期間については、「チケットの有効期間」を参照してください。

チケットを作成するには

通常、チケットはユーザーのログイン時に自動的に作成されるため、チケットを取得するために特に何かをする必要はありません。しかし、次のような場合では、チケットを作成する必要があります。

チケットを作成するには、kinit コマンドを使用します。


% /usr/krb5/bin/kinit 
 

kinit を使用するにはユーザーのパスワードが必要です。kinit コマンドの完全な構文については、kinit(1) のマニュアルページを参照してください。

例 - チケットを作成する

次の例では、ユーザー jennifer が自分のシステム上でチケットを作成しています。


% kinit
Password for jennifer@ENG.ACME.COM:  <パスワードを入力する>
 

次の例では、ユーザー david-l オプションで 3 時間だけ有効なチケットを作成しています。


% kinit -l 3h david@ACME.ORG
Password for david@ACME.ORG:  <パスワードを入力する>
 

次の例では、-f オプションを指定して david が自分用の転送可能チケットを作成しています。転送可能チケットを使用すると、たとえば、david は 2 番目のシステムにログインして、3 番目のシステムに対し telnet を実行できます。


% kinit -f david@ACME.ORG
Password for david@ACME.ORG:     <パスワードを入力する>
 

転送可能チケットの動作についての詳細は、-f-F によるチケットの転送」「チケットの種類」を参照してください。

チケットを表示するには

すべてのチケットが同じであるというわけではありません。たとえば、あるチケットは転送可能で、別のチケットは遅延可能で、また別のチケットは両方とも可能であるような場合もあります。自分が持っているチケットやその属性を調べるには、klist コマンドに -f オプションを指定して実行します。


% /usr/krb5/bin/klist -f

次の記号は、klist で表示される、各チケットに関連する属性を示しています。

転送可能 

転送 

代理可能 

代理 (プロクシ) 

遅延可能 

遅延 

更新可能 

初期 

無効 

チケットのさまざまな属性については、「チケットの種類」を参照してください。

例 - チケットを表示する

次の例は、ユーザー jennifer の初期チケットが転送可能であり (F)、遅延されたものだが (d)、まだ有効でない (i) ことを示しています。


% /usr/krb5/bin/klist -f
Ticket cache: /tmp/krb5cc_74287
Default principal: jenniferm@ENG.ACME.COM
 
Valid starting                 Expires                 Service principal
09 Mar 99 15:09:51  09 Mar 99 21:09:51  nfs/ACME.SUN.COM@ACME.SUN.COM
        renew until 10 Mar 99 15:12:51, Flags: Fdi
 

次の例は、ユーザー david の 2 つのチケットが別のホストから自分のホストに転送された (f) こと、さらに転送可能である (F) ことを示してます。


% klist -f
Ticket cache: /tmp/krb5cc_74287
Default principal: david@ACME.SUN.COM
 
Valid starting                 Expires                 Service principal
07 Mar 99 06:09:51  09 Mar 99 23:33:51  host/ACME.COM@ACME.COM
        renew until 10 Mar 99 17:09:51, Flags: fF
 
Valid starting                 Expires                 Service principal
08 Mar 99 08:09:51  09 Mar 99 12:54:51  nfs/ACME.COM@ACME.COM
        renew until 10 Mar 99 15:22:51, Flags: fF

チケットを破棄するには

チケットは通常、そのチケットを作成したコマンドが終了すると自動的に破棄されます。しかし、チケットを使用し終えたときに確実に破棄したい場合は、明示的に Kerberos チケットを削除することもできます。チケットは無断で使用され、そのチケットは有効期限がくるまで使用される可能性があります (ただし、そのチケットを使用するには、暗号を復号化しなければなりません)。

チケットを削除するには、kdestroy コマンドを使用します。


% /usr/krb5/bin/kdestroy

kdestroy は、ユーザー本人のすべてのチケットを破棄します。特定のチケットだけを選択して破棄することはできません。

システムから離れるときに自分のアクセス権が使用される心配がある場合は、kdestroy を使用するか、スクリーンセーバーで画面をロックします。


注 -

必ずチケットが破棄されるようにするには、ホームディレクトリにある .logout ファイルに kdestroy コマンドを追加します。

PAM モジュールが構成されている場合 (デフォルトであり、通常デフォルトのまま使用)、チケットはログアウト時に自動的に破棄されます。したがって、kdestroy の呼び出しを .logout ファイルに追加する必要はありません。しかし、PAM モジュールが構成されていない場合、あるいは、PAM モジュールが構成されているかどうかが分からない場合は、.login ファイルに kdestroy を追加して、システム終了時に必ずチケットが破棄されるようにしてください。