如果有人在CSLA中使用DotNetNuke授权,我感兴趣。
我希望能够使用我的DotNetNuke角色来为我的CSLA对象和属性分配权限。如果我只是引用DNN程序集将不会在我的CSLA业务对象中创建不需要的依赖项?
构建直接查询DNN数据库以获得角色成员资格的CSLA对象会更容易吗?
...谢谢
答案 0 :(得分:1)
您肯定不希望使用DNN程序集创建该依赖项。你的第二个建议是要走的路。
CSLA使用标准的IPrincipal / IIdentity身份验证。您可以创建一个继承自CSLA.Security.BusinessPrincipalBase的对象,该对象使用直接从DNN数据库中获取其角色的CSLA对象(例如用户)。一旦集成了该身份验证,就可以通过覆盖AddAuthorizationRules方法将角色放在业务对象中。