Permisos

Configura una Base completa o tablas, campos, registros y vistas individuales como solo lectura. Úsalo para informes o para permitir la edición de solo una parte de los datos.

Registra el plugin de Bases e importa @univerjs-pro/bases/facade antes de usar estas API.

Configurar una Base como solo lectura

TypeScript
const base = univerAPI.getActiveBase()if (!base) throw new Error('Open a Base first')await base.getPermission().setReadOnly()console.log(base.getPermission().canEdit()) // falseawait base.getPermission().setEditable()

Restringir un objeto individual

Por ejemplo, restringe una tabla:

TypeScript
const table = base.getTables()[0]if (!table) throw new Error('Create a table first')await table.getPermission().setReadOnly()await table.getPermission().setEditable()

Los campos, registros y vistas también exponen getPermission(), al igual que los paneles y las vistas dinámicas cuando su plugin está registrado. Habilitar un objeto no anula una restricción superior: permitir editar un registro no anula el modo de solo lectura de su tabla.

setReadOnly() y setEditable() devuelven promesas y requieren await. Usa base.getPermission().setObjectPermissions() para cambios por lotes; consulta los parámetros en Bases Facade.

Copia, exportación y comentarios

Los permisos de Base también controlan la copia, la exportación y los comentarios. Por ejemplo, desactiva la copia:

TypeScript
import { UnitAction } from '@univerjs/protocol'await base.getPermission().setPoint(UnitAction.Copy, false)

Usa UnitAction.Export y UnitAction.Comment para los permisos de exportación y comentarios.

Conectar los permisos de negocio

Los permisos locales controlan el comportamiento del editor. Las aplicaciones colaborativas también deben autorizar en el servidor la lectura del contenido, la participación en la colaboración y el envío de cambios; consulta la integración del servidor.

Prueba con un editor, un lector y un usuario sin autorización, comprobando tanto las acciones de la página como las solicitudes directas.

¿Cómo es esta guía?

© 2026 DreamNum Co., Ltd.