我在java中使用GSS实现S4U协议。由于java 7不支持这个协议,我打算用C语言中的gss api方法编写一个JNI包装器,它在java中没有等价物。
作为其中的一部分,我正在编写一个JNI而不是 gss_acquire_cred_impersonate_name ,如上所述 http://k5wiki.kerberos.org/wiki/Projects/Services4User#gss_acquire_cred_impersonate_name。
此方法采用先前填充的输入凭据句柄(gss_cred_id_t)并填充输出凭据句柄。在我的java代码中,我创建了一个GSSCredential,我需要以gss_cred_id_t的形式传递给C函数,并将输出凭证句柄从gss_cred_id_t转换回GSSCredential以供进一步使用。
如何将GSSCredential对象导出到字节数组,反之亦然,以便与C函数进行通信?
由于
答案 0 :(得分:0)
答案 1 :(得分:0)
当我遇到类似问题时,我使用https://github.com/cconlon/kerberos-java-gssapi并通过包装器完成了所有GSS-API。 (但这只是在完全放弃Java之前的一个临时阶段。)