Tridion 2009 - 在自定义页面上使用互操作 - 用户应充当管理员之类的角色



我有一个关于使用互操作dll处理自定义页面上的用户访问的说明。

以下是场景:-

  1. ABC userCM没有任何访问权限(注意:ABC用户是tridion用户)
  2. 如果 ABC 用户访问自定义页面,则用户应使用管理员用户进行模拟
  3. 现在ABC用户将创建/更新组件/页面并发布组件/页面
  4. 但是问题出在组件/页面的历史记录上,显示admin user名称的名称,但我想用ABC user的名称记录更改

我怎样才能做到这一点?

在不使用模拟的情况下,是否有任何最佳方法可以实现此目的?

我想知道你为什么要这样做。当您使用管理员用户模拟用户 ABC 时,ABC 用户可以在系统中执行任何操作。

为什么不将 ABC 用户添加到 CM 系统并授予用户所需的权限。

要以ABC用户

的名称记录历史记录中的更改,据我所知,用户必须是CM用户。

我很确定你想做的事情是不可能的,正如@Bappi所建议的那样。对 Tridion 物品执行操作时,您有 2 种选择。要么以有权执行操作的人的身份执行此操作,要么以具有权限的用户(即您的管理员用户)的身份执行此操作。CMS 将存储有关哪个用户执行操作的系统元数据(这是您看到的创建或修改组件的用户)。不能(也不应该)使用 API 覆盖或修改此数据。

如果您真的需要知道谁执行了该操作,请授予他们执行此操作的权限(无论如何,当您给他们这个安全漏洞时,这似乎是一个奇怪的要求,也许您可以解释更多关于这背后的逻辑),或者可以在您的架构中添加一个名为"作者"的字段并使用您的自定义页面使用 ABC 的用户名填充它。

如果这不是一个可行的选项,您还可以考虑授予用户 ABC 对目标出版物中某种临时文件夹的访问权限,他们可以在其中以自己的帐户(仍通过自定义页面)制作组件,以便您获取历史记录,然后模拟管理员用户将其移动到所需位置。

如何动态

设置发布级别的权限?

  1. 加载自定义页面时,将用户的权限设置为特定发布。
  2. 操作完成后,删除用户的权限。

但我想,还是有漏洞的。

当此自定义页面运行时,如果用户访问内容管理器,他们可以看到发布,并且可以在此时执行所需的操作。

最新更新