Package com.sun.identity.security
Class DecodeAction
java.lang.Object
com.sun.identity.security.DecodeAction
- All Implemented Interfaces:
PrivilegedAction<String>
The class is used to perform privileged operations with
AccessController.doPrivileged()
when using
com.iplanet.services.util.Crypt
to decode passwords. Ths class
implements the interface
PrivilegedAction
with a non-default
constructor. This class should be used in order to perform the privileged
operation of com.iplanet.services.util.Crypt.decode/decrypt()
.
This line of code: String decStr =
com.iplanet.services.util.Crypt.decode(str) should be replaced with: String
decStr = (String) AccessController.doPrivileged( new DecodeAction(str)); If
this is not done and Java security permissions check is enabled, then the
operation will fail and return a null every time.
Note: Java security permissions check for OpenAM can be enabled by
setting the property com.sun.identity.security.checkcaller
to
true in AMConfig properties file.
-
Field Summary
-
Constructor Summary
ConstructorDescriptionDecodeAction
(String svalue) Non default constructor to be used when adoPrivileged()
is performed for the decryption operations.DecodeAction
(String value, com.iplanet.services.util.AMEncryption encrKey) -
Method Summary
-
Field Details
-
value
-
encr
protected com.iplanet.services.util.AMEncryption encr
-
-
Constructor Details
-
DecodeAction
Non default constructor to be used when adoPrivileged()
is performed for the decryption operations.- Parameters:
svalue
- Value of string to be encoded/decoded
-
DecodeAction
- Parameters:
value
- Value to be decodedencrKey
- Encryption object to be used for decoding
-
-
Method Details
-
run
- Specified by:
run
in interfacePrivilegedAction<String>
-