Аннотация:
Политики доступа – это один из основных компонентов системы безопасности .NET Framework. В статье рассматриваются практические примеры настройки и использования политик безопасности в приложениях.
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
В остнасте Microsoft .NET Framework 1.1 Configuration в ветке Runtime Security Policy\User\Code Groups\All_Code создал новую группу “Internet Code” и настроил ее в соответствии с вашей статьей. Но, по своей невнимательности, указал в поле URL file://e:/*, а он у меня системный.
В результате чего у меня перестала запускаться оснастка Microsoft .NET Framework 1.1 Configuration error здесь и не только она .
Под другим пользователем на этой машине все замечательно работает.
Здравствуйте, zeus, Вы писали:
Z>В остнасте Microsoft .NET Framework 1.1 Configuration в ветке Runtime Security Policy\User\Code Groups\All_Code создал новую группу “Internet Code” и настроил ее в соответствии с вашей статьей. Но, по своей невнимательности, указал в поле URL file://e:/*, а он у меня системный. Z>В результате чего у меня перестала запускаться оснастка Microsoft .NET Framework 1.1 Configuration error здесь и не только она . Z>Под другим пользователем на этой машине все замечательно работает.
Z>Что делать???
Есть два варианта — запустить из панели управления Microsoft .NET Framework 1.1 Configuration, выбрать в дереве Runtime Security Policy и в разделе Tasks выбрать пункт Reset All Policy Levels
Use this task to reset your security policy to the default settings. Note that this will obliterate all modifications that might have been made to default security policy.
Это приведет настройки безопасности .NET в исходное состояние.
Если из другого пользователя все работает, то можно пойти следующим путем:
Найти в папке :\Documents and Settings\%UserName%\Application Data\Microsoft\CLR Security Config\v1.1.4322 файл security.config (настройки безопасности конкретного пользователя) и перезаписать его версией от другого пользователя.
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, TK, Вы писали:
TK>Есть два варианта — запустить из панели управления Microsoft .NET Framework 1.1 Configuration, выбрать в дереве Runtime Security Policy и в разделе Tasks выбрать пункт Reset All Policy Levels TK>Use this task to reset your security policy to the default settings. Note that this will obliterate all modifications that might have been made to default security policy.
TK>Это приведет настройки безопасности .NET в исходное состояние.
TK>Если из другого пользователя все работает, то можно пойти следующим путем: TK>Найти в папке :\Documents and Settings\%UserName%\Application Data\Microsoft\CLR Security Config\v1.1.4322 файл security.config (настройки безопасности конкретного пользователя) и перезаписать его версией от другого пользователя.
Первый вариант в моем случае не работоспособен.
Второй вариант помог! Большое спасибо.
Есть вопрос, решение на который я так и не смог найти. Постараюсь изложить суть... на тот случай, если заглянете сюда и сможете мне чем-нибудь помочь.
Есть два приложения. Одно — веб приложение, работающее соответсвенно под аккаунтом aspnet, которое отображает разного рода файлы-документы текстовые, которые были в нем созданы (создаются на базе обычных текстовых файлов загружаемых пользователем).
Есть небольшая утилитка, которая работая на том же сервере, где крутиться первое веб приложение, позволяет сделать трансфер тучи текстовых файлов в систему первого веб-приложения, чтобы пользователю не пришлось несколько тысяч раз создавать в системе веб приложения новый документ. Фактически, что делает утилитка локальная, она копирует из одной папки в другую файлы текстовые, и в базу данных веб приложения прописывает информацию об этих документах .таким образом, при следующем заходе на страничку веб приложения, пользовател видит, всю эту тучу новых документов, и все вроде бы замечательно... но, в веб приложении есть возможность посмотреть содержимое файла. на базе которого был создан документ в веб приложении. И в случае, если этот документ был создан утилитой, то до него у веб приложения нету доступа, другими словами:
— утилита работает под аккаунтом админа и соответсвенно закопированные ею файлы имеют permissions для просмотра к примеру этим же админом... или другим админом.
— веб приложение работает под аккаунтом aspnet который не имеет доступа к этим файлам.
как я понимаю возможное решение — либо сделать имперсонацию и копировать файлы под соответсвующим аккаунтом в винде, либо скопировав файлы утилитой, когда она работает под аккаунтом админа локального, программно выставить file permissions такие, чтобы веб приложение, работающее под aspnet аккаунтом смогло получить доступ до этих файлов.
Но вот только сколько не бьюсь, не могу реализовать ни то ни другое... Есть какие нибудь мысли?
________________________________
When in Rome, do as the Romans do...
Hello, "AleXXus" > > — утилита работает под аккаунтом админа и соответсвенно закопированные ею файлы имеют permissions для просмотра к примеру этим же админом... или другим админом. > — веб приложение работает под аккаунтом aspnet который не имеет доступа к этим файлам. >
Есть такая стандартная утилита cacls.exe с ее помощью можно дать пользователю ASPNET необходимые права на файлы/директории.
Posted via RSDN NNTP Server 1.9 alpha
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, AleXXus, Вы писали:
AXX>как я понимаю возможное решение — либо сделать имперсонацию и копировать файлы под соответсвующим аккаунтом в винде, либо скопировав файлы утилитой, когда она работает под аккаунтом админа локального, программно выставить file permissions такие, чтобы веб приложение, работающее под aspnet аккаунтом смогло получить доступ до этих файлов.
Как минимум еще можно дать права пользователю aspnet на каталог, в который копируются эти самые файлы. Еще можно текст держать не ввиде файлов на диске, а в БД.
Здравствуйте, Тимофей Казаков, Вы писали:
ТК>Статья:
ТК>Авторы: ТК> Тимофей Казаков
ТК>Аннотация: ТК>Политики доступа – это один из основных компонентов системы безопасности .NET Framework. В статье рассматриваются практические примеры настройки и использования политик безопасности в приложениях.
А можно привести пример, каким образом можно для приложения изменить Permission, чтобы оно могло работать с Sql Server запускаясь из сетевой папки? Если не трудно... А то самому что-то никак не разобраться.
Hello, "Slider_spb"
> ТК>Политики доступа – это один из основных компонентов системы безопасности .NET Framework. В статье рассматриваются практические примеры настройки и использования политик безопасности в приложениях. > А можно привести пример, каким образом можно для приложения изменить Permission, чтобы оно могло работать с Sql Server запускаясь из сетевой папки? Если не трудно... А то самому что-то никак не разобраться.
Даешь сборке строгое имя, после этого запускаешь Microsoft .NET Framework 1.1 Configuration выбираешь Increase Assembly Trust, выкручиваешь бегунок на максимум, после этого создаешь Create Deployment Package и деплоишь на все машины сети.
Posted via RSDN NNTP Server 1.9 alpha
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, TK, Вы писали:
TK>Hello, "Slider_spb"
>> ТК>Политики доступа – это один из основных компонентов системы безопасности .NET Framework. В статье рассматриваются практические примеры настройки и использования политик безопасности в приложениях. >> А можно привести пример, каким образом можно для приложения изменить Permission, чтобы оно могло работать с Sql Server запускаясь из сетевой папки? Если не трудно... А то самому что-то никак не разобраться.
TK>Даешь сборке строгое имя, после этого запускаешь Microsoft .NET Framework 1.1 Configuration выбираешь Increase Assembly Trust, выкручиваешь бегунок на максимум, после этого создаешь Create Deployment Package и деплоишь на все машины сети.
Боюсь, у меня правов на это не хватит, я вобще-то не админ... А для конкретного приложения можно сделать, или только сеть править?