2009-01-04 91 views
1

我的网络有一个用于用户名/密码认证的kerberos服务器。运行我的应用程序的机器具有正常运行的kerberos客户端,因此用户可以使用kinit等。如何从我自己的应用程序与kerberos服务器进行交互

如何以编程方式与我的自定义应用程序交互服务器?举例来说,首选语言是C.

我希望我的应用程序的用户在访问某些功能前通过kerberos服务器进行身份验证。我预计不得不问他们的用户名和密码 - kinit可能没有被调用。

托管应用程序的计算机运行OS X和Debian/Linux。

我相信答案很可能涉及GSSAPI。如果是这样,有没有好的教程呢?

回答

0

GSSAPI确实是推荐的方法,但具体细节取决于您的语言环境以及是否需要与Windows互操作。你的Kerberos提供商是Windows还是其他?

在Windows上,Kerberos是操作系统支持的本地协议,许多高级别的Win32 API将免费提供给您。使其与非Windows kerberos服务器交互是可能的,但不是微不足道的。

在UNIX上,您可能首先需要安装kerberos客户端支持并使其工作 - 但如果您的网络已经有kerberos服务器,则可能已经为您完成了。

与Java一样,Windows包含GSSAPI的实现,大多数UNIX都有一个实现。我相信GSSAPI插件也可用于PHP。

如果您可以根据您的要求添加更多细节,我可以坚持一点这个答案。

+0

好吧,我做了我的问题有点窄范围 – 2009-01-04 18:13:41

1

看看Heimdal,他们有一个广泛的kerberos API,下面的网站有一个很好的doxygen安装描述API。

http://www.h5l.org

相关问题