用途:为 Evernote 集成实现基于角色的访问控制(RBAC),适用于多租户系统、角色权限管理及企业业务场景。
主要能力:将 Evernote 内置共享权限(READ_NOTEBOOK、MODIFY_NOTEBOOK_PLUS_ACTIVITY、READ_NOTEBOOK_PLUS_ACTIVITY、GROUP、FULL_ACCESS)映射到应用角色(viewer、editor、admin);构建 RBACService 检查用户对某笔记本是否具备所需权限;创建 Express 授权中间件在受保护路由前校验令牌与权限;集成 Evernote Business 账户;实现多租户令牌隔离与作用域。
使用方式:先定义权限与角色映射;通过 noteStore.listSharedNotebooks() 与 getSharedNotebookByAuth() 查询共享笔记本权限;用 authenticateToBusiness() 获取业务令牌,用 getBusinessNotebooks() 列出业务笔记本;所有 Evernote 操作按租户访问令牌限定作用域,租户与令牌映射需加密存储。
适用场景:团队工作区按团队建共享笔记本并分配角色;业务账户同步共享笔记到中央仪表盘。
限制与错误处理:PERMISSION_DENIED 需核对共享权限;INVALID_AUTH 需重新认证;租户数据泄漏需每请求校验租户 ID;共享上限 500 个笔记本。迁移策略见 evernote-migration-deep-dive。