Uploaded image for project: 'Satellite'
  1. Satellite
  2. SAT-27087

External IPA users can't be created if foreman-ipa-authentication-api=false

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Normal Normal
    • None
    • 6.15.z
    • Authentication
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • 0
    • Moderate
    • None

      Description of problem:
      Creation of external IPA users fails if IPA authentication is configured with foreman-ipa-authentication-api set to false.

      How reproducible:
      100%

      Is this issue a regression from an earlier version:
      Can be reproduced on Satellite 6.15.z. I haven't tested it on earlier versions.

      Steps to Reproduce:

       

      # satellite-installer --foreman-ipa-authentication=true --foreman-ipa-authentication-api=false
      

       

      Actual behavior:

      2024-08-08T10:32:22 [I|app|04203352] Backtrace for 'Email address is invalid' error (Mail::Field::IncompleteParseError): Mail::AddressList can not parse |(null)|: Only able to parse up to "(null)"
       04203352 | /usr/share/gems/gems/mail-2.8.0.1/lib/mail/parsers/address_lists_parser.rb:33233:in `parse'
       04203352 | /usr/share/gems/gems/mail-2.8.0.1/lib/mail/elements/address.rb:192:in `parse'
       04203352 | /usr/share/gems/gems/mail-2.8.0.1/lib/mail/elements/address.rb:30:in `initialize'
       04203352 | /usr/share/foreman/app/validators/email_validator.rb:8:in `new'
       04203352 | /usr/share/foreman/app/validators/email_validator.rb:8:in `validate_each'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validator.rb:153:in `block in validate'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validator.rb:149:in `each'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validator.rb:149:in `validate'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:427:in `block in make_lambda'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:198:in `block (2 levels) in halting'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:604:in `block (2 levels) in default_terminator'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:603:in `catch'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:603:in `block in default_terminator'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:199:in `block in halting'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:512:in `block in invoke_before'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:512:in `each'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:512:in `invoke_before'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:105:in `run_callbacks'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:824:in `_run_validate_callbacks'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validations.rb:406:in `run_validations!'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validations/callbacks.rb:117:in `block in run_validations!'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:106:in `run_callbacks'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:824:in `_run_validation_callbacks'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validations/callbacks.rb:117:in `run_validations!'
       04203352 | /usr/share/gems/gems/activemodel-6.1.7.6/lib/active_model/validations.rb:337:in `valid?'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/validations.rb:68:in `valid?'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/validations.rb:84:in `perform_validations'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/validations.rb:47:in `save'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/transactions.rb:298:in `block in save'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/connection_adapters/abstract/database_statements.rb:320:in `block in transaction'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/connection_adapters/abstract/database_statements.rb:320:in `transaction'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/transactions.rb:350:in `with_transaction_returning_status'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/transactions.rb:298:in `save'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/suppressor.rb:44:in `save'
       04203352 | /usr/share/foreman/app/models/user.rb:346:in `block in find_or_create_external_user'
       04203352 | /usr/share/foreman/app/models/concerns/foreman/thread_session.rb:108:in `as'
       04203352 | /usr/share/foreman/app/models/concerns/foreman/thread_session.rb:114:in `as_anonymous_admin'
       04203352 | /usr/share/foreman/app/models/user.rb:343:in `find_or_create_external_user'
       04203352 | /usr/share/foreman/app/services/sso/apache.rb:39:in `authenticated?'
       04203352 | /usr/share/foreman/app/controllers/users_controller.rb:124:in `login'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/abstract_controller/base.rb:228:in `process_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal/rendering.rb:30:in `process_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/abstract_controller/callbacks.rb:42:in `block in process_action'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:117:in `block in run_callbacks'
       04203352 | /usr/share/foreman/app/controllers/concerns/foreman/controller/timezone.rb:10:in `set_timezone'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:126:in `block in run_callbacks'
       04203352 | /usr/share/foreman/app/models/concerns/foreman/thread_session.rb:32:in `clear_thread'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:126:in `block in run_callbacks'
       04203352 | /usr/share/foreman/app/controllers/concerns/foreman/controller/topbar_sweeper.rb:12:in `set_topbar_sweeper_controller'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:126:in `block in run_callbacks'
       04203352 | /usr/share/gems/gems/audited-5.4.2/lib/audited/sweeper.rb:16:in `around'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:126:in `block in run_callbacks'
       04203352 | /usr/share/gems/gems/audited-5.4.2/lib/audited/sweeper.rb:16:in `around'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:126:in `block in run_callbacks'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:137:in `run_callbacks'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/abstract_controller/callbacks.rb:41:in `process_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal/rescue.rb:22:in `process_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/notifications.rb:203:in `block in instrument'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/notifications.rb:203:in `instrument'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal/instrumentation.rb:33:in `process_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal/params_wrapper.rb:249:in `process_action'
       04203352 | /usr/share/gems/gems/activerecord-6.1.7.6/lib/active_record/railties/controller_runtime.rb:27:in `process_action'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/abstract_controller/base.rb:165:in `process'
       04203352 | /usr/share/gems/gems/actionview-6.1.7.6/lib/action_view/rendering.rb:39:in `process'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal.rb:190:in `dispatch'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_controller/metal.rb:254:in `dispatch'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/routing/route_set.rb:50:in `dispatch'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/routing/route_set.rb:33:in `serve'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/journey/router.rb:50:in `block in serve'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/journey/router.rb:32:in `each'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/journey/router.rb:32:in `serve'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/routing/route_set.rb:842:in `call'
       04203352 | /usr/share/gems/gems/katello-4.11.0.12/lib/katello/middleware/organization_created_enforcer.rb:18:in `call'
       04203352 | /usr/share/gems/gems/katello-4.11.0.12/lib/katello/middleware/event_daemon.rb:10:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/apipie-dsl-2.6.1/lib/apipie_dsl/static_dispatcher.rb:67:in `call'
       04203352 | /usr/share/gems/gems/apipie-rails-1.2.3/lib/apipie/static_dispatcher.rb:68:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/static.rb:24:in `call'
       04203352 | /usr/share/foreman/lib/foreman/middleware/libvirt_connection_cleaner.rb:9:in `call'
       04203352 | /usr/share/foreman/lib/foreman/middleware/telemetry.rb:10:in `call'
       04203352 | /usr/share/gems/gems/apipie-rails-1.2.3/lib/apipie/middleware/checksum_in_headers.rb:27:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/tempfile_reaper.rb:15:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/etag.rb:27:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/conditional_get.rb:40:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/head.rb:12:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/http/permissions_policy.rb:22:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/http/content_security_policy.rb:19:in `call'
       04203352 | /usr/share/foreman/lib/foreman/middleware/logging_context_session.rb:22:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/session/abstract/id.rb:266:in `context'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/session/abstract/id.rb:260:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/cookies.rb:697:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/callbacks.rb:98:in `run_callbacks'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/callbacks.rb:26:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/actionable_exceptions.rb:18:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
       04203352 | /usr/share/gems/gems/railties-6.1.7.6/lib/rails/rack/logger.rb:37:in `call_app'
       04203352 | /usr/share/gems/gems/railties-6.1.7.6/lib/rails/rack/logger.rb:28:in `call'
       04203352 | /usr/share/gems/gems/sprockets-rails-3.4.2/lib/sprockets/rails/quiet_assets.rb:13:in `call'
       04203352 | /usr/share/foreman/lib/foreman/middleware/logging_context_request.rb:11:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
       04203352 | /usr/share/gems/gems/request_store-1.5.1/lib/request_store/middleware.rb:19:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/request_id.rb:26:in `call'
       04203352 | /usr/share/gems/gems/katello-4.11.0.12/lib/katello/prevent_json_parsing.rb:12:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/method_override.rb:24:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/runtime.rb:22:in `call'
       04203352 | /usr/share/gems/gems/activesupport-6.1.7.6/lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/executor.rb:14:in `call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/sendfile.rb:110:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/ssl.rb:77:in `call'
       04203352 | /usr/share/gems/gems/actionpack-6.1.7.6/lib/action_dispatch/middleware/host_authorization.rb:142:in `call'
       04203352 | /usr/share/gems/gems/secure_headers-6.5.0/lib/secure_headers/middleware.rb:11:in `call'
       04203352 | /usr/share/gems/gems/railties-6.1.7.6/lib/rails/engine.rb:539:in `call'
       04203352 | /usr/share/gems/gems/railties-6.1.7.6/lib/rails/railtie.rb:207:in `public_send'
       04203352 | /usr/share/gems/gems/railties-6.1.7.6/lib/rails/railtie.rb:207:in `method_missing'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/urlmap.rb:74:in `block in call'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/urlmap.rb:58:in `each'
       04203352 | /usr/share/gems/gems/rack-2.2.8/lib/rack/urlmap.rb:58:in `call'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/configuration.rb:272:in `call'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/request.rb:100:in `block in handle_request'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/thread_pool.rb:378:in `with_force_shutdown'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/request.rb:99:in `handle_request'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/server.rb:464:in `process_client'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/server.rb:245:in `block in run'
       04203352 | /usr/share/gems/gems/puma-6.4.2/lib/puma/thread_pool.rb:155:in `block in spawn_thread'
       04203352 | /usr/share/gems/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
      2024-08-08T10:32:22 [I|app|04203352] Failed to create external User '(null)': Email address is invalid, Username is invalid
      2024-08-08T10:32:22 [I|app|04203352] invalid user
      2024-08-08T10:32:22 [W|app|04203352] Failed login attempt from 10.XX.XX.XX with username 'test123' 

      Expected behavior:

      User is created and can login successfully.

       

              Unassigned Unassigned
              rhn-support-amasolov Alexey Masolov
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: