我想支持租戶支持Kerberos身份驗證的多租戶Rails應用程序。針對多租戶apache託管Rails應用的Kerberos身份驗證
我用mod_auth_kerb看到的例子假設Apache服務器將直接與KDC聯繫以驗證票證。就我而言,我希望服務器讓客戶端瀏覽器與KDC協商並提供相應的票據。我相信這是通過返回一個401 w/www-negotiate標頭完成的,然後客戶端瀏覽器將返回票證。然後apache服務器會根據相應的密鑰表驗證票證。我的理解是我需要每個支持Kerberos身份驗證的域的keytab。
因此,我認爲我可以輕鬆地提供Apache然後強制Kerberos的「/ auto_login」路由。但是,我不太清楚如何讓Apache選擇正確的密鑰表;例如如果我按/ auto_login?client = abc來驗證ABC的密鑰表。
我目前使用Devise。自定義策略:Devise ignoring custom strategy會很好,但似乎我在配置Krb5 gem(現在不受支持?)處理多個keytabs並確定要驗證的問題上有同樣的問題。
你想讓它跨越多個kerberos領域或簡單地在同一領域內的不同服務主體工作嗎? –
感謝@FredtheMagicWonderDog的提問。我相信有多個領域;例如用戶來自CUSTA.COM,CUSTB.COM,WHATEVER.COM。所以,每個keytab。 我在想我可能需要爲指向每個域的每個域定製一個自定義配置。我在正確的軌道上嗎? –
是的,雖然問題在於kerberos要求客戶/主機通過一些帶外約定來同意服務主體。如果服務器的IP地址未解析爲該域中的主機,那麼讓客戶端使用密鑰表中的服務主體將非常困難。 –