sysmgr-nest/src/auth/decorators.ts
2026-10-10 21:13:35 +08:00

14 lines
623 B
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { createParamDecorator, ExecutionContext, SetMetadata } from '@nestjs/common';
export const IS_PUBLIC_KEY = 'isPublic';
/** 标记接口为公开接口(跳过登录校验)。 */
export const Public = () => SetMetadata(IS_PUBLIC_KEY, true);
export const PERMISSIONS_KEY = 'permissions';
/** 要求当前用户具备给定权限标识(resource code)。 */
export const RequirePermissions = (...permissions: string[]) => SetMetadata(PERMISSIONS_KEY, permissions);
export const CurrentUser = createParamDecorator((_data: unknown, ctx: ExecutionContext) => {
return ctx.switchToHttp().getRequest().user;
});