From: Bill Erickson Date: Mon, 19 Aug 2013 13:24:17 +0000 (-0400) Subject: Safe auth token activity logging X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=7049eac159b67d132695b78cbcc4dde07c9b9abe;p=working%2FEvergreen.git Safe auth token activity logging Expand safe token generation to include user ID in the cached data, which can be retrieved later for activity logging. Add activity logging directly to the open-ils.actor.safe_token.home_lib.shortname API. --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm index 9c9efc490d..7859cb4cf6 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm @@ -2795,12 +2795,13 @@ sub session_safe_token { $cache ||= OpenSRF::Utils::Cache->new("global", 0); - # Add more like the following if needed... + # add more user fields as needed $cache->put_cache( - "safe-token-home_lib-shortname-$safe_token", - $e->retrieve_actor_org_unit( - $e->requestor->home_ou - )->shortname, + "safe-token-user-$safe_token", { + id => $e->requestor->id, + home_ou_shortname => $e->retrieve_actor_org_unit( + $e->requestor->home_ou)->shortname, + }, 60 * 60 ); @@ -2820,10 +2821,14 @@ __PACKAGE__->register_method( ); sub safe_token_home_lib { - my( $self, $conn, $safe_token ) = @_; - + my( $self, $conn, $safe_token, $who ) = @_; $cache ||= OpenSRF::Utils::Cache->new("global", 0); - return $cache->get_cache( 'safe-token-home_lib-shortname-'. $safe_token ); + + my $blob = $cache->get_cache("safe-token-user-$safe_token"); + return unless $blob; + + $U->log_user_activity($blob->{id}, $who, 'verify'); + return $blob->{home_ou_shortname}; }