public inbox for [email protected]  
help / color / mirror / Atom feed
From: Yogesh Mahajan <[email protected]>
To: pgadmin-hackers <[email protected]>
Subject: #7076 - Keychain access on Mac
Date: Mon, 5 Aug 2024 17:57:07 +0530
Message-ID: <CAMa=N=NWVwbd3RxwHcOZsqNVJNeaWXpS=yVPCOO5rbQkZRGJKw@mail.gmail.com> (raw)

Hi Hackers,

Issue #7076 <https://github.com/pgadmin-org/pgadmin4/issues/7076; has been
reported by many Mac users. Issue has popped up when python binary version
is changed for the pgadmin.

To save server passwords, pgadmin uses os level secret storage (in case of
Mac it is keyring) and adds an entry for each save password. Whenever the
python binary version is changed, keychain (python lib used to access
keychain) asks for a password 2 times for accessing each entry. If you have
10 servers, then it will ask for 20 times.

To fix the issue, pgadmin will follow the same approach as chrome.
1.An encryption key will be auto-generated and will be stored in the
keychain.
2.Whenever save password request is received, encryption key will be used
to encrypt password and encrypted password will be saved in the pgadmin
database.
3.Similarly, while retrieving the password, encryption will be pulled from
the keychain and will be used to decrypt the password.
This will reduce password asks to 2 times on python binary version change.

Kindly share your inputs/suggestions/thoughts.


Thanks,
Yogesh Mahajan
EnterpriseDB


view thread (7+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected]
  Subject: Re: #7076 - Keychain access on Mac
  In-Reply-To: <CAMa=N=NWVwbd3RxwHcOZsqNVJNeaWXpS=yVPCOO5rbQkZRGJKw@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox