The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MooX::Role::CryptedPassword - Password attribute from a encrypted file.

SYNOPSIS

Prepare:

    $ create_crypted_password --file-name etc/password.private \
                              --cipher-key 'This-is-the-cipher-key' \
                              --password 'This-is-a-nice-password'

Your class:

    package MyUserData;
    use Moo;
    with 'MooX::Role::CryptedPassword';

    has username => (is => 'ro', required => 1);

    ...

    1;

Somewhere else:

    my $ud = MyUserData->new(
        username => 'abeltje',

        password_file => 'etc/password.private',
        cipher_key    => 'This-is-the-cipher-key',
    );

ATTRIBUTES

password => $password

The decrypted version of the password found in the password_file parameter.

DESCRIPTION

This role adds an attribute password to your class. If the parameter password_file is passed, the contents are assumed to be encrypted with the Rijndael cipher (and you should supply the cipher_key argument).

Use the supplied create_crypted_password tool to generate the file.

In case the password (for development reasons) doesn't need to be encrypted or comes from a different source (like a key-value-store), one can always pass a plain-text password directly by passing it as the password parameter.

AUTHOR

© MMXVII - Abe Timmerman <abeltje@cpan.org>

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.