nilsteampassnet / TeamPass

Collaborative Passwords Manager
https://www.teampass.net
1.67k stars 544 forks source link

Issue "no change was performed" on save itens #3875

Open jonildoasantos opened 1 year ago

jonildoasantos commented 1 year ago

We have the following scenario:

We receive message "no change was performed" when we edit an item and past new password in field "password" and click on button "mask/display password" and after click on button "save".

image

Page on which it happened

On page of edit any item.

Steps to reproduce

  1. Edit one item;
  2. Past passphrase on field "Password";
  3. Click on button "Mask/Display password";
  4. Click on button "Save".

Expected behavior

Save the new password.

Actual behavior

Receive message "no change was performed".

Server configuration

Operating system: Linux TeamPass 5.15.0-83-generic #92-Ubuntu SMP Mon Aug 14 09:30:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Web server: Apache/2.4.52 (Ubuntu)

Database: 10.7.8-MariaDB-1

PHP version: PHP 8.1.2-1ubuntu2.14

Teampass version: 3.0.10 (the same problem in 3.0.6 to)

Teampass configuration file:

Updated from an older Teampass or fresh install: 'max_latest_items' => '10', 'enable_favourites' => '1', 'show_last_items' => '1', 'enable_pf_feature' => '1', 'log_connections' => '1', 'log_accessed' => '1', 'time_format' => 'H:i:s', 'date_format' => 'd/m/Y', 'duplicate_folder' => '1', 'item_duplicate_in_same_folder' => '0', 'duplicate_item' => '1', 'number_of_used_pw' => '3', 'manager_edit' => '1', 'cpassman_dir' => '/var/www/html', 'cpassman_url' => 'https://teampass.mydomain.local', 'favicon' => 'https://teampass.mydomain.local/favicon.ico', 'path_to_upload_folder' => '/var/www/html/upload', 'path_to_files_folder' => '/var/www/html/files', 'url_to_files_folder' => 'https://teampass.mydomain.local/files', 'activate_expiration' => '0', 'pw_life_duration' => '0', 'maintenance_mode' => '0', 'enable_sts' => '0', 'encryptClientServer' => '1', 'cpassman_version' => '3.0.0.23', 'ldap_mode' => '1', 'ldap_type' => 'ActiveDirectory', 'ldap_suffix' => '0', 'ldap_domain_dn' => '0', 'ldap_domain_controler' => '0', 'ldap_user_attribute' => 'samaccountname', 'ldap_ssl' => '0', 'ldap_tls' => '0', 'ldap_search_base' => '0', 'ldap_port' => '389', 'richtext' => '0', 'allow_print' => '0', 'roles_allowed_to_print' => '0', 'show_description' => '1', 'anyone_can_modify' => '0', 'anyone_can_modify_bydefault' => '0', 'nb_bad_authentication' => '0', 'utf8_enabled' => '1', 'restricted_to' => '1', 'restricted_to_roles' => '1', 'enable_send_email_on_user_login' => '0', 'enable_user_can_create_folders' => '0', 'insert_manual_entry_item_history' => '0', 'enable_kb' => '1', 'enable_email_notification_on_item_shown' => '0', 'enable_email_notification_on_user_pw_change' => '1', 'custom_logo' => '', 'custom_login_text' => '', 'default_language' => 'english', 'send_stats' => '0', 'send_statistics_items' => 'stat_country;stat_users;stat_items;stat_items_shared;stat_folders;stat_folders_shared;stat_admins;stat_managers;stat_ro;stat_mysqlversion;stat_phpversion;stat_teampassversion;stat_languages;stat_kb;stat_suggestion;stat_customfields;stat_api;stat_2fa;stat_agses;stat_duo;stat_ldap;stat_syslog;stat_stricthttps;stat_fav;stat_pf;cb_select_all;', 'send_stats_time' => '1680089585', 'get_tp_info' => '0', 'send_mail_on_user_login' => '0', 'nb_items_by_query' => 'auto', 'enable_delete_after_consultation' => '0', 'enable_personal_saltkey_cookie' => '0', 'personal_saltkey_cookie_duration' => '31', 'email_smtp_server' => '10.0.4.14', 'email_smtp_auth' => '', 'email_auth_username' => '', 'email_auth_pwd' => '', 'email_port' => '25', 'email_security' => 'none', 'email_server_url' => '', 'email_from' => 'teampass@mydomain.local', 'email_from_name' => 'Teampass', 'pwd_maximum_length' => '50', 'google_authentication' => '0', 'delay_item_edition' => '0', 'allow_import' => '0', 'proxy_ip' => '', 'proxy_port' => '', 'upload_maxfilesize' => '10mb', 'upload_docext' => 'doc,docx,dotx,xls,xlsx,xltx,rtf,csv,txt,pdf,ppt,pptx,pot,dotx,xltx', 'upload_imagesext' => 'jpg,jpeg,gif,png', 'upload_pkgext' => '7z,rar,tar,zip', 'upload_otherext' => 'sql,xml,ovpn', 'upload_imageresize_options' => '1', 'upload_imageresize_width' => '800', 'upload_imageresize_height' => '600', 'upload_imageresize_quality' => '90', 'use_md5_password_as_salt' => '0', 'ga_website_name' => 'Teampass', 'api' => '0', 'subfolder_rights_as_parent' => '1', 'show_only_accessible_folders' => '1', 'enable_suggestion' => '1', 'otv_expiration_period' => '3', 'default_session_expiration_time' => '60', 'duo' => '0', 'enable_server_password_change' => '0', 'ldap_object_class' => '0', 'bck_script_path' => '/var/www/html/backups', 'bck_script_filename' => 'bck_teampass', 'syslog_enable' => '1', 'syslog_host' => 'localhost', 'syslog_port' => '514', 'manager_move_item' => '1', 'create_item_without_password' => '0', 'otv_is_enabled' => '1', 'agses_authentication_enabled' => '0', 'item_extra_fields' => '1', 'saltkey_ante_2127' => 'none', 'migration_to_2127' => 'done', 'files_with_defuse' => 'done', 'timezone' => 'America/Recife', 'enable_attachment_encryption' => '1', 'personal_saltkey_security_level' => '50', 'ldap_new_user_is_administrated_by' => '0', 'disable_show_forgot_pwd_link' => '0', 'offline_key_level' => '0', 'enable_http_request_login' => '0', 'ldap_and_local_authentication' => '1', 'secure_display_image' => '1', 'upload_zero_byte_file' => '0', 'upload_all_extensions_file' => '0', 'bck_script_passkey' => '', 'admin_2fa_required' => '1', 'password_overview_delay' => '5', 'copy_to_clipboard_small_icons' => '1', 'duo_ikey' => 'admin', 'duo_skey' => '', 'duo_host' => '', 'duo_failmode' => 'secure', 'teampass_version' => '3.0.10', 'roles_allowed_to_print_select' => '[]', 'clipboard_life_duration' => '45', 'mfa_for_roles' => '', 'tree_counters' => '0', 'settings_offline_mode' => '0', 'settings_tree_counters' => '0', 'enable_massive_move_delete' => '1', 'email_debug_level' => '0', 'ga_reset_by_user' => '', 'onthefly-backup-key' => '', 'onthefly-restore-key' => '', 'ldap_user_dn_attribute' => 'distinguishedname', 'ldap_dn_additional_user_dn' => '', 'ldap_user_object_filter' => '(objectCategory=person)(objectClass=user)(sAMAccountType=805306368)(!(userAccountControl:1.2.840.113556.1.4.803:=2))(memberOf=CN=G_Teampass_Technical_Team,OU=Teampass,DC=mydomain,DC=local)', 'ldap_bdn' => 'dc=mydomain,dc=local', 'ldap_hosts' => '10.0.3.11,10.0.3.10', 'ldap_password' => '', 'ldap_username' => 'cn=tpuser,ou=Teampass,dc=mydomain,dc=local', 'api_token_duration' => '60', 'enable_tasks_manager' => '1', 'task_maximum_run_time' => '300', 'tasks_manager_refreshing_period' => '20', 'maximum_number_of_items_to_treat' => '100', 'ldap_tls_certifacte_check' => 'LDAP_OPT_X_TLS_NEVER', 'enable_tasks_log' => '0', 'can_create_root_folder' => '1', 'sending_emails_job_frequency' => '3', 'items_statistics_job_frequency' => '2', 'enable_ad_users_with_ad_groups' => '0', 'enable_ad_user_auto_creation' => '0', 'ldap_group_object_filter' => '(objectCategory=group)(objectClass=group)(!(groupType=-2))(!(groupType=-2147483640))(cn=G_Teampass*)', 'ldap_guid_attibute' => 'objectguid', 'upgrade_timestamp' => '1695124739', 'user_keys_job_frequency' => '1', 'item_creation_templates' => '0', 'items_statistics_job_frequency' => '5', 'reload_cache_table_task' => '', 'rebuild_config_file' => '', 'purge_temporary_files_task' => '', 'clean_orphan_objects_task' => '', 'users_personal_folder_task' => '', 'maximum_session_expiration_time' => '60',

Client configuration

Browser: Microsoft Edge

Operating system: Windows 11

hadjieff508 commented 6 months ago

how is it solved?

janekska commented 6 months ago

Got the same problem on fresh install on Ubuntu wit TeamPass version 3.1.2. Found the "workaround": I can save new password item only after hitting the Generate button, then edit to my real password and then Save.

janekska commented 6 months ago

Duplicate but with screencast link in #4130

nikpael commented 6 months ago

i have the same problem with 3.1.2

diepontes commented 6 months ago

i have the same problem. Current version loaded 3.1.2.29

VanRanIT commented 6 months ago

Same here

nikpael commented 6 months ago

@nilsteampassnet hi Nils, do you know how we could solve it? thanks for your time

s1mm0n commented 6 months ago

we have the same problem with teampass version 3.1.2. The problem is that when the password is changed, the JS variable userDidAChange is not set to true when the password field is changed. In my opinion, a function is missing in the class ./pages/items.js.php

Adding the following function to items.js.php works as a dirty fix of the problem but might not work correctly in all cases, @nilsteampassnet may have a better solution here. It seems as there has already been some work done, as some parts to track the changes are currently commented out. https://github.com/nilsteampassnet/TeamPass/blob/ead1c7bd4f95191d58b842358fb804504f8557d9/pages/items.js.php#L759 and https://github.com/nilsteampassnet/TeamPass/blob/ead1c7bd4f95191d58b842358fb804504f8557d9/pages/items.js.php#L5533


$('#form-item-password')
            .on('change', function() {
            if ($(this).val() !== null && $(this).val().length > 0) {
                userDidAChange = true;
                $(this).data('change-ongoing', true);
            } else {
                $(this).data('change-ongoing', false);
            }
        })
        .on('ifChecked', function() {
            userDidAChange = true;
            $(this).data('change-ongoing', true);
        });
eliasabouhamad commented 5 months ago

I upgrade the teampass to 3.1.2.44 on the new items the problem was fixed but still the same issues on the edit of the exciting user