как правильно использовать gss_import_name? - PullRequest
1 голос
/ 14 ноября 2010

Я использую gss_import_name на стороне клиента, используя GSS_C_NT_HOSTBASED_SERVICE, чтобы получить принципал, такой как service / server-host @ realm.

Я звоню вот так,

gss_import_name (status, "SERVICE", GSS_C_HOSTBASED_SERVICE, output_name);

Но я получаю принцип каксервис / локальная машина @ область.Из man-страницы, которую я узнал, внутренне используется krb5_sname_to_principal для получения имени хоста, если NULL, то он принимает имя localhost.Теперь мой вопрос: как передать правильное имя хоста (server-host) в gss-api для создания принципала?

1 Ответ

3 голосов
/ 15 ноября 2010

Я забыл об этом. Чтобы получить принципал в форме 'service / server-host @ realm' Я должен позвонить

gss_import_name (статус, «Сервис @ сервер-хост», GSS_C_HOSTBASED_SERVICE, output_name);

вместо

gss_import_name (статус, «сервис», GSS_C_HOSTBASED_SERVICE, output_name);

Если имя хоста отсутствует, то оно считается локальным именем хоста.

...