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);
解説
プリンシパルのための初期の資格証明チケットを取得します。 krb5_get_in_cred は、チケットを取って来るために使用する krb5_get_in 関数その他のすべての関数です。他の krb5_get_in 関数は、より特殊化され、そのため使用することがいくらか簡単となります。
ユーザとパスワードのみを検証する必要があるなら、代わりに、はるかに簡単なインタフェースがある krb5_verify_user(3) を使用することを検討してください。
krb5_get_in_tkt と krb5_get_in_cred は、初期の資格証明を取って来て、 key_proc 引数を使用するキーの後で問い合わせます。 2 つの関数の違いは、 krb5_get_in_tkt が krb5_creds
の資格証明を格納し、一方、 krb5_get_in_cred が、 krb5_ccache
に資格証明を格納することです。
krb5_get_in_tkt_with_password, krb5_get_in_tkt_with_keytab と krb5_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_types が NULL であるなら、関数は、事前認証なし試み、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 |