comparison mod_client_management/mod_client_management.lua @ 5694:8afa0fb8a73e

mod_client_management: Report on longest lived token when grant does not expire E.g. for mod_http_oauth2 where by default the grant itself is unlimited, while refresh tokens are issued with one week lifetime, but are renewed with each use.
author Kim Alvefur <zash@zash.se>
date Fri, 10 Nov 2023 00:26:17 +0100
parents c69320fc438b
children 3730992d0c7c
comparison
equal deleted inserted replaced
5693:6696075e26e2 5694:8afa0fb8a73e
469 align = "right"; 469 align = "right";
470 mapper = date_or_time; 470 mapper = date_or_time;
471 }; 471 };
472 { 472 {
473 title = "Expires"; 473 title = "Expires";
474 key = "expires"; 474 key = "active";
475 width = date_or_time_width; 475 width = date_or_time_width;
476 align = "right"; 476 align = "right";
477 mapper = date_or_time; 477 mapper = function(active, client)
478 local grant = active and active.grant;
479 local expires = client and client.expires;
480 local tokens = grant and grant.tokens;
481 if expires or not tokens then
482 return date_or_time(expires);
483 end
484
485 for _, token in pairs(tokens) do
486 if token.expires and (not expires or token.expires > expires) then
487 expires = token.expires;
488 end
489 end
490 return date_or_time(expires);
491 end;
478 }; 492 };
479 { 493 {
480 title = "Authentication"; 494 title = "Authentication";
481 key = "active"; 495 key = "active";
482 width = "2p"; 496 width = "2p";