Package org.jdesktop.swingx.auth
Class KeyChain
java.lang.Object
org.jdesktop.swingx.auth.KeyChain
KeyChain is a class that implements the "KeyChain" concept.
Fundamentally, it allows you to store multiple keys/credentials
in a central password store. Access to this central store is
controlled through a master password. This mechanism is used in
many popular client applications where you need to store credentials
for multiple servers/accounts. The actual store for the KeyStore
can be any OutputStream and it can work in the webstart sandbox
using Muffins.
To contstruct a KeyChain, you need to pass in an InputStream to the store and it will initialize the KeyStore from the InputStream. You can add and remove entries any time once you have an instance of KeyChain. To persist the KeyChain and reflect any changes, you need to call store method with an OutputStream.
- Author:
- Bino George
-
Constructor Summary
ConstructorsConstructorDescriptionKeyChain
(char[] masterPassword, InputStream inputStream) Creates an instance of KeyChain and initializes the store from the InputStream. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addPassword
(String user, String server, char[] password) Adds a password to the KeyChain for a given account/user and server.getPassword
(String user, String server) Fetches the password for a given account/user and server.void
removePassword
(String user, String server) Removes a password for a given account/user and server.void
store
(OutputStream ostream) Persists the KeyChain to an OutputStream
-
Constructor Details
-
KeyChain
Creates an instance of KeyChain and initializes the store from the InputStream.- Parameters:
masterPassword
-inputStream
-- Throws:
IOException
-
-
Method Details
-
getPassword
Fetches the password for a given account/user and server.- Parameters:
user
-server
-- Returns:
null
if no password could be obtained, the password otherwise
-
addPassword
Adds a password to the KeyChain for a given account/user and server.- Parameters:
user
-server
-password
-
-
removePassword
Removes a password for a given account/user and server.- Parameters:
user
-server
-
-
store
Persists the KeyChain to an OutputStream- Parameters:
ostream
-- Throws:
IOException
-