Interface PasswordEncoding

  • All Known Implementing Classes:
    PlainTextPasswordEncoder, Rot13PasswordEncoder, Rot47PasswordEncoder

    public interface PasswordEncoding
    Password encoders are used to translate the text of the database password, on loading and on saving, from one form to another. It can facilitate the obscuring of the password text to make database connection information less obvious to someone who stumbles onto the password. Cayenne only includes facilities to obscure, not encrypt, the database password. The mechanism is user-extensible, though, so should stronger security features be required, they can be added and integrated into both the modeler and framework.
    Since:
    3.0
    • Field Detail

      • standardEncoders

        static final String[] standardEncoders
    • Method Detail

      • decodePassword

        String decodePassword​(String encodedPassword,
                              String key)
        Decodes an encoded database password.
        Parameters:
        encodedPassword - - The encoded password to be decoded
        key - - An optional data element which can be used to unlock the password. Some encoders may require the key.
        Returns:
        The decoded normal/plain password.
      • encodePassword

        String encodePassword​(String normalPassword,
                              String key)
        Encodes a normal/plain database password.
        Parameters:
        normalPassword - - The normal/plain password to be encoded
        key - - An optional data element which can be used to lock the password. Some encoders may require the key.
        Returns:
        The encoded password.