关于casbin/webman-permission 权限更新的问题

撒悠啦啦

问题描述

移除某个角色下指定权限之后, 还能读取到该权限
移除:Permission::deletePermissionForUser("角色","权限");
读取:Permission::getPermissionsForUser("角色")

除非webman reload或者重启 。
哪里可以清除权限移除之后,清理对应的缓存记录么?

548 1 0
1个回答

Tinywan

安装版本号发一下

  • nbyang 2023-09-17

    借地问一下大佬你的casbin插件有没有什么比较好的方式能直接对接MongoDB啊

  • Tinywan 2023-09-17

    你自己写个适配器就行了

  • nbyang 2023-09-17

    之前尝试过 按官方文档实现了LoadPolicy和SavePolicy 但跑起来经常取不到权限 没有成型方案我就再试试吧

  • abxk 2024-01-26

    v1.2.5 版本出现该问题

  • Tinywan 2024-01-26

    什么问题?MongoDB?

  • abxk 2024-01-26

    关于casbin/webman-permission 权限更新的问题,使用 Permission::deletePermissionForUser("角色","权限")后, 还能读取到该权限。

  • abxk 2024-01-26

    因为有加域, 使用 Permission::hasPermissionForUser 鉴权。

  • abxk 2024-01-26

    当 webman 重启后,权限更新正常。

  • Tinywan 2024-01-26

    你这是手动修改数据库还是?你可以只开启一个进程看看有问题没?

  • abxk 2024-01-26

    不是手动修改数据库,使用 windows 调试 (一个进程)和 linux 调试(16进程),问题一致。无异常报错,怀疑数据被保存在全局静态变量里了。我现在还在测试,有问题后续再反馈。

  • Tinywan 2024-01-26

    多进程之间是使用Redis订阅发布,不会你有这个问题,生产已经使用一年多

🔝