Commit Graph

51 Commits

Author SHA1 Message Date
frytimo
2a3305ac4a Fix PHP error when using OpenID Authentication (#7603) 2025-10-31 10:39:26 -06:00
frytimo
e7393cc7c0 New Feature OpenID Connect (#7355)
* Refactor authentication to allow for OpenID Connect
The authentication class has been refactored to separate the `validate` function for the method `create_user_session`. This is needed for the OpenID Connect module to authenticate a user without going through the process of all authentication plugins. Only the function `check_user_cidr` has been rewritten to use a single loop instead of a double-loop.
Due to the fact that create_user_function is public, the $result associative array is checked to ensure the required fields are present and the UUID fields are valid UUIDs. Further checking could be done against the database to ensure the UUIDs exist but this has been suppressed at this time because database queries would be required.

* Database class modified to allow for login banners for OpenID Connect
The database class is responsible for creating the view for login. The OpenID application required banners to be present so that any OpenID Connect authentication mechanism could be used. Each banner displayed has the properties of: name, image, alt, and url. The name is the class name of the authentication plugin. This will match the action in the URL. The image is the image banner used for the login. The alt is the alternate text used for screen readers. Each authenticator is responsible for providing each of the field values.

* Added PHPDocs for the check_cidr function

* Add backwards compatibility for PHP versions below 8

* Remove get_banner_alt

* Update check_cidr to allow cidr array

* Update authentication.php

* Update functions.php

* Update authentication.php
2025-04-17 13:48:16 -06:00
FusionPBX
3f186d90cc Fix the forget password feature 2025-01-16 21:49:56 -07:00
Alex
f0bc1cfe33 Update contacts path (#7192)
* Update contacts path

* Update menu.php

* Update contact_edit.php

* Update contact_relation_edit.php

* Update config.php

* Update authentication.php

* Update database.php

* Update totp.php

* Update email.php
2024-12-06 11:55:41 -07:00
FusionPBX
cd8d5302ac Fix temporary permissions 2024-11-29 13:57:01 -07:00
FusionPBX
fc4f75f30c User logs fix failed 2024-10-10 16:21:03 -06:00
fusionate
ae15319487 Body Header User Image and Menu, Domain Selector, Contact Attachment improvements. 2024-09-28 16:37:36 -06:00
FusionPBX
e86ec20547 Update background_video
- Uses type array
- Use the first item in the array
2024-09-10 04:03:44 -06:00
frytimo
9f6d828799 pass objects to authentication plugins when possible (#7123)
* pass objects to authentication plugins when possible
Pass the settings and authentication objects to the plugins to re-use existing objects

* Update authentication.php
2024-09-06 18:20:26 -06:00
FusionPBX
8cc646aece Add login option for domain name for text input or select
Restoring a feature we had in previous versions.
Not a commonly used feature
2024-08-19 18:57:05 -06:00
FusionPBX
71334c9655 Removed session server temp directory
This session variables is no longer used
2024-06-26 07:48:41 -06:00
FusionPBX
efce99375b Template engine use sys_get_temp_dir
Used to get the operating system temp directory.
2024-06-26 07:28:37 -06:00
FusionPBX
02db089d8f New setting background_video 2024-06-18 09:32:19 -06:00
frytimo
6fd5d7cda4 Fix user_email missing from object properties (#6929) 2024-03-28 22:10:36 -06:00
markjcrane
cd91040eb5 Prevent edge case PHP 8.1 warnings for domain_uuid and domain_name 2023-07-22 14:21:11 -06:00
markjcrane
4951647225 Add user_type is null for better backwarads compatibility 2023-07-14 12:38:45 -06:00
markjcrane
52c0b3955f Disable authentication if the user type is set to virtual. 2023-07-13 18:30:29 -06:00
fusionate
c143b9fe83 Authentication - Database: Resolve PHP 8.1 warning when using API Key login. 2023-06-28 20:54:34 +00:00
fusionate
d24acf66bf Authentication: Updates to improve order compatibility. 2023-06-27 02:32:11 +00:00
fusionate
2e2bd53170 Authentication: Additional improvements to order execution and invalid creds. 2023-06-25 01:11:49 +00:00
fusionate
b23a18fdf1 Authentication: Minor improvements in bad username handling, effort to integrate messages. 2023-06-24 22:40:44 +00:00
fusionate
aa7def54a6 Authentication - Fix MFA when all methods are enabled. 2023-06-24 21:18:39 +00:00
fusionate
3021f59431 Login: Restore authentication failed message. 2023-06-17 23:16:39 +00:00
markjcrane
f506b00b57 PHP 8.2 Deprecated dynamic properties 2023-06-12 21:27:23 -06:00
FusionPBX
d9946b0207 Refine the authentication database class 2023-05-12 19:31:26 -06:00
FusionPBX
40d9121c8f Convenient debug info for testing 2023-05-11 19:55:37 -06:00
FusionPBX
ffd9a2c4b5 [bug fix] get the domain from the username (#6691)
* [bug fix] get the domain from the username

When the URL domain doesn't match the user's domain

Authentication can use domain from the username.

username:
user@domain
2023-05-11 18:58:22 -06:00
FusionPBX
cb32d58f21 Add project_path and login_destination_url 2023-05-10 23:08:57 -06:00
FusionPBX
9902e823b9 Use empty function for the request username and key 2023-05-10 21:53:39 -06:00
FusionPBX
d9cc3314d3 Add favicon (#6671)
* Add favicon

* Update totp_secret.htm

* Update totp.htm

* Update login.htm

* Update email.htm

* Update totp.php

* Update ldap.php

* Update email.php

* Update database.php
2023-05-06 18:31:48 -06:00
FusionPBX
eeef486384 Allow login with email authentication 2023-05-06 14:43:20 -06:00
frytimo
fef8165be2 Frytimo pr patches for php8.1 (#6630)
* Passing null to parameter #2 ($string) of type string is deprecated

* Passing null to parameter #1 ($string) of type string is deprecated

* php 8.1 fixes

* php 8.1 fixes - replace strlen($var) > 0 with !empty($var)

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - replace ${var} with {$var}

* php 8.1 fixes - strlower with null

* php 8.1 fixes - strreplace with null

* php 8.1 fixes - passing null to base64_decode

* php 8.1 fixes - check for false and check for null on $this->dir

* php 8.1 fixes - remove assignment of $db variable to modules object

* php 8.1 fixes - avoid sending null to substr

* php 8.1 fixes - change ${var} to {$var}

* php 8.1 fixes - check for null before preg_replace

* php 8.1 fixes - remove setting db variable on domains object

* php 8.1 fixes - set empty string if $row['domain_setting_subcategory'] is null

* php 8.1 fixes - set empty string if $_REQUEST['show'] is not available

* php 8.1 fixes

* php 8.1 fixes - correct $_POST checking syntax

* php 8.1 fixes - correct $_POST variables

* php 8.1 fixes

* Use brackets consistently

* Update user_setting_edit.php

* Change to not empty

* Update device.php

* Update text.php

---------

Co-authored-by: Tim Fry <tim@voipstratus.com>
Co-authored-by: FusionPBX <markjcrane@gmail.com>
2023-05-05 10:46:37 -06:00
FusionPBX
6f489f0cf3 Remove unset removes the session settings 2023-04-18 11:28:24 -06:00
FusionPBX
e336cb6999 Remove destination url 2023-04-18 09:40:33 -06:00
FusionPBX
1cebbb7c45 If set use the SESSION username 2023-04-17 22:15:02 -06:00
markjcrane
00801b5b04 Add mutli-factor authentication. 2023-04-16 01:10:39 -06:00
FusionPBX
c0e0cd3101 Update database.php
Add domain_uuid to the SQL select statement.
2020-10-27 15:50:24 -06:00
FusionPBX
1b0d8ceb41 Update database.php
Get the domain name from the database.
2020-10-26 19:22:46 -06:00
FusionPBX
8443350604 Update database.php 2020-03-06 01:09:12 -07:00
FusionPBX
40ed806b3b Update database.php 2019-09-18 20:39:28 -06:00
FusionPBX
e1d5b87843 Update database.php 2019-09-18 20:09:11 -06:00
Nate
836fb87136 Misc Classes: Database class integration. 2019-09-02 15:57:18 -06:00
FusionPBX
7d80afbdb0 Update database.php 2019-08-15 01:54:50 -06:00
FusionPBX
6d8fa9acb4 Update database.php 2019-07-29 10:33:55 -06:00
FusionPBX
71a4afeae5 Update database.php 2019-05-14 11:08:01 -06:00
Nate
f4cdf58e65 Update database.php
Fixed so $_SESSION['user']['contact_uuid'] would be populated as intended.
2019-02-19 13:12:41 -07:00
FusionPBX
5b3bc736e3 Update database.php 2016-10-03 21:37:27 -06:00
FusionPBX
999eee3ebd Update database.php 2016-09-11 12:45:56 -06:00
FusionPBX
008597d159 Update database.php
Add contact_uuid to the database plugin.
2016-09-10 22:22:37 -06:00
FusionPBX
fe2f5477c1 Update database.php
Update the database plugin description.
2016-09-10 17:59:59 -06:00