Files
api.pawol.nu/src/policies/is-payload-owner.js
T

24 lines
611 B
JavaScript
Raw Normal View History

'use strict';
2026-07-04 20:00:51 +04:00
const { UnauthorizedError } = require('@strapi/utils').errors;
module.exports = async (policyContext, config, {strapi}) => {
2026-07-04 20:00:51 +04:00
const {request} = policyContext;
if (!request?.header?.authorization) {
2026-07-04 20:00:51 +04:00
throw new UnauthorizedError('Opération non autorisée');
}
try {
2026-07-04 20:00:51 +04:00
const {id} = await strapi.plugins['users-permissions'].services.jwt.getToken(policyContext);
if (id !== request.body?.data?.user?.id) {
2026-07-04 20:00:51 +04:00
throw new UnauthorizedError('Opération non autorisée');
}
} catch (err) {
2026-07-04 20:00:51 +04:00
throw new UnauthorizedError('Opération non autorisée');
}
2026-07-04 20:00:51 +04:00
return true;
};