考虑到较高级权限拥有者应该可以访问较低权限的页面, 即权限包含,而不仅仅是简单的权限相斥,如权限A1比A2高,则A1拥有者亦应可访问部分A2页面。
那么,如何指定一个页面的访问权限为多个,或者其他实现方式?

解决方案 »

  1.   

    WebSnap本身提供的权限控制好象不能完全满足你的要求,可以考虑自已写代码来处理,思路如下:
       在AppModule.PageDispatch的BeforeDispatchPage加入你自已的权限控制:
    procedure TDMApp.PageDispatcherBeforeDispatchPage(Sender: TObject;
      const PageName: String; var Handled: Boolean);
    begin
      if PageName = '要处理的页名' then
        Handled := true  //不充许访问
        // 也可在此处当PageName设置为你的错误提示页面
      else
        Handled := false;  //充许访问
    end;
      

  2.   

    但这样做会跟WebSnap自身的机制发生冲突,我不想抛开它自身机制自己做一套,只想在原有基础上进行调整,有他的代码就好了