Skip to content

Commit

Permalink
Widen API to allow storing keychain entries for an authenticated user (
Browse files Browse the repository at this point in the history
…#41)

Overlead and extend method storePassphrase() with requiresAuth flag
  • Loading branch information
purejava committed Aug 16, 2024
1 parent d1c2623 commit 0cafab2
Showing 1 changed file with 18 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,24 @@ default void storePassphrase(String key, CharSequence passphrase) throws Keychai
* @throws KeychainAccessException If storing the password failed
*/
@Blocking
void storePassphrase(String key, @Nullable String displayName, CharSequence passphrase) throws KeychainAccessException;
default void storePassphrase(String key, @Nullable String displayName, CharSequence passphrase) throws KeychainAccessException {
storePassphrase(key, displayName, passphrase, false);
}

/**
* Associates a passphrase with a given key and a name for that key.
*
* @param key Key used to retrieve the passphrase via {@link #loadPassphrase(String)}.
* @param displayName The according name to the key. That's the name of the vault displayed in the UI.
* It's passed to the keychain as an additional information about the vault besides the key.
* The parameter does not need to be unique or be checked by the keychain.
* @param passphrase The secret to store in this keychain.
* @param requireOsAuthentication Defines, whether the user needs to authenticate to store a passphrase.
* The authentication mechanism is provided by the operating system dependent
* implementations of this API.
* @throws KeychainAccessException If storing the password failed
*/
void storePassphrase(String key, @Nullable String displayName, CharSequence passphrase, boolean requireOsAuthentication) throws KeychainAccessException;

/**
* @param key Unique key previously used while {@link #storePassphrase(String, String, CharSequence)} storing a passphrase}.
Expand Down

0 comments on commit 0cafab2

Please sign in to comment.