Module: BetterAuth::SSO::SAMLState

Defined in:
lib/better_auth/sso/saml_state.rb

Class Method Summary collapse

Class Method Details

.generate_relay_state(ctx, link = nil, additional_data = {}) ⇒ Object

Raises:

  • (APIError)


8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/better_auth/sso/saml_state.rb', line 8

def generate_relay_state(ctx, link = nil, additional_data = {})
  callback_url = BetterAuth::Plugins.sso_fetch(ctx.body, :callback_url)
  raise APIError.new("BAD_REQUEST", message: "callbackURL is required") if callback_url.to_s.empty?

  extra = (additional_data == false) ? {} : (additional_data || {})
  BetterAuth::Plugins.sso_generate_saml_relay_state(
    ctx,
    extra.merge(
      callbackURL: callback_url,
      errorURL: BetterAuth::Plugins.sso_fetch(ctx.body, :error_callback_url),
      newUserURL: BetterAuth::Plugins.sso_fetch(ctx.body, :new_user_callback_url),
      requestSignUp: BetterAuth::Plugins.sso_fetch(ctx.body, :request_sign_up),
      link: link
    )
  )
end

.parse_relay_state(ctx) ⇒ Object



25
26
27
# File 'lib/better_auth/sso/saml_state.rb', line 25

def parse_relay_state(ctx)
  BetterAuth::Plugins.sso_parse_saml_relay_state(ctx, BetterAuth::Plugins.sso_fetch(ctx.body, :relay_state))
end