From a5c030f94bfbc2f63fb59921dc9fda9da2875305 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Mon, 19 Aug 2013 09:24:17 -0400 Subject: [PATCH] LP#1240119 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. Signed-off-by: Bill Erickson Signed-off-by: Josh Stompro Signed-off-by: Jason Stephenson --- .../perlmods/lib/OpenILS/Application/Actor.pm | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm index ceaeaacab9..26b86d41ef 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm @@ -2830,12 +2830,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 ); @@ -2851,14 +2852,19 @@ __PACKAGE__->register_method( asscociated with a safe token from generated by open-ils.actor.session.safe_token. @param safe_token Active safe token + @param who Optional user activity "ewho" value / ); 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}; } -- 2.43.2