2009-06-08 84 views
0

如果有人在CSLA中使用DotNetNuke授权,我很感兴趣。将CSLA授权与DotNetNuke角色集成

我希望能够使用我的DotNetNuke角色来为我的CSLA对象和属性分配权限。如果我只是引用DNN程序集不会在我的CSLA业务对象中创建不需要的依赖项?

构建直接查询DNN数据库以获取角色成员资格的CSLA对象会更容易吗?

谢谢...

回答

1

你肯定不希望创建与您的DNN组件的依赖。你的第二个建议是要走的路。

CSLA使用标准的IPrincipal/IIdentity身份验证。您可以创建一个从CSLA.Security.BusinessPrincipalBase继承的对象,该对象使用直接从DNN数据库抓取角色的CSLA对象(例如,用户)。集成了验证后,您可以通过重写AddAuthorizationRules方法将角色放入业务对象中。