【问题标题】:How do I interact with a kerberos server from my own application如何从我自己的应用程序与 kerberos 服务器交互
【发布时间】:2010-09-29 12:15:02
【问题描述】:

我的网络有一个用于用户名/密码验证的 kerberos 服务器。运行我的应用程序的机器具有正常工作的 kerberos 客户端,因此用户可以使用 kinit 等。

如何通过我自己的自定义应用程序以编程方式与服务器交互?示例的首选语言是 C。

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

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

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

【问题讨论】:

    标签: authentication kerberos access-control gssapi


    【解决方案1】:

    Sun 在他们的书 Solaris Security for Developers Guide 中对此进行了介绍。对您特别有帮助的可能是Appendix A - Sample C-based GSSAPI programsChapter 5 - GSS-API Client Example

    【讨论】:

    • 感谢 alnc 和 ColeJohnson 的新链接。
    【解决方案2】:

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

    http://www.h5l.org

    【讨论】:

      【解决方案3】:

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

      在 Windows 上,Kerberos 是操作系统支持的本机协议,许多高级 Win32 API 将有效地免费为您提供。使其与非 Windows kerberos 服务器互操作是可能的,但并非易事。

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

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

      如果您可以就您的要求添加更多细节,我可以稍微确定一下这个答案。

      【讨论】:

      • 好的,我的问题范围缩小了一些
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-28
      • 1970-01-01
      • 1970-01-01
      • 2012-11-15
      • 2017-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多