zotero/app/scripts
Dan Stillman 55434d14a1
Encrypt API key and WebDAV password using OS keychain (#5897)
Wraps the values stored in nsILoginManager with OSKeyStore, which derives
its master key from Keychain on macOS, DPAPI on Windows, and libsecret on
Linux. A copy of the profile alone is no longer enough to extract these
credentials.

Existing plaintext entries are mirrored once per session to a new
"(encrypted)" realm but preserved in the original realm so a user can
still downgrade to a release that doesn't know about encryption. Active
credential changes (sign in, sign out, password change) write to the
encrypted realm only and remove the legacy entry. A future version can
clear any remaining legacy entries on startup.

Patches MOZ_APP_BASENAME in the bundled runtime so the keychain master
key is labeled "Zotero Encrypted Storage" rather than "Firefox Encrypted
Storage", with a check_line guard so a future Mozilla change to the
OSKeyStore label format fails the build instead of silently rebranding
the entry. Also fixes check_line to take an explicit file argument.
2026-06-12 11:16:22 -04:00
..
8.0_release_build_and_deploy Separate build and deploy for release scripts 2026-04-09 11:37:05 -04:00
9.0_release_build_and_deploy Switch to 9.0 branch for 9.0 releases 2026-04-10 13:40:13 -04:00
add_omni_file Use 64-bit Windows build in add_omni_file 2023-05-27 02:32:57 -04:00
add_version_info Generate changelog link automatically in add_version_info 2023-05-17 04:35:40 -04:00
beta_build_and_deploy Separate build and deploy for release scripts 2026-04-09 11:37:05 -04:00
build_and_run Update build scripts for Linux ARM64 2025-07-30 22:15:31 -04:00
build_for_deploy Support pinned incrementals from deploy server 2026-04-09 14:35:18 -04:00
check_requirements Suggest running git lfs install in check_requirements instructions (#5102) 2025-03-12 06:54:05 -04:00
codesign_local Stop bundling the PDF tools 2023-04-29 07:14:51 -04:00
createprecomplete.py Add Mozilla script to generate precomplete file 2024-07-22 03:05:14 -04:00
dev_build_and_deploy Separate build and deploy for release scripts 2026-04-09 11:37:05 -04:00
dir_build Support arch-specific builds on Windows and Linux 2025-07-30 22:30:53 -04:00
fetch_mar_tools Generate xz MARs for new updater 2023-05-17 04:35:40 -04:00
fetch_rcedit Add zotero-standalone-build repo as app folder 2023-04-26 04:40:22 -04:00
fetch_xulrunner Encrypt API key and WebDAV password using OS keychain (#5897) 2026-06-12 11:16:22 -04:00
get_commit_files Add zotero-standalone-build repo as app folder 2023-04-26 04:40:22 -04:00
get_repo_branch_hash Add zotero-standalone-build repo as app folder 2023-04-26 04:40:22 -04:00
manage_incrementals Fix manage_incrementals on Cygwin 2026-04-09 12:32:03 -04:00
notarization_info Switch to notarytool for Mac build notarization 2023-06-19 06:39:39 -04:00
notarization_stapler Add zotero-standalone-build repo as app folder 2023-04-26 04:40:22 -04:00
notarize_mac_app Switch to notarytool for Mac build notarization 2023-06-19 06:39:39 -04:00
optimizejars.py Add zotero-standalone-build repo as app folder 2023-04-26 04:40:22 -04:00
prepare_build Update prepare_build for Python 3.12 (#3865) 2024-03-20 23:51:25 -04:00
test_build_and_deploy Separate build and deploy for release scripts 2026-04-09 11:37:05 -04:00
upload_builds Convert Cygwin paths passed to AWS CLI 2023-05-18 10:51:29 +01:00
utils.sh Encrypt API key and WebDAV password using OS keychain (#5897) 2026-06-12 11:16:22 -04:00
xulrunner_hash Support arch-specific builds on Windows and Linux 2025-07-30 22:30:53 -04:00