Klasse :: Benutzer :: dbi

Eine Benutzerklasse: Login-Anmeldeinformationen, Rollen, Berechtigungen, Domains
Jetzt downloaden

Klasse :: Benutzer :: dbi Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • David J. Oswald
  • Website des Verlags:
  • http://search.cpan.org/~davido/

Klasse :: Benutzer :: dbi Stichworte


Klasse :: Benutzer :: dbi Beschreibung

Class :: User :: DBI ist ein Perl-Modul zur Vereinfachung Benutzeranmeldungen, Authentifizierung, rollenbasierte Zugriffskontrolle (Autorisierung) sowie Domain (Ort) Einschränkung Zugang control.It speichert Benutzer-Credentials, Rollen und grundlegende Benutzerinformationen in eine Datenbank über eine Verbindungsstück DBIx :: Datenbank connection.User Paßphrasen sind mit einem 512-Bit-Zufall Salz (unique pro Benutzer) gesalzen kryptographisch starken Zufallszahlengenerators, und in einem SHA2-512 Digest unter Verwendung von zuvor in der Datenbank gespeichert werden. Alle nachfolgenden Passwort Validierungsprüfungen Test gegen die Salz und Passwort SHA2 hash.IP weißen Listen können pro Benutzer verwaltet werden. Wenn ein Benutzer festgelegt wird, um einen IP-Check erforderlich ist, dann überprüft der Benutzer nur, wenn sein Passwort authentifiziert und seine IP in der Whitelist mit seinem Benutzer zugeordnet gefunden wird id.Users eine Rolle gegeben werden kann, die zu einer Unix vom Konzept her ähnlich ist Gruppe . Rollen sind einfache Strings. Darüber hinaus sind mehrere Privilegien (auch einfache Strings) zu roles.Users gewährt mehrere Domänen gegeben werden können, die zu Modell Örtlichkeiten oder Rechtsordnungen verwendet werden könnten. Domains handelt unabhängig von Rollen und Privilegien, sondern ist eine bequeme Möglichkeit, eine Rolle und ihre Privilegien zu einem bestimmten Satz von localities.SYNOPSISThis Modul Modellen einer User Klasse, mit Anmeldeinformationen von Zwang und Rollen Zugriffssteuerung. Zusätzlich können IP-weiße Listen als zusätzliche Validierungsmaßnahme verwendet werden. Domain (Lokalität) basierte Zugriffssteuerung auch unabhängig von rollenbasierten Zugriffs control.A Kurzbeschreibung der Authentifizierung bereitgestellt: Passwörter gespeichert werden als zufällig gesalzen SHA2-512 Hashes. Optional weiße Listen von IP-Adressen sind auch available.A kurze Beschreibung dieser RBAC Implementierung: Die Benutzer haben Rollen und Domänen (Örtlichkeiten). Rollen tragen Privilegien. Rollen mit Privilegien und Domänen handeln unabhängig, so dass für anspruchsvolle Zutrittskontrolle. # MySQL-Datenbank-Einstellungen: my $ conn = DBIx :: Stecker-> new ( dbi: mysql: database = cudbi_tests, '# eine Verbindung mit DBIx :: Anschluss-Set up testing_user', 'testers_pass', {Raiseerror => 1 , autocommit => 1}); # Jetzt können wir mit der Klasse spielen :: User :: DBI: Klasse :: User :: DBI> configure_db ($ conn); # Die Tabellen für einen Benutzer DB einrichten. mein @user_list = Class :: User :: DBI> list_users; my $ user = new ($ conn, $ userid); my $ user_id = $ user-> add_user ({password => $ password, ip_req => $ bool_ip_req, ips => , # aref ip ist. username => $ full_name, email => $ email, role => $ Rolle,}); my $ userid = $ user-> Benutzer-ID; my $ validierte = $ user-> validierte; my $ für ungültig erklärt = $ user-> validierte (0); # Abbrechen Authentifizierung. my $ is_valid = $ user-> validate ($ Pass $ ip); # Validate einschließlich IP. my $ is_valid = $ user-> validate ($ pass); # Validate ohne IP. my $ info_href = $ user-> load_profile; my $ Credentials = $ user-> get_credentials; # Gibt eine nützliche hashref. meine @valid_ips = $ user-> get_valid_ips; my $ ip_required = $ user-> get_ip_required; my $ success = $ user-> set_ip_required (1); my $ existiert = $ user-> exists_user; my $ success = $ user-> DELETE_USER; my $ del_count = $ user-> delete_ips (@ips); my $ add_count = $ user-> add_ips (@ips); my $ success = $ user-> set_email ( 'new@email.address'); my $ success = $ user-> set_username ( 'New User Name Cool'); my $ success = $ user-> update_password ( 'Old Pass', 'New Pass'); my $ success = $ user-> update_password ( 'New Pass'); my $ success = $ user-> set_role ($ Rolle); my $ hat = $ user-> is_role ($ Rolle); my $ role = $ user-> get_role; # Accessoren für den ROLEPRIVILEGES und UserDomains Klassen. my $ rp = $ user-> role_privileges; my $ has_priv = $ user-> role_privileges-> has_privilege ( 'some_privilg'); my $ ud = $ user-> user_domains; my $ has_domain = $ user-> user_domains-> has_domain ( 'some_domain'); Artikel Homepage


Klasse :: Benutzer :: dbi Zugehörige Software