2017-06-01 67 views
0

我正在開發一個跨平臺的應用程序,它將連接到在Windows Server 2012上運行的代理服務器。訪問代理服務器的憑據將是系統憑據,以便用戶不會不必手動輸入憑據。我將Windows和Linux計算機連接到Windows服務器域,並使用WS 2k12中的DNS條目。我能夠使用WinHTTP API(NTLM)在Windows上完成上述要求。在Linux上,我使用cURL。我閱讀了關於使用gssapi構建cURL並在Linux機器上安裝Kerberos的問題,但我認爲用戶必須對他/她的系統進行重大更改,並且我不確定服務器端是否需要進行某些更改。有沒有什麼辦法可以實現這個功能,這樣當用戶在Linux機器上使用應用程序時,用戶必須對他進行微小的更改?Linux上的cURL連接到Windows Server 2012的SingleSignOn

回答

0

Linux環境中的更改等同於加入Windows域。通常情況下,machime應該只需要/etc/krb5.conf中的正確內容。系統管理員提供它是一項工作。無論如何,如果用戶想要使用任何Windows域服務,用戶將需要此更改。

如果您認爲在您的環境中更改/etc/krb5.conf不是一個可行的選項,您可以通過設置KRB5_CONFIG環境變量並自行驗證此文件來覆蓋應用程序中的此位置。如果你這樣做了,你可能還想覆蓋其他Kerberos位置,如KRB5CCNAME,以便將應用程序與任何系統範圍的Kerberos設置完全隔離。

爲了登錄並能夠使用SSO,用戶必須使用kinit命令。如果您願意,您的應用程序可以代表用戶代表啓動此命令。

相關問題