如何正确使用gss_import_name?

时间:2010-11-14 19:38:16

标签: c kerberos gssapi

我在客户端使用gss_import_name,使用GSS_C_NT_HOSTBASED_SERVICE来获取像server / server-host @ realm这样的主体。

我这样打电话,

  

gss_import_name(状态,“服务”,   GSS_C_HOSTBASED_SERVICE,output_name);

但是我得到的主要是,service / local-machine @ realm。从我已经学习的手册页中,我在内部使用krb5_sname_to_principal来获取主机名,如果为NULL则它使用localhost名称。现在我的问题是如何将正确的主机名(server-host)传递给gss-api来创建主体?

1 个答案:

答案 0 :(得分:3)

我忽略了它。以“service / server-host @ realm”的形式获取主体 我应该打电话给

  

使用gss_import_name(状态,   “服务@服务器主机”,   GSS_C_HOSTBASED_SERVICE,output_name);

而不是

  

gss_import_name(状态,“服务”,   GSS_C_HOSTBASED_SERVICE,output_name);

如果缺少主机名,则它假定为本地主机名。