亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法為 SAML 響應創建正確的簽名

無法為 SAML 響應創建正確的簽名

Go
富國滬深 2022-05-23 15:43:36
我在我們的項目中使用go-saml庫來啟用 SSO,其中服務提供商將是 Salesforce,身份提供商將是 Golang 代碼。Golang 代碼將首先驗證用戶,然后創建一個 SAML 響應以允許用戶登錄 Salesforce。我是 Golang 的新手,并遵循創建此庫的 SAML 響應(如果充當 IdP)。因此,到目前為止,我能夠使用它創建一個 SAML 響應,但在根據要求對其進行自定義時面臨一些挑戰。我面臨的第一個挑戰是在條件塊中添加AudienceRestriction ,如下所示:-<saml:Conditions NotBefore="2020-03-15T16:33:16.23103491Z" NotOnOrAfter="2020-03-15T16:43:16.23104017Z">         <saml:AudienceRestriction>                <saml:Audience>https://saml.salesforce.com</saml:Audience>         </saml:AudienceRestriction> </saml:Conditions>我試圖在代碼中添加它,但似乎AudienceRestrictions未在條件對象中定義。authnResponse := saml.NewSignedResponse() authnResponse.Conditions.AudienceRestrictions = "https://saml.salesforce.com"我沒有找到任何方法在 Salesforce 必須的條件塊中添加上述塊。請建議我這樣做的一些方法。我還必須在條件塊下方添加AuthnStatement,如下所示:-<saml:AuthnStatement AuthnInstant="2020-03-01T11:28:31.396Z">   <saml:AuthnContext>    <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified</saml:AuthnContextClassRef>    </saml:AuthnContext> </saml:AuthnStatement>即使在 SAML 響應中手動添加上述塊后,我在使用 Salesforce SAML 驗證器驗證 SAML 響應時也會收到以下錯誤驗證簽名...響應是否已簽名?true斷言是否已簽名?false響應簽名中的引用有效keyinfo 中是否提供了正確的證書?真的簽名或證書問題響應中的簽名無效我已經生成了一個公鑰(自簽名 .pem 證書)和一個私鑰。之后,我已將公鑰上傳到 Salesforce,并在代碼內部使用私鑰和公鑰來生成 SAML 響應。我不知道為什么會收到簽名無效錯誤。如果您對我有任何建議,請告訴我。如果您想查看我的 Golang 代碼 - https://play.golang.org/p/U9dXZblTHG1
查看完整描述

1 回答

?
HUWWW

TA貢獻1874條經驗 獲得超12個贊

可以通過提供的功能添加受眾:

authnResponse := saml.NewSignedResponse()

authnResponse.AddAudienceRestriction("https://saml.salesforce.com")

身份驗證上下文可以通過另一個函數添加:

authnContext := "urn:oasis:names:tc:SAML:2.0:ac:classes:unspecified"

sessionIndex := "session_1"

authnResponse.AddAuthnStatement(authnContext,sessionIndex)

作為建議,請嘗試使用更成熟、成熟的庫(例如 OpenSAML 或 simpleSAMLphp)來生成 SAML 響應。如果這有效但 go-saml 無效,那么您可以繼續下一步。另一方面,如果您通過另一種方法生成的斷言也失敗了,那么這可能是您使用密鑰或斷言內容而不是庫所做的任何問題。


查看完整回答
反對 回復 2022-05-23
  • 1 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號