cnpmcore
Version:
17 lines • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AlwaysAuth = void 0;
const UserRoleManager_1 = require("../UserRoleManager");
async function AlwaysAuth(ctx, next) {
if (ctx.app.config.cnpmcore.alwaysAuth) {
// ignore login request: `PUT /-/user/org.couchdb.user::username`
const isLoginRequest = ctx.method === 'PUT' && ctx.path.startsWith('/-/user/org.couchdb.user:');
if (!isLoginRequest) {
const userRoleManager = await ctx.getEggObject(UserRoleManager_1.UserRoleManager);
await userRoleManager.requiredAuthorizedUser(ctx, 'read');
}
}
await next();
}
exports.AlwaysAuth = AlwaysAuth;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWx3YXlzQXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2FwcC9wb3J0L21pZGRsZXdhcmUvQWx3YXlzQXV0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx3REFBcUQ7QUFFOUMsS0FBSyxVQUFVLFVBQVUsQ0FBQyxHQUFlLEVBQUUsSUFBVTtJQUMxRCxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUU7UUFDdEMsaUVBQWlFO1FBQ2pFLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEtBQUssS0FBSyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDaEcsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNuQixNQUFNLGVBQWUsR0FBRyxNQUFNLEdBQUcsQ0FBQyxZQUFZLENBQUMsaUNBQWUsQ0FBQyxDQUFDO1lBQ2hFLE1BQU0sZUFBZSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMzRDtLQUNGO0lBQ0QsTUFBTSxJQUFJLEVBQUUsQ0FBQztBQUNmLENBQUM7QUFWRCxnQ0FVQyJ9