PingFederate的SSO SAML身份驗證錯誤

寫的ashwin

最後發布日期:2022年2月25日

問題

當使用PingFederate通過Databricks的SSO連接進行身份驗證時,重定向失敗,出現以下錯誤:

19/12/21 01:27:01 ERROR SamlAuthenticator[root= servicemin -6c710d1c1fca0002 parent= servicemin -6c710d1c1fca0002 op=HttpServer-6c710d1c1fdf2812]: SAML login failed fails fails .日誌含義java.lang.IllegalArgumentException: com.google.common.io.BaseEncoding$DecodingException:無法識別的字符:com.google.common.io.BaseEncoding.decode (BaseEncoding.java: 248)com.m.eheci.common.authentication.saml.SamlAuthenticator.validateRequest (SamlAuthenticator.scala: 154)com.m.eheci.common.web.WrappingAuthenticator.validateRequest (WrappingAuthenticator.scala: 98)com.m.eheci.common.web.CustomErrorAuthenticator.validateRequest (CustomErrorAuthenticator.scala: 45)

導致

這是因為PingFederate同時使用多個身份驗證源,根據用戶和設備上下文來滿足各種策略需求。

當您使用LDAP進行後端身份驗證時,PingFederate充當將通信傳遞到LDAP服務器的適配器。SAML響應是基於LDAP設置生成的,該設置覆蓋PingFederate SSO設置。

解決方案

為了通過SSO進行身份驗證,必須將LDAP SAML頒發者輸入為身份提供者實體ID在數據庫裏管理控製台

  1. 在PingFederate設置中找到LDAP SAML頒發者。
  2. 登錄到Databricks工作空間。
  3. 打開管理控製台
  4. 單擊單點登錄選項卡。
  5. 的PingFederate設置中輸入SAML頒發者信息身份提供者實體ID字段。