Bug 51311 - Не применяются повторные изменения политик из группы "Правила Polkit"
Summary: Не применяются повторные изменения политик из группы "Правила Polkit"
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: gpui (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: august@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-08-28 12:32 MSK by Osmolovskaya Anastasia
Modified: 2024-09-19 17:52 MSK (History)
4 users (show)

See Also:


Attachments
Фактический вывод после применения gpupdate && gpoa --loglevel 0 (87.12 KB, image/png)
2024-08-28 12:32 MSK, Osmolovskaya Anastasia
no flags Details
Ожидаемый вывод после применения gpupdate && gpoa --loglevel 0 (95.04 KB, image/png)
2024-08-28 12:32 MSK, Osmolovskaya Anastasia
no flags Details
Лог выполнения gpoa --loglevel 0 (23.74 KB, text/x-log)
2024-08-28 12:33 MSK, Osmolovskaya Anastasia
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Osmolovskaya Anastasia 2024-08-28 12:32:14 MSK
Created attachment 16727 [details]
Фактический вывод после применения gpupdate && gpoa --loglevel 0

Версии пакетов:
oddjob-gpupdate-0.2.3-alt1.x86_64
gpupdate-0.11.1-alt1.noarch
gpui-0.2.48-alt1.x86_64

Тестовые стенды:
Alt Workstation K 10.3 x86-64 (обновлённый до Sisyphus)
Alt Workstation 10.2 x86-64 (обновлённый до Sisyphus)
Alt Education/Education-kde 10.2 x86-64 (обновлённый до Sisyphus)

Шаги для воспроизведения:
1. Установить пакеты на клиентской машине, введённой в домен:
# apt-get install -y polkit gpupdate gpui

2. На клиентской машине, введённой в домен, получить билет администратора и открыть gpui-main: 
$ kinit Administrator
$ gpui-main -p "smb://<dc.name>/sysvol/samba.testdomain/Policies/{***}"

3. Изменить состояние политики "Компьютер -> Административные шаблоны -> Система ALT -> Групповые политики  -> Экспериментальные групповые политики -> Включено

4. Открыть группу политик "Компьютер → Административные шаблоны → Система ALT → Правила Polkit → Ограничения Login" и выбрать  любую политику (например, "Ограничение возможности блокировки или разблокировки экрана активных сеансов"). 

5. Изменить состояние политики на "Включено" и выбрать вариант ограничений (например, "No"). Нажать Ок и запустить в консоли команду: 
# gpupdate &> gpupdate.log && gpoa --loglevel 0 &> gpoa.log && cat /etc/polkit-1/rules.d/49-alt_group_policy_permissions.rules

6. Повторно изменить вариант ограничений для выбранной политики (например, Auth_Admin). Нажать Ок и запустить в консоли команду: 
# gpupdate &> gpupdate.log && gpoa --loglevel 0 &> gpoa.log && cat /etc/polkit-1/rules.d/49-alt_group_policy_permissions.rules

7. Перезагрузить клиентскую машину и проверить содержимое 49-alt_group_policy_permissions.rules:
# reboot
# cat /etc/polkit-1/rules.d/49-alt_group_policy_permissions.rules

Ожидаемый результат: успешное обновление политики: 
На 5 шаге вывод будет: return polkit.Result.NO;
На 6 и 7 шаге вывод будет: return polkit.Result.AUTH_ADMIN;
(см. вложение)

Реальный результат: 
На 5 шаге вывод будет: return polkit.Result.NO;
На 6 и 7 шаге вывод будет: return polkit.Result.NO;
(см. вложение)

После повторного изменения политики, отображается старый результат, то есть при выборе значения "Auth_Admin" -> Ок и выполнении команды gpupdate &> gpupdate.log && gpoa --loglevel 0 &> gpoa.log, в файле /etc/polkit-1/rules.d/49-alt_group_policy_permissions.rules отображается первое выбранное значение: "No". 

После перезагрузки системы, в файле 49-alt_group_policy_permissions.rules также отображается первое выбранное значение: "No", вместо ожидаемого "Auth_Admin". 

Примечание: 
1) Такое поведение является регрессом по отношению к прошлой версии. 
2) Если изменить вариант ограничений политики после перезагрузки системы, значение в файле успешно обновится, однако повторное изменение (без перезагрузки) приведет к воспроизведению ошибки.
Comment 1 Osmolovskaya Anastasia 2024-08-28 12:32:40 MSK
Created attachment 16728 [details]
Ожидаемый вывод после применения gpupdate && gpoa --loglevel 0
Comment 2 Osmolovskaya Anastasia 2024-08-28 12:33:27 MSK
Created attachment 16729 [details]
Лог выполнения gpoa --loglevel 0
Comment 3 Danila Skachedubov 2024-08-29 13:16:41 MSK
Добрый день, данное поведение вызвано сопоставлением gpupdat'ом(начиная с релиза 0.11.0) версии объекта GPC(атрибут versionNumber) после которого происходит решение о необходимости выкачивания GPT. В случае редактирования групповой политики через gpui-0.2.48-alt1.x86_64 изменении версии происходит лишь однократно после его запуска.Для избегания gpupdat'ом случаев некорректной версии GPC  можно использовать ключ --force, который принудительно выкачивает GPT.
Comment 4 Danila Skachedubov 2024-09-19 17:52:58 MSK
Исправлено в версии gpui-0.2.53