2009-08-19 1 views
4

Я пытаюсь применить пользовательские права к папке в составе установщика WiX 3.0.4318.0.Разрешения WiX, как я могу выразить «Изменить» в терминах флагов DACL

С точки зрения свойств свойств безопасности в проводнике, я хочу добавить Модифицировать права на BUILTIN \ Users. Очевидно, что он должен быть устойчивым к локализации имени пользователя. Так на основе моих исследований на сегодняшний день, я хочу, по крайней мере:

<CreateFolder Directory="XYZ" > 
    <PermissionEx User="[WIX_ACCOUNT_USERS]" 
     GenericRead="yes" GenericWrite="yes" Delete="Yes" /> 
</CreateFolder> 

Вопросов:

  1. я делаю это в подкаталоге - я, полагая, что выбор между разрешением и PermissionEx это Moot?

  2. Что делает «Изменить» в диалоговом окне «Разрешения папки» в «Проводнике» в плане прав - я вижу много примеров, в которых люди перевели его на магическое число или большой набор флагов - то, что использовали другие люди (цель состоит в том, чтобы разрешить создание, чтение, запись, добавление и удаление, что лучше всего выражено в пользовательском интерфейсе с точки зрения простых прав как «Изменить»). Я просмотрел основные разрешения с помощью icacls, который сообщает мне его имя «М», но у меня нет способа сопоставить их с «конкретными правами» (в терминах, используемых icacls /?). Существует еще одна таблица сопоставлений in the windows help. Кто-нибудь получил автоответчик, который сработал?

Существует очень похожий вопрос без ответа на Question regarding PermissionEx (WIX), что это было бы жестоко, но справедливо привести в качестве дубликата.

+1

Редактировать-право, кажется, расширяется до ReadData | WriteData | AppendData | ReadExtendedAttributes | WriteExtendedAttributes | ExecuteFile | ReadAttributes | WriteAttributes | Удалить | ReadPermissions (в CLR System.Security.AccessControl.FileSystemRights перечисление) – leiflundgren

+0

@leiflundgren: спасибо - если бы это был ответ, я бы, скорее всего, воздержался и принял! –

ответ

1

После еще некоторых работ по этому вопросу, мои выводы не являются:

  1. В 3.0.5419.0, PermissionEx против Util: «PermissionEx против Разрешения становится спорным, и нет Расширенной =» истины», как вы видите вокруг сети с требуются предыдущие версии. Предыдущие версии дают ошибки во время выполнения решения BUILTIN \ USERS.
  2. Выбор трех прав я выбрал, кажется, выполнение требований моего контекста

Я по-прежнему очень заинтересованы в том, чтобы другие ответы , поскольку я остаюсь WiX-noob.

3

следующие комбинации, что я нашел

"изменить" разрешение:

<util:PermissionEx GenericRead="yes" GenericWrite="yes" 
    GenericExecute="yes" Delete="yes" DeleteChild="yes" User="SOMEUSER" /> 

"читать" разрешение:

<util:PermissionEx Read="yes" GenericRead="yes" User="SOMEUSER" /> 
1

Чтобы получить его точно так, как вы, установив разрешения вручную в Windows 7 и Windows XP с помощью WiX 3.6, вам понадобится t o использовать это:

<util:PermissionEx 
    User="Users" Domain="BUILTIN" 
    GenericWrite="yes" GenericExecute="yes" GenericRead="yes" 
    Delete="yes" Synchronize="yes" /> 
Смежные вопросы