# 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: ```perl package MyUserData; use Moo; with 'MooX::Role::CryptedPassword'; has username => (is => 'ro', required => 1); ... 1; ``` Somewhere else: ```perl 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 # 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.