2009-01-04 88 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

相關問題