freescout-help-desk / freescout

FreeScout — Free self-hosted help desk & shared mailbox (Zendesk / Help Scout alternative)
https://freescout.net
GNU Affero General Public License v3.0
2.91k stars 481 forks source link

SMTP connected via o365 OAuth but agent-account invitations are still send via LOGIN #4173

Closed kai-hier closed 1 month ago

kai-hier commented 1 month ago

I have multiple Mail Accounts connected to the system and now, when I create a new agent Account, the invitations is tried to be send by the only one connected via OAuth, but the connections seems to made with standard login procedure and is therefor bound to fail.

Failed to authenticate on SMTP server with username "mail@redact.ed" 
using 1 possible authenticators. Authenticator LOGIN returned 
Swift_TransportException: Expected response code 235 but got code "535",
with message "535 5.7.139 Authentication unsuccessful, the user 
credentials were incorrect. [FR4P281CA0331.DEUP281.PROD.OUTLOOK.COM 
2024-08-08T06:54:04.069Z 08DCB6FD3F8F9511]
" in 
/var/www/html/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php:457
Stack trace:
#0 /var/www/html/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(341):
Swift_Transport_AbstractSmtpTransport->assertResponseCode()
#1 /var/www/html/overrides/swiftmailer/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php(305):
Swift_Transport_AbstractSmtpTransport->executeCommand()
#2 /var/www/html/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/Esmtp/Auth/LoginAuthenticator.php(36):
Swift_Transport_EsmtpTransport->executeCommand()
#3 /var/www/html/overrides/swiftmailer/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php(177):
Swift_Transport_Esmtp_Auth_LoginAuthenticator->authenticate()
#4 /var/www/html/overrides/swiftmailer/swiftmailer/lib/classes/Swift/Transport/EsmtpTransport.php(371):
Swift_Transport_Esmtp_AuthHandler->afterEhlo()
#5 /var/www/html/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(148):
Swift_Transport_EsmtpTransport->doHeloCommand()
#6 /var/www/html/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mailer.php(65):
Swift_Transport_AbstractSmtpTransport->start()
#7 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/Mailer.php(451):
Swift_Mailer->send()
#8 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/Mailer.php(235):
Illuminate\Mail\Mailer->sendSwiftMessage()
#9 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/Mailable.php(125):
Illuminate\Mail\Mailer->send()
#10 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/Mailer.php(250):
Illuminate\Mail\Mailable->send()
#11 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/Mailer.php(205):
Illuminate\Mail\Mailer->sendMailable()
#12 /var/www/html/vendor/laravel/framework/src/Illuminate/Mail/PendingMail.php(99):
Illuminate\Mail\Mailer->send()
#13 /var/www/html/app/User.php(690): 
Illuminate\Mail\PendingMail->send()
#14 /var/www/html/app/Http/Controllers/UsersController.php(389): 
App\User->sendInvite()
#15 [internal function]: App\Http\Controllers\UsersController->ajax()
#16 /var/www/html/overrides/laravel/framework/src/Illuminate/Routing/Controller.php(54):
call_user_func_array()
#17 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45):
Illuminate\Routing\Controller->callAction()
#18 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php(212):
Illuminate\Routing\ControllerDispatcher->dispatch()
#19 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Route.php(169):
Illuminate\Routing\Route->runController()
#20 /var/www/html/overrides/laravel/framework/src/Illuminate/Routing/Router.php(658):
Illuminate\Routing\Route->run()
#21 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30):
Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#22 /var/www/html/app/Http/Middleware/CustomHandle.php(27): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#23 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\CustomHandle->handle()
#24 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#25 /var/www/html/app/Http/Middleware/FrameGuard.php(14): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#26 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\FrameGuard->handle()
#27 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#28 /var/www/html/app/Http/Middleware/LogoutIfDeleted.php(28): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#29 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\LogoutIfDeleted->handle()
#30 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#31 /var/www/html/app/Http/Middleware/Localize.php(27): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#32 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\Localize->handle()
#33 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#34 /var/www/html/app/Http/Middleware/HttpsRedirect.php(46): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#35 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\HttpsRedirect->handle()
#36 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#37 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#38 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Routing\Middleware\SubstituteBindings->handle()
#39 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#40 /var/www/html/overrides/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(45):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#41 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Auth\Middleware\Authenticate->handle()
#42 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#43 /var/www/html/overrides/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(67):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#44 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()
#45 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#46 /var/www/html/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#47 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\View\Middleware\ShareErrorsFromSession->handle()
#48 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#49 /var/www/html/app/Http/Middleware/TokenAuth.php(32): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#50 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\TokenAuth->handle()
#51 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#52 /var/www/html/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#53 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Session\Middleware\StartSession->handle()
#54 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#55 /var/www/html/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#56 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()
#57 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#58 /var/www/html/overrides/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(61):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#59 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Cookie\Middleware\EncryptCookies->handle()
#60 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#61 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#62 /var/www/html/overrides/laravel/framework/src/Illuminate/Routing/Router.php(660):
Illuminate\Pipeline\Pipeline->then()
#63 /var/www/html/overrides/laravel/framework/src/Illuminate/Routing/Router.php(635):
Illuminate\Routing\Router->runRouteWithinStack()
#64 /var/www/html/overrides/laravel/framework/src/Illuminate/Routing/Router.php(601):
Illuminate\Routing\Router->runRoute()
#65 /var/www/html/overrides/laravel/framework/src/Illuminate/Routing/Router.php(590):
Illuminate\Routing\Router->dispatchToRoute()
#66 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(176):
Illuminate\Routing\Router->dispatch()
#67 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30):
Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#68 /var/www/html/app/Http/Middleware/TerminateHandler.php(12): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#69 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\TerminateHandler->handle()
#70 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#71 /var/www/html/app/Http/Middleware/ResponseHeaders.php(11): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#72 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
App\Http\Middleware\ResponseHeaders->handle()
#73 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#74 /var/www/html/vendor/fideloper/proxy/src/TrustProxies.php(56): 
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#75 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Fideloper\Proxy\TrustProxies->handle()
#76 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#77 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#78 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#79 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#80 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#81 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#82 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#83 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#84 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
#85 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#86 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(46):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#87 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149):
Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle()
#88 /var/www/html/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53):
Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#89 /var/www/html/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102):
Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}()
#90 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(151):
Illuminate\Pipeline\Pipeline->then()
#91 /var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116):
Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#92 /var/www/html/public/index.php(83): 
Illuminate\Foundation\Http\Kernel->handle()
#93 {main}.; File: 
/var/www/html/overrides/swiftmailer/swiftmailer/lib/classes/Swift/Transport/Esmtp/AuthHandler.php
(191)

Version 1.8.147 Protokoll HTTPS DB Mysql (8.0.39-0ubuntu0.22.04.1) Webserver nginx/1.18.0 PHP Version PHP 8.1.2-1ubuntu2.18 Are you using CloudFlare: No Are you using non-official modules: Yes

kai-hier commented 1 month ago

Just updated to version 1.8.148 and cleared the cache. The Problem persists...

kai-hier commented 1 month ago

Nervermind.... I just switched the smtp settings to username & password and it works again.

freescout-help commented 1 month ago

Invitations to users are sent not on behalf of some mailbox but using global "System Emails" settings under "Manage > Mail Settings". And System Emails can't be sent via OAuth.