我正在構建HttpWebRequest
以請求包含SAMLResponse
的響應以獲取用戶名。
回覆將被Httpmodule
接收。
在構建我的AuthRequest
(如下所示)後,xml被defalted,base64編碼,然後進行url編碼。HttpWebRequest - 添加數據
<samlp:AuthnRequest xmlns:samlp=urn:oasis:names:tc:SAML:2.0:protocol xmlns:saml=urn:oasis:names:tc:SAML:2.0:assertion ProtocolBinding=urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST Version= version ID= iD
IssueInstant=DateTime.Now.ToString() Destination= destination />
<saml:Issuer> issuer /saml:Issuer>
<samlp:NameIDPolicy AllowCreate=true Format=urn:oasis:names:tc:SAML:2.0:nameid-format:transient/>
</samlp:AuthnRequest>
我對requestStream.Write(postBytes, 0, postBytes.Length)
postBytes包括從"SAMLRequest=" + SAMLRequest
創建一個字符串,希望我還失去了你還一個byte[]
的。
我的問題是:是否需要將SAMLRequest的值放置在表單中,還是可以將其編碼爲xml?什麼決定了這個決定?
在此先感謝!
我的理解是否正確:您是否正在編寫一個身份驗證httpmodule,其中您計劃將您的SAML xml添加到httprequest中? http管道的哪一步發生了什麼? – 2011-03-15 15:56:24
是的,我正在嘗試將SAML xml添加到請求並將其發送給IdP。在那裏,用戶將進行身份驗證,併發送新的請求併發送PreRequestHandlerExecute事件 – 5n0u7 2011-03-15 17:49:03