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

名称

krb5_get_creds, krb5_get_creds_opt_add_options, krb5_get_creds_opt_alloc, krb5_get_creds_opt_free, krb5_get_creds_opt_set_enctype, krb5_get_creds_opt_set_impersonate, krb5_get_creds_opt_set_options, krb5_get_creds_opt_set_ticketKDC から資格証明を取得する

ライブラリ

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

書式

#include < krb5.h>

krb5_error_code
krb5_get_creds( krb5_context context, krb5_get_creds_opt opt, krb5_ccache ccache, krb5_const_principal inprinc, krb5_creds **out_creds);

void
krb5_get_creds_opt_add_options( krb5_context context, krb5_get_creds_opt opt, krb5_flags options);

krb5_error_code
krb5_get_creds_opt_alloc( krb5_context context, krb5_get_creds_opt *opt);

void
krb5_get_creds_opt_free( krb5_context context, krb5_get_creds_opt opt);

void
krb5_get_creds_opt_set_enctype( krb5_context context, krb5_get_creds_opt opt, krb5_enctype enctype);

krb5_error_code
krb5_get_creds_opt_set_impersonate( krb5_context context, krb5_get_creds_opt opt, krb5_const_principal self);

void
krb5_get_creds_opt_set_options( krb5_context context, krb5_get_creds_opt opt, krb5_flags options);

krb5_error_code
krb5_get_creds_opt_set_ticket( krb5_context context, krb5_get_creds_opt opt, const Ticket *ticket);

解説

krb5_get_creds() は、 ccache で最初に見つかる opt によって指定された資格証明を取って来て、それが存在しないなら、 ccache の krbtgts を使用する KDC から資格証明を取って来ます。資格証明は、 out_creds で返され、関数 krb5_free_creds() を使用して解放されるべきです。

構造体 krb5_get_creds_opt は、 krb5_get_creds() の振る舞いを制御します。構造体は、アクセス関数で構造体の内容を設定できる消費者にとって、不透明 (サイズおよび形がわからない) です。すべてのアクセス関数は、アクセス関数に渡されるデータのコピーを作るので、外部の消費者は、 krb5_get_creds() を呼び出す前に、メモリを解放します。

構造体 krb5_get_creds_opt は、 krb5_get_creds_opt_alloc() で割り付けられ、 krb5_get_creds_opt_free() で解放されます。また、解放関数は、アクセス関数によって設定された構造体の内容を解放します。

krb5_get_creds_opt_add_options() と krb5_get_creds_opt_set_options() は、構造体にオプションを追加して、設定します。設定できるオプションは、次の通りです:

KRB5_GC_CACHED
単に ccache をチェックし、資格証明を取って来るためのネットワークに出て行きません。
KRB5_GC_USER_USER
は、ユーザチケットをユーザに要求します。このオプションは、結果のユーザを ccache のユーザ資格証明に格納しません。
KRB5_GC_EXPIRED_OK
たとえその期限が切れても資格証明を返し、デフォルトの振る舞いは、KDC から資格証明を再び取って来ることを試みます。
KRB5_GC_NO_STORE
結果の資格証明を ccache に格納しません。

krb5_get_creds_opt_set_enctype() は、アプリケーションの好みの暗号化タイプを設定します。 KDC に一致するものがないなら、ファンクションコールが失敗するので、義務でないなら、これを設定しません。

krb5_get_creds_opt_set_impersonate() は、成り済ますためのプリンシパルを設定します。クライアントとして成り済ましのプリンシパルとサービスとして要求側があるチケットを返します。要求されたプリンシパルは、krbtgt でクライアントのプリンシパルと同じでなければならないことに注意してください。

krb5_get_creds_opt_set_ticket() は、ユーザからユーザで使用される特別のチケット、または含まれた委任使用の場合を設定します。

June 15, 2006 HEIMDAL