创建颜色配置文件需要进行身份验证

创建颜色配置文件需要进行身份验证

我正在运行全新安装的 CentOS 7 GNOME,这样我就可以从 Windows 进行 RDP。我跟着“通过 XRDP 连接到 GNOME 桌面环境”说明,但是当我连接时,我会得到一个额外的登录信息,上面写着

authentication is required to create a color profile

如何删除这个额外的登录信息?

为了解决这个问题,我尝试了 “Griffon 的 IT 图书馆”的解决方案,但它不起作用,因为链接不仅仅是解决这个问题的方法。我将解决方案粘贴在下面。

当您通过远程会话登录系统时,您将看到弹出此消息。您只需取消即可继续,直到下次登录并开始新会话为止。

为了避免出现此提示,我们需要更改 polkit 配置。使用管理员权限,02-allow-colord.conf 在以下目录下创建一个名为的文件/etc/polkit-1/localauthority.conf.d/

该文件应包含[原文如此]以下说明,并且在远程连接到您的系统时,您不应再收到此类身份验证请求的提示

polkit.addRule(function(action, subject) {
   if ((action.id == “org.freedesktop.color-manager.create-device”  ||
        action.id == “org.freedesktop.color-manager.create-profile” ||
        action.id == “org.freedesktop.color-manager.delete-device”  ||
        action.id == “org.freedesktop.color-manager.delete-profile” ||
        action.id == “org.freedesktop.color-manager.modify-device”  ||
        action.id == “org.freedesktop.color-manager.modify-profile”)  &&
        subject.isInGroup(“{group}”)) {
           return polkit.Result.YES;
   }
});

答案1

我遇到了同样的问题,并在这里找到了不同的解决方法:

https://github.com/TurboVNC/turbovnc/issues/47#issuecomment-412005377

据称,该变体的工作独立于身份验证方案(例如 LDAP)。

创建/etc/polkit-1/localauthority/50-local.d/color.pkla(注意:.pkla需要扩展名),内容如下:

[Allow colord for all users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager.create-profile;org.freedesktop.color-manager.delete-device;org.freedesktop.color-manager.delete-profile;org.freedesktop.color-manager.modify-device;org.freedesktop.color-manager.modify-profile;org.freedesktop.packagekit.system-sources-refresh
ResultAny=yes
ResultInactive=yes
ResultActive=yes

为我工作。

更新
请参阅链接的 github 线程中的下一条评论...18.04 用户可能想尝试上述答案,但进行以下更改:

[Allow colord for all users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager.create-profile;org.freedesktop.color-manager.delete-device;org.freedesktop.color-manager.delete-profile;org.freedesktop.color-manager.modify-device;org.freedesktop.color-manager.modify-profile;org.freedesktop.packagekit.system-sources-refresh
ResultAny=no
ResultInactive=no
ResultActive=yes

答案2

编辑:

请使用得到赞同的答案,而不是这个。

旧答案:

我在这里发现了这个错误和一些解决方法:

https://bugzilla.redhat.com/show_bug.cgi?id=1149893

更具体地说,您必须将 .rules 文件放置在

/etc/polkit-1/rules.d/

(选择一个文件名并提供 .rules 扩展名)

并给出规则:

polkit.addRule(function(action, subject) {
   if ((action.id == "org.freedesktop.color-manager.create-device" ||
        action.id == "org.freedesktop.color-manager.create-profile" ||
        action.id == "org.freedesktop.color-manager.delete-device" ||
        action.id == "org.freedesktop.color-manager.delete-profile" ||
        action.id == "org.freedesktop.color-manager.modify-device" ||
        action.id == "org.freedesktop.color-manager.modify-profile") &&
       subject.isInGroup("ATTENTION")) {
      return polkit.Result.YES;
   }
});

然后您必须将“注意”一词替换为您的用户组。

答案3

其他都没有 答案为我工作,所以我用了更激进的提议简单地禁止更改颜色配置文件:

好的,我编辑了 /usr/share/polkit-1/actions/org.freedesktop.color.policy,将“auth_admin”的每个实例更改为“no”

我使用以下小 bash 片段来执行此操作:

cd /usr/share/polkit-1/actions/
cp -a  org.freedesktop.color.policy  org.freedesktop.color.policy.orig
sed -e 's|>auth_admin<|>no<|g'  org.freedesktop.color.policy.orig  >  org.freedesktop.color.policy

答案4

另一种修复方法:

sudo sed -i 's/<allow_inactive>no</<allow_inactive>yes</' /usr/share/polkit-1/actions/org.freedesktop.color.policy
sudo sed -i 's/<allow_any>.*</<allow_any>yes</' /usr/share/polkit-1/actions/org.freedesktop.color.policy

摘自这里:https://wiki.xorde.co/en/recipes/ubuntu-share-screen

相关内容