GSS-API のプログラミング

人が読める名前についての構文

GSS-API の実装によっては、名前の出力可能な形式についての構文が異なる場合があります。移植性を最大限にしたいアプリケーションでは、名前を比較するときに、人が読める (つまり、出力可能な) 形式で比較するのではなく、gss_compare_name() を使用して一致するかどうかを内部形式で比較するべきです。

Sun の 実装の gss_display_name() は名前を次のように表示します。input_name 引数がユーザープリンシパルを指す場合、gss_display_name()user_principal@realmoutput_name_buffer として、gss_OID 値を output_name_type として戻します。Kerberos v5 が実際の機構である場合、gss_OID は 1.2.840.11354.1.2.2 になります。

gss_display_name() に指定した名前が gss_import_name() への呼び出しで作成されていた場合、GSS_C_NO_OID を名前型として指定すると、gss_display_name()GSS_C_NO_OIDoutput_name_type パラメータ経由で戻します。

匿名の形式

gss_display_name() 関数は、匿名の GSS-API プリンシパルを示すとき、文字列 <anonymous> を出力します。この名前に関連する名前型 OID は GSS_C_NT_ANONYMOUS です。Sun の実装で有効な印刷可能な名前の中では、これ以外に < で始まり > で終わるものは存在しません。