make verifyApiKey check for hashed, need @calcom/ee in transpile modules next.config
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { NextMiddleware } from "next-api-middleware";
|
||||
|
||||
import { hashAPIKey } from "@calcom/ee/lib/api/apiKeys";
|
||||
// import { nanoid } from "nanoid";
|
||||
import prisma from "@calcom/prisma";
|
||||
|
||||
@@ -12,7 +13,9 @@ const today = new Date();
|
||||
|
||||
export const verifyApiKey: NextMiddleware = async (req, res, next) => {
|
||||
if (!req.query.apiKey) res.status(401).json({ message: "No API key provided" });
|
||||
const apiKey = await prisma.apiKey.findUnique({ where: { id: req.query.apiKey as string } });
|
||||
const strippedApiKey = `${req.query.apiKey}`.replace("cal_", "");
|
||||
const hashedKey = hashAPIKey(strippedApiKey);
|
||||
const apiKey = await prisma.apiKey.findUnique({ where: { hashedKey } });
|
||||
if (!apiKey) {
|
||||
res.status(401).json({ error: "Your api key is not valid" });
|
||||
throw new Error("No api key found");
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// https://www.npmjs.com/package/next-transpile-modules
|
||||
// This makes our @calcom/prisma package from the monorepo to be transpiled and usable by API
|
||||
const withTM = require("next-transpile-modules")(["@calcom/prisma", "@calcom/lib"]);
|
||||
const withTM = require("next-transpile-modules")(["@calcom/prisma", "@calcom/lib", "@calcom/ee"]);
|
||||
|
||||
// use something like withPlugins([withTM], {}) if more plugins added later.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user