mastodon/config/initializers
ntl-purism f3a93987b6 LDAP & PAM added to OAuth password grant strategy (#7999) (#12390)
When authenticating via OAuth, the resource owner password grant
strategy is allowed by Mastodon, but (without this PR), it does not
attempt to authenticate against LDAP or PAM. As a result, LDAP or PAM
authenticated users cannot sign in to Mastodon with their
email/password credentials via OAuth (for instance, for native/mobile
app users).

This PR fleshes out the authentication strategy supplied to doorkeeper
in its initializer by looking up the user with LDAP and/or PAM when
devise is configured to use LDAP/PAM backends. It attempts to follow the
same logic as the Auth::SessionsController for handling email/password
credentials.

Note #1: Since this pull request affects an initializer, it's unclear
how to add test automation.

Note #2: The PAM authentication path has not been manually tested. It
was added for completeness sake, and it is hoped that it can be manually
tested before merging.
2019-11-30 19:44:59 +01:00
..
0_post_deployment_migrations.rb
1_hosts.rb
2_whitelist_mode.rb
active_model_serializers.rb
application_controller_renderer.rb
assets.rb
backtrace_silencers.rb
blacklists.rb
chewy.rb Fix records not being indexed sometimes (#12024) 2019-10-01 01:19:11 +02:00
content_security_policy.rb
cookies_serializer.rb
cors.rb
delivery_job.rb
devise.rb
doorkeeper.rb LDAP & PAM added to OAuth password grant strategy (#7999) (#12390) 2019-11-30 19:44:59 +01:00
fast_blank.rb
ffmpeg.rb
filter_parameter_logging.rb
health_check.rb Hide error message on /heath (#11947) 2019-09-24 20:28:25 +02:00
http_client_proxy.rb
httplog.rb
inflections.rb Add a nodeinfo endpoint (#12002) 2019-09-29 21:31:51 +02:00
json_ld.rb Fix preloaded JSON-LD context for identity not being used (#12138) 2019-10-10 06:48:53 +02:00
kaminari_config.rb
mime_types.rb
oj.rb
omniauth.rb
open_uri_redirection.rb
pagination.rb
paperclip.rb Fix attachment not being re-downloaded even if file is not stored (#12125) 2019-10-09 07:10:46 +02:00
premailer_rails.rb
rack_attack.rb
rack_attack_logging.rb
redis.rb
session_activations.rb
session_store.rb
sidekiq.rb
simple_form.rb
single_user_mode.rb
statsd.rb
stoplight.rb
strong_migrations.rb
suppress_csrf_warnings.rb
trusted_proxies.rb
twitter_regex.rb
vapid.rb
wrap_parameters.rb