2016-01-15 88 views
7

我可以使用AWS身份驗證來保護我的WCF服務。我試圖通過谷歌搜索找到這方面的內容,並找到調用已使用AWS身份驗證保護的服務的文章。不是一篇關於如何使用AWS保護WCF服務的文章。是不是有一個選項,是我對AWS認證的理解和對此的簽名錯誤。請指點我的文章開始。如何使用AWS身份驗證保護我的wcf服務

+0

爲了教導如何(而不是)搜索這類問題,我們應該發佈搜索(不)以找到問題的答案! – Rafareino

+0

你是在談論WCF SOAP服務還是WCF REST服務? – MvdD

回答

1

我打算假設你的打算是創建一個使用an HMAC based authentication scheme的WCF REST服務,如Amazon S3正在使用。

實現此目的的方法是創建您自己的WebServiceHost並覆蓋ApplyConfiguration方法。在這種方法中,您設置了一個新的ServiceAuthorizationManager

this.Authorization.ServiceAuthorizationManager = new MyServiceAuthorizationManager(); 

派生從WCF的ServiceAuthorizationManagerMyServiceAuthorizationManager類並重寫CheckAccessCore方法。

class MyServiceAuthorizationManager : ServiceAuthorizationManager 
{ 
    protected override bool CheckAccessCore(OperationContext operationContext) 
    { 
     // check the validity of the HMAC 
     // return true if valid, false otherwise; 
     return IsValidHMAC(WebOperationContext.Current); 
    } 
} 

有關算法實現的更多詳細信息,請參閱this answer

+0

正是我在找的東西,對不起我的賞金已經過期了,讓我再次打開賞金,並試圖獎勵你的賞金點 – Esen

+0

不錯,謝謝! – MvdD