Files
zopu-code/packages/backend/convex/authz.ts

18 lines
450 B
TypeScript

import { ConvexError } from "convex/values";
export interface AuthContext {
readonly auth: {
readonly getUserIdentity: () => Promise<{
readonly tokenIdentifier: string;
} | null>;
};
}
export const requireOwnerId = async (ctx: AuthContext): Promise<string> => {
const identity = await ctx.auth.getUserIdentity();
if (!identity) {
throw new ConvexError("Authentication required");
}
return identity.tokenIdentifier;
};