FIX: Better error when SSO fails due to blank secret (#7946)

* FIX: Better error when SSO fails due to blank secret

* Update spec/requests/session_controller_spec.rb

Co-Authored-By: Robin Ward <robin.ward@gmail.com>
This commit is contained in:
Osama Sayegh
2019-07-26 17:37:23 +03:00
committed by GitHub
parent fe7f0982af
commit 525920a979
4 changed files with 23 additions and 1 deletions

View File

@ -3,9 +3,15 @@
require_dependency 'single_sign_on'
class SingleSignOnProvider < SingleSignOn
class BlankSecret < RuntimeError; end
def self.parse(payload, sso_secret = nil)
set_return_sso_url(payload)
if sso_secret.blank? && self.sso_secret.blank?
host = URI.parse(@return_sso_url).host
Rails.logger.warn("SSO failed; website #{host} is not in the `sso_provider_secrets` site settings")
raise BlankSecret
end
super
end