我有一个使用业务层的工作流(在独立的dll中) 此业务层使用IPrincipal角色检查权限,所以工作流活动必须设置Principal在调用业务层上的方法之前在当前线程上。Workflow Foundation 4 - IPrincipal在工作流从延迟活动恢复时丢失
我在延迟活动后恢复wrokflow时遇到问题:角色/ IIdentity丢失(或更糟糕:错误)。
是否有人对我如何处理这种情况有所了解,并确保在恢复时使用延迟前的IPrincipal集? 或者您是否对如何管理工作流中的角色有所了解?
谢谢!
好主意。我认为校长必须是可序列化的? 工作流程恢复时,您如何自动重新安装校长? – Fabske 2012-03-24 10:58:13
是的,它必须是可序列化的,但它们可能已经是(IClaimsPrincipal至少是)。如果您只是针对工作流变量而不是安全上下文进行编码(无论如何,这可能会是不同的上下文),您无需将其重新安装在任何特定上下文中。 – 2012-03-25 23:54:20
好的。我需要重新安装它,因为dll在CurrentThread上使用IPrincipal,但我会搜索是否有办法自动执行该操作。 – Fabske 2012-03-26 06:39:06