public class ReferenceEncryptedProperties extends Properties implements EncryptedProperties
EncryptedProperties
interface. This
implementation wraps a normal properties file, and creates surrogates for the
getProperty
and setProperty
methods that perform encryption
and decryption based on Encryptor
.
This implementation differs from DefaultEncryptedProperties
in that
it actually extends from java.util.Properties
for applications that need an
instance of that class. In order to do so, the getProperty
and
setProperty
methods were modified to throw EncryptionRuntimeException
instead of EncryptionException
.
EncryptedProperties
,
DefaultEncryptedProperties
,
Serialized Formdefaults
Constructor and Description |
---|
ReferenceEncryptedProperties()
Instantiates a new encrypted properties.
|
ReferenceEncryptedProperties(Properties defaults) |
Modifier and Type | Method and Description |
---|---|
Enumeration |
elements()
This method has been overridden to throw an
UnsupportedOperationException |
Set |
entrySet()
This method has been overridden to throw an
UnsupportedOperationException |
String |
getProperty(String key)
Gets the property value from the encrypted store, decrypts it, and
returns the plaintext value to the caller.
|
String |
getProperty(String key,
String defaultValue) |
void |
list(PrintStream out)
This method has been overridden to throw an
UnsupportedOperationException |
void |
list(PrintWriter out)
This method has been overridden to throw an
UnsupportedOperationException |
void |
load(InputStream in)
Reads a property list (key and element pairs) from the input stream.
|
void |
load(Reader in)
For JDK 1.5 compatibility, this method has been overridden convert the Reader
into an InputStream and call the superclass constructor.
|
Object |
put(Object key,
Object value)
This method has been overridden to only accept Strings for key and value, and to encrypt
those Strings before storing them.
|
String |
setProperty(String key,
String value)
Encrypts the plaintext property value and stores the ciphertext value
in the encrypted store.
|
String |
toString()
This method has been overridden to not print out the keys and values stored in this properties file.
|
Collection |
values()
This method has been overridden to throw an
UnsupportedOperationException |
loadFromXML, propertyNames, save, store, store, storeToXML, storeToXML, stringPropertyNames
clear, clone, compute, computeIfAbsent, computeIfPresent, contains, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, keys, keySet, merge, putAll, putIfAbsent, rehash, remove, remove, replace, replace, replaceAll, size
finalize, getClass, notify, notifyAll, wait, wait, wait
keySet, store
public ReferenceEncryptedProperties()
public ReferenceEncryptedProperties(Properties defaults)
public String getProperty(String key) throws EncryptionRuntimeException
getProperty
in interface EncryptedProperties
getProperty
in class Properties
key
- the name of the property to getEncryptionRuntimeException
- Thrown if decryption fails.public String getProperty(String key, String defaultValue) throws EncryptionRuntimeException
getProperty
in class Properties
EncryptionRuntimeException
- Thrown if decryption fails.public String setProperty(String key, String value) throws EncryptionRuntimeException
setProperty
in interface EncryptedProperties
setProperty
in class Properties
key
- the name of the property to setvalue
- the value of the property to setnull
if it did not have one.EncryptionRuntimeException
- Thrown if encryption fails.public void load(InputStream in) throws IOException
load
in interface EncryptedProperties
load
in class Properties
in
- the input stream that contains the properties fileIOException
- Thrown if input stream invalid or does not
correspond to Java properties file format.public void load(Reader in) throws IOException
load
in class Properties
IOException
- Thrown if Reader
input stream invalid or does not
correspond to Java properties file format.public void list(PrintStream out)
UnsupportedOperationException
list
in class Properties
public void list(PrintWriter out)
UnsupportedOperationException
list
in class Properties
public Collection values()
UnsupportedOperationException
public Set entrySet()
UnsupportedOperationException
public Enumeration elements()
UnsupportedOperationException
public Object put(Object key, Object value)
setProperty
to add values to the Properties map. If an outside class does erroneously call this method
with non-String parameters an IllegalArgumentException
will be thrown.Copyright © 2020 The Open Web Application Security Project (OWASP). All rights reserved.