当没有为CASL中的给定主题提供任何规则时,检查此主题的能力总是返回false。
例如。
import { Ability } from '@casl/ability';
const ability = new Ability({
action: "read", subject: "FirstSubject",
// no rule for SecondSubject
});
ability.can("read", "FirstSubject"); // true
ability.can("write", "FirstSubject"); // false
ability.can("read", "SecondSubject"); // false <-- These two lines should
ability.can("write", "SecondSubject"); // false <-- return `true`
有没有可能改变这一行为,使该能力为没有任何规则的主体返回true?
在我的用例中,我有大量的主题,并且可以动态添加新的主题。每当添加新的主题时,总是必须添加{ action: "manage", subject: "NewSubject"}是很困难的。我宁愿只为某些实际受到限制的主题添加规则。
发布于 2021-10-14 11:06:18
根据与CASL作者的交谈,这是不可能实现的。
https://stackoverflow.com/questions/69558399
复制相似问题