diff --git a/plugins/login-http/LICENSE b/plugins/login-http/LICENSE new file mode 100644 index 000000000..f709b02e2 --- /dev/null +++ b/plugins/login-http/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2016 RainLoop Team + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/plugins/login-http/index.php b/plugins/login-http/index.php new file mode 100644 index 000000000..9b53c0cb5 --- /dev/null +++ b/plugins/login-http/index.php @@ -0,0 +1,39 @@ +addPartHook('ExternalHTTP', 'ServiceExternalHTTP'); + } + + public function ServiceExternalHTTP() : string + { + $oActions = \RainLoop\Api::Actions(); + $oActions->Http()->ServerNoCache(); + $sUser=$_SERVER['PHP_AUTH_USER'] ?? ''; + $sPassword=$_SERVER['PHP_AUTH_PW'] ?? ''; + try { + $oAccount = $oActions->LoginProcess($sUser, new \SnappyMail\SensitiveString($sPassword)); + if ($oAccount) { + \MailSo\Base\Http::Location('./'); + return true; + } + } catch (\Throwable $e) { + // Log l'erreur si besoin + } + \MailSo\Base\Http::Location('./?ExternalHTTP'); + return true; + } +}