Module: BetterAuth::SSO::Routes::SSO

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

Class Method Summary collapse

Class Method Details

.endpoints(config = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/better_auth/sso/routes/sso.rb', line 9

def endpoints(config = {})
  normalized = BetterAuth::Plugins.normalize_hash(config || {})
  endpoints = {
    sp_metadata: BetterAuth::Plugins.(normalized),
    register_sso_provider: BetterAuth::Plugins.sso_register_provider_endpoint(normalized),
    sign_in_sso: BetterAuth::Plugins.(normalized),
    callback_sso: BetterAuth::Plugins.sso_oidc_callback_endpoint(normalized),
    callback_sso_shared: BetterAuth::Plugins.sso_oidc_shared_callback_endpoint(normalized),
    callback_sso_saml: BetterAuth::Plugins.sso_saml_callback_endpoint(normalized),
    acs_endpoint: BetterAuth::Plugins.sso_saml_acs_endpoint(normalized),
    slo_endpoint: BetterAuth::Plugins.sso_saml_slo_endpoint(normalized),
    initiate_slo: BetterAuth::Plugins.sso_initiate_slo_endpoint(normalized),
    list_sso_providers: BetterAuth::Plugins.sso_list_providers_endpoint,
    get_sso_provider: BetterAuth::Plugins.sso_get_provider_endpoint,
    update_sso_provider: BetterAuth::Plugins.sso_update_provider_endpoint,
    delete_sso_provider: BetterAuth::Plugins.sso_delete_provider_endpoint
  }
  if normalized.dig(:domain_verification, :enabled)
    endpoints[:request_domain_verification] = BetterAuth::Plugins.sso_request_domain_verification_endpoint(normalized)
    endpoints[:verify_domain] = BetterAuth::Plugins.sso_verify_domain_endpoint(normalized)
  end
  endpoints
end

.oidc_redirect_uri(context, provider_id) ⇒ Object



33
34
35
# File 'lib/better_auth/sso/routes/sso.rb', line 33

def oidc_redirect_uri(context, provider_id)
  BetterAuth::Plugins.sso_oidc_redirect_uri(context, provider_id)
end

.saml_authorization_url(provider, relay_state, ctx = nil, config = {}) ⇒ Object



37
38
39
# File 'lib/better_auth/sso/routes/sso.rb', line 37

def saml_authorization_url(provider, relay_state, ctx = nil, config = {})
  BetterAuth::Plugins.sso_saml_authorization_url(provider, relay_state, ctx, config)
end