Include the resource in the cache

This commit is contained in:
Owen
2026-10-27 14:57:11 -04:00
parent 42d672cfc6
commit a85b633ca0
+11 -2
View File
@@ -720,7 +720,7 @@ export async function verifyResourceSession(
);
if (resourceSessionToken) {
const sessionCacheKey = `session:${resourceSessionToken}`;
const sessionCacheKey = `session:${resource.resourceId}:${resourceSessionToken}`;
let resourceSession: ResourceSession | null | undefined =
localCache.get(sessionCacheKey);
@@ -736,6 +736,14 @@ export async function verifyResourceSession(
}
}
// sessions are scoped to a single resource; never honor one issued for another
if (
resourceSession &&
resourceSession.resourceId !== resource.resourceId
) {
resourceSession = null;
}
if (resourceSession?.isRequestToken) {
logger.debug(
"Resource not allowed because session is a temporary request token"
@@ -1245,7 +1253,7 @@ async function allowAccessToken(
);
if (resourceSessionToken) {
const sessionCacheKey = `session:${resourceSessionToken}`;
const sessionCacheKey = `session:${resource.resourceId}:${resourceSessionToken}`;
let resourceSession: ResourceSession | null | undefined =
localCache.get(sessionCacheKey);
@@ -1262,6 +1270,7 @@ async function allowAccessToken(
if (
resourceSession &&
resourceSession.resourceId === resource.resourceId &&
!resourceSession.isRequestToken &&
resourceSession.accessTokenId === tokenItem.accessTokenId
) {