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

Sta*_*ght 23 centos xrdp

我正在运行 Centos 7 gnome 的全新安装,因此我可以从 Windows rdp 我按照以下说明进行操作, 但是当我连接时,我得到了一个额外的登录信息,上面写着

authentication is required to create a color profile
Run Code Online (Sandbox Code Playgroud)

如何删除此附加登录信息?

为了解决这个问题,我在这里尝试了一个解决方案但没有奏效。因为链接不仅仅是这个问题的解决方案,所以我粘贴了下面的解决方案。

当您通过远程会话登录到您的系统时,您将看到此消息弹出。您可以简单地取消,直到下次登录并开始新会话时才能继续。

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

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

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; } });
Run Code Online (Sandbox Code Playgroud)

Nem*_*emo 25

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

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
ResultAny=yes
ResultInactive=yes
ResultActive=yes
Run Code Online (Sandbox Code Playgroud)

为我工作。

  • 关键与`PolKit`版本有关。如果你的系统使用 `PolKit` < 0.106,那么你需要一个 `.pkla` 文件而不是 `.conf` 文件。你可以通过运行 `pkaction --version` 命令来找出你拥有的 PolKit 的版本。在 Ubuntu 20.04 上,我得到了 `pkaction version 0.105`。参考:[http://c-nergy.be/blog/?p=12043](http://c-nergy.be/blog/?p=12043)。 (6认同)
  • 也为我工作(Ubuntu 18.04)。接受的答案对我不起作用(也许我做错了什么)。嗯,也许我说/写得太早了。连接很快就断开了,当我重新连接时,它在连接后很快就断开了。删除文件,看起来我可以再次连接(但原始问题)。 (3认同)

kol*_*ygr 20

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

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;
   }
});
Run Code Online (Sandbox Code Playgroud)

然后你必须用你的用户组替换“注意”这个词。

  • 我还必须重新启动 polkit 才能加载新的规则文件(即`systemctl restart polkit`)。重新启动也应该有效。 (2认同)

Fri*_*dFX 5

其他两个 答案都不适合我,所以我使用了一个更激烈的建议来简单地禁止更改颜色配置文件:

好的,我编辑了 /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
Run Code Online (Sandbox Code Playgroud)