EN JA
KRB5_GET_IN_TKT(3)
KRB5_GET_IN_TKT(3) FreeBSD Library Functions Manual KRB5_GET_IN_TKT(3)

名称

krb5_get_in_tkt, krb5_get_in_cred, krb5_get_in_tkt_with_password, krb5_get_in_tkt_with_keytab, krb5_get_in_tkt_with_skey, krb5_free_kdc_rep, krb5_password_key_proc推奨されない初期の認証関数

ライブラリ

Kerberos 5 ライブラリ (libkrb5, -lkrb5)

書式

#include < krb5.h>


krb5_error_code
krb5_get_in_tkt( krb5_context context, krb5_flags options, const krb5_addresses *addrs, const krb5_enctype *etypes, const krb5_preauthtype *ptypes, krb5_key_proc key_proc, krb5_const_pointer keyseed, krb5_decrypt_proc decrypt_proc, krb5_const_pointer decryptarg, krb5_creds *creds, krb5_ccache ccache, krb5_kdc_rep *ret_as_reply);

krb5_error_code
krb5_get_in_cred( krb5_context context, krb5_flags options, const krb5_addresses *addrs, const krb5_enctype *etypes, const krb5_preauthtype *ptypes, const krb5_preauthdata *preauth, krb5_key_proc key_proc, krb5_const_pointer keyseed, krb5_decrypt_proc decrypt_proc, krb5_const_pointer decryptarg, krb5_creds *creds, krb5_kdc_rep *ret_as_reply);

krb5_error_code
krb5_get_in_tkt_with_password( krb5_context context, krb5_flags options, krb5_addresses *addrs, const krb5_enctype *etypes, const krb5_preauthtype *pre_auth_types, const char *password, krb5_ccache ccache, krb5_creds *creds, krb5_kdc_rep *ret_as_reply);

krb5_error_code
krb5_get_in_tkt_with_keytab( krb5_context context, krb5_flags options, krb5_addresses *addrs, const krb5_enctype *etypes, const krb5_preauthtype *pre_auth_types, krb5_keytab keytab, krb5_ccache ccache, krb5_creds *creds, krb5_kdc_rep *ret_as_reply);

krb5_error_code
krb5_get_in_tkt_with_skey( krb5_context context, krb5_flags options, krb5_addresses *addrs, const krb5_enctype *etypes, const krb5_preauthtype *pre_auth_types, const krb5_keyblock *key, krb5_ccache ccache, krb5_creds *creds, krb5_kdc_rep *ret_as_reply);

krb5_error_code
krb5_free_kdc_rep( krb5_context context, krb5_kdc_rep *rep);

krb5_error_code
krb5_password_key_proc( krb5_context context, krb5_enctype type, krb5_salt salt, krb5_const_pointer keyseed, krb5_keyblock **key);

解説

このマニュアルページのすべての関数が、MIT の実装で非推奨であり、まもなく Heimdal でも非推奨となるでしょう、それらを使用しないでください。

プリンシパルのための初期の資格証明チケットを取得します。 krb5_get_in_cred は、チケットを取って来るために使用する krb5_get_in 関数その他のすべての関数です。他の krb5_get_in 関数は、より特殊化され、そのため使用することがいくらか簡単となります。

ユーザとパスワードのみを検証する必要があるなら、代わりに、はるかに簡単なインタフェースがある krb5_verify_user(3) を使用することを検討してください。

krb5_get_in_tktkrb5_get_in_cred は、初期の資格証明を取って来て、 key_proc 引数を使用するキーの後で問い合わせます。 2 つの関数の違いは、 krb5_get_in_tktkrb5_creds の資格証明を格納し、一方、 krb5_get_in_cred が、 krb5_ccache に資格証明を格納することです。

krb5_get_in_tkt_with_password, krb5_get_in_tkt_with_keytabkrb5_get_in_tkt_with_skey は、 krb5_get_in_cred と同じように動作しますが、さらに特殊化されています。

krb5_get_in_tkt_with_password は、認証するためにクライアントのパスワードを使用します。 password 引数が NULL であるなら、ユーザは、デフォルトのパスワード問い合わせ関数で問い合わされます。

krb5_get_in_tkt_with_keytab は、クライアントプリンシパルのためのサービスエントリに対して与えられたキータブを検索します。キータブが NULL であるなら、デフォルトのキータブが、使用されます。

krb5_get_in_tkt_with_skey は、初期の資格証明を取得するためにキーを使用します。

krb5_get_in 関数へのいくつかの共通の引数があり、これらは、次の通りです:

options は、 KDC_OPT フラグです。

etypes は、 NULL で終了した、クライアントが承認する暗号化タイプの配列です。

addrs は、初期チケットであるアドレスのリストです。それが NULL であるなら、リストは、ライブラリによって生成されます。

pre_auth_types は、 NULL で終了する、事前認証タイプの配列です。 pre_auth_typesNULL であるなら、関数は、事前認証なし試み、KDC が返した、それらの事前認証を返します。

ret_as_reply は、 ( NULL でないなら) KDC の応答で書き込まれ、 krb5_free_kdc_rep() で解放するべきです。

key_proc は、適切に塩が付けられた (salted) キーを返すべきである関数へのポインタです。 NULL を使用すると、デフォルトのパスワード問い合わせ関数を使用します。

NULL を使用する decrypt_proc は、デフォルトの暗号解読関数を使用します。

decryptarg は、暗号解読関数 decrypt_proc に渡されます。

creds は、要求されているべきである資格証明のためのテンプレートで書き込まれるべきです。 cred 構造体のクライアントとサーバ要素は、書き込まれなければなりません。関数の返り時に、それは、要求された資格証明 ( krb5_get_in_cred) の内容を含んでいるか、またはそれは、(他のすべての krb5_get_in 関数) krb5_free_creds(3) で解放されます。

ccache は、資格証明キャッシュ ccache に資格証明を格納します。資格証明キャッシュは、初期化されず、呼び出し側を thats up します。訳注: thats up の意味不明。

krb5_password_key_proc は、 krb5_get_in_cred または krb5_get_in_tkt への krb5_key_proc 引数として適切に使用されるライブラリ関数です。 keyseed は、 ヌル文字 (NUL) で終了する文字列へのポインタ、または NULL であるべきです krb5_password_key_proc は、パスワードが引数 keyseed として与えられないなら、コンソールでパスについてユーザに問い合わされます。

krb5_free_kdc_rep() は、 rep の内容を解放します。

May 31, 2003 HEIMDAL