kinit は、Kerberos チケット認可チケット (Ticket Granting Ticket、TGT) の取得とキャッシュに使用されます。このツールの機能は、SEAM や MIT リファレンス実装など、他の Kerberos 実装に一般的に見られる kinit ツールと類似しています。
kinit を実行する前に、Key Distribution Center (KDC) を使用してユーザーを主体として登録する必要があります。
kinit [ commands ] <principal name> [<password>]
Windows プラットフォームではデフォルトで、<USER_HOME>\krb5cc_<USER_NAME>
というキャッシュファイルが生成されます。<uid>
は、システムにログインしているユーザーのユーザー ID 番号です。
<USER_HOME>
は java.lang.System
プロパティー user.home
から取得されます。<USER_NAME>
は java.lang.System
プロパティー user.name
から取得されます。<USER_HOME>
が null の場合、キャッシュファイルは、kinit を実行したカレントディレクトリに保存されます。<USER_NAME>
は、オペレーティングシステムのログインユーザー名です。このユーザー名は、ユーザーの主体名と別の名前にすることもできます。たとえば Windows NT では、c:\winnt\profiles\duke\krb5cc_duke
のようになります。この場合、duke
は <USER_NAME>
であり、c:\winnt\profiles\duke
は <USER_HOME>
です。
デフォルトでは、キータブ名は、Kerberos 設定ファイルから取得されます。Kerberos 構成ファイルでキータブ名が指定されていない場合、キータブ名は <USER_HOME>\krb5.keytab
であると見なされます。
コマンド行で password
オプションを使用する場合、パスワードを指定しないと、kinit からパスワードの入力を要求されます。
password
は、テスト目的でのみ用意されています。スクリプトにパスワードを記述したり、コマンド行にパスワードを入力したりしないでください。このようにした場合、パスワードが漏洩する危険性があります。詳細は、kinit のマニュアルページを参照してください。
使用法: kinit [-fp] [-c <cache_name>] [-k] [-t <keytab_filename>] [<principal>] [<password>] [-help]
コマンドオプション | 説明 |
---|---|
-A |
アドレスを含めない。 |
-f |
転送可能チケットを発行する。 |
-p |
プロキシ化可能チケットを発行する。 |
-c <cache_name> |
キャッシュ名 (すなわち、FILE:d:\temp\mykrb5cc )。 |
-k |
キータブを使用。 |
-t <keytab_filename> |
キータブ名 (すなわち、d:\winnt\profiles\duke\krb5.keytab )。 |
<principal> |
プリンシパル名 (すなわち、duke@example.com )。 |
<password> |
プリンシパルの Kerberos パスワード。 コマンド行またはスクリプトで指定しないこと。 |
-help |
説明を表示する。 |
デフォルトサービスについて、現在のクライアントホストから認証に対して有効な資格を要求し、デフォルトの場所 (c:\winnt\profiles\duke\krb5cc_duke
) に資格キャッシュを保存します。
kinit duke@JAVA.SUN.COM
異なる主体ごとにプロキシ化可能な資格を要求し、指定したファイルキャッシュにこれらの資格を保存します。
kinit -p -c FILE:c:\winnt\profiles\duke\credentials\krb5cc_cafebeef cafebeef@JAVA.SUN.COM
異なる主体ごとにプロキシ化可能および転送可能な資格を要求し、指定したファイルキャッシュにこれらの資格を保存します。
kinit -f -p -c FILE:c:\winnt\profiles\duke\credentials\krb5cc_cafebeef cafebeef@JAVA.SUN.COM
kinit のヘルプメニューを表示します。
kinit -help
password
フラグは、テスト用に用意されているだけです。コマンド行にパスワードを入力しないでください。パスワードを入力するとセキュリティーホールが生じます。というのは、たとえば、システムで実行中のすべてのプロセスを列挙しているときに、そのパスワードが攻撃者に見つけられる可能性があるからです。