0

我是 GSS-API 的新手。我在一个项目中,其目标是实现 KERBEROS。
我阅读了麻省理工学院的应用程序开发人员文档 - http://web.mit.edu/kerberos/krb5-latest/doc/appdev/index.html链接。
并阅读 RFC-2744 GSS-API C BINDINGS。

我的问题是,
* KERBEROS 协议包括 -
AS-REQ、AS-REP、TGS_REQ、TGS-REP、AP-REQ、AP-REP
* GSS-API包括 -
凭证管理例程(例如 gss_acquire_cred)、上下文级别例程(例如 gss_init_sec_context)等

如何利用 GS​​S-API 例程来实现 kerberos?
因为,我没有看到 kerberos 中有任何 TICKET 生成例程、TIMESTAMP 嵌入例程等?

提前致谢。

4

1 回答 1

0

好的,首先,gss-api 是(通用安全服务 api)。它被实现为 kerberos api 之上的一个层。请记住,gssapi 不需要使用 kerberos(它也可以很容易地使用其他一些身份验证协议)。

GSS-API 没有获取 TGT 的方法。这是由 kerberos api 完成的(您可以编写一些基于 krb5 api 的代码来获取 kerberos cred,然后转换为 gsscred)

上下文是由双方(身份验证发起者和接受者)维护的对象。它们通过使用 gss_init_sec_context(发起方侧调用)和 gss_accept_sec_context(接受方侧)进行更新。如果是 Kerberos,基本上就是使用 TGT、ST 等,然后最终建立信任并共享会话密钥的整个过程。

因此,回答您的问题 - 您不使用 GSS-API 来实现 Kerberos 功能。情况恰恰相反。

于 2013-03-20T17:47:47.870 回答