2013-03-18 58 views
7

我在企業Internet代理後面的VMWare VPC中運行程序(Mathematica)。在IE,Chrome,Excel,Word,Acrobat Reader甚至MS Paint等VPC中安裝的各種程序都可以毫無問題地從Internet獲取數據,但Mathematica似乎無法正確處理代理。NTLM身份驗證和智能卡

我的猜測是它無法處理代理的NTLM身份驗證。

在前面的情況下,不同的防火牆後面,我取得了一些成功CNTLM爲數學和代理之間的中間。 CNTLM與代理進行會談,並負責NTLM身份驗證,Mathematica被賦予CNTLM偵聽的端口和IP地址(本地主機)以進行通信。然而,在那之前的案例中,我知道代理(即我自己)使用的憑證。

在當前情況下,我的登錄使用智能卡和PIN進行。 VPC獲得憑據通過透明(我不必輸入),顯然上面提到的所有程序自動知道它們。這讓我認爲Mathematica或CNTLM應該能夠做到這一點。但是,我用作密碼的PIN碼不起作用(事實上,如果我經常嘗試,我會被鎖定)。我假設所使用的證書實際上並不是我自己的,但是要麼是Windows密碼(我沒有作爲智能卡用戶),要麼是從我的PIN和智能卡派生的。

我的問題是:我如何使這個設置工作?這可能涉及CNTLM,但也歡迎其他解決方案。

+0

你檢查_Internet Connectivity_對話框中使用,從_Help_菜單訪問?如果您使用_Check Internet Connectivity_,那麼迴應如何? – likeitlikeit 2013-05-02 17:44:01

+0

@likeitlikeit我做了所有這些,而且我已經將Mathematica無法處理NTLM身份驗證的問題的主要原因歸咎於此。我已經和Wolfram Research討論過這個問題,他們同意MMA目前不能做NTLM。在這個問題中,我正在尋求一種解決方法,解決我遇到的這個問題的常見解決方法。 CNTLM有助於不執行NTLM的應用程序,但是這種情況下的問題在於,CNTLM不能與單點登錄環境一起工作,在這種環境下,不會從直接用戶名/密碼條目中獲取身份驗證。 – Nescio 2013-05-02 17:58:03

+0

感謝您的澄清。 – likeitlikeit 2013-05-03 17:15:34

回答

4

您可以通過使用瀏覽器代理,如Fiddler

像CNTLM也提琴手充當本地代理有一個機會,讓支持代理應用程序,但不支持NTLM(它們支持「純」代理)不是直接使用公司代理,而是通過本地代理。

與CNTLM不同,Fiddler不需要配置憑證,但它使用當前用戶信用來驗證Web請求。

我不能肯定這是你的解決方案,因爲我還沒有喜歡你的環境,但這種解決方法中所報道的這 answer about ruby gem 或/其他一些情況下工作,這blog about mercurial所以我希望這可以與Mathematica一起使用。

注意:一旦運行提琴手它會自動配置瀏覽器代理本身(http://localhost:8888),因此你可以「從我的系統或瀏覽器使用的代理服務器設置」離開你的應用程序的代理服務器設置。順便說提琴手它不僅是一個本地代理和也可以用於故障排除或調試,功能列表是here

+1

謝謝。它完美的作品。 – Nescio 2013-05-02 23:11:12