我在玩我的個人項目中使用亞馬遜網絡服務。我抓住了他們的適用於.NET的AWS開發工具包,我正在使用它,但我有點困惑。保持與亞馬遜網絡服務的祕密密鑰的祕密
訪問Web服務(在這種情況下,SimpleDB的,雖然我不認爲這是真的材料的問題)通過公/私密鑰對授權。
的AWS SDK用於創建一個客戶端對象.NET API要求私鑰:
AWSClientFactory.CreateAmazonSimpleDBClient(publicKey, privateKey);
這是一個客戶端應用程序,因此代碼將完全在客戶端上運行。
建議客戶端需要訪問我的私鑰才能訪問SimpleDB。但亞馬遜一再強調,我的私鑰不能離開我的控制。
這是沒有道理給我,所以我想我必須失去了一些東西。
客戶端應用程序是否是亞馬遜Web服務的錯誤模型,是否適用於他們的AWS SDK for .NET,或者我是否錯過了使客戶端應用程序完全合理的東西?有沒有一種很好的方法可以解決這個問題,而無需創建自己的代理服務來驗證客戶端並將他們的請求轉發給SimpleDB?
我很感謝答案。我主要在桌面環境中工作,所以認證和提供簽名url和頭文件的可能性從未進入我的腦海。 – 2010-05-13 12:38:29
如果你走這條路,是否仍然可以使用.NET API? – 2010-10-13 16:34:12
我自己的問題的答案是「否」 - 您必須修改代碼以遠程調用AWSSDKUtils.HMACSign。 – 2010-10-18 18:44:14