Настройка assembly does not allow partially trusted callers
От: 0K Ниоткуда  
Дата: 19.03.10 19:49
Оценка:
Интересный момент. Пытаюсь создать домен с определенными правами на запуск кода (добавил все 26). Пытаюсь запустить сборку -- выдает ошибку "That assembly does not allow partially trusted callers". Чего бы еще добавить, чтобы оно запускалось? Самое интересно, с сетевого диска эта сборка запускается без проблем...

Вот такие пермишенсы есть:


PermissionSet permissionSet = new PermissionSet(PermissionState.None);

            permissionSet.AddPermission(new System.Data.SqlClient.SqlClientPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Drawing.Printing.PrintingPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Net.DnsPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Net.Mail.SmtpPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Net.NetworkInformation.NetworkInformationPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Net.SocketPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Net.WebPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.EnvironmentPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.FileDialogPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.FileIOPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.GacIdentityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.IsolatedStorageFilePermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.KeyContainerPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.PublisherIdentityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.ReflectionPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.RegistryPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Diagnostics.EventLogPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Diagnostics.PerformanceCounterPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.SecurityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.SiteIdentityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.StorePermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.StrongNameIdentityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new SocketPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.UIPermission(UIPermissionWindow.SafeSubWindows));
            permissionSet.AddPermission(new System.Security.Permissions.UrlIdentityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Security.Permissions.ZoneIdentityPermission(PermissionState.Unrestricted));
            permissionSet.AddPermission(new System.Web.AspNetHostingPermission(PermissionState.Unrestricted));
Re: Настройка assembly does not allow partially trusted call
От: vmpire Россия  
Дата: 19.03.10 20:49
Оценка:
Здравствуйте, 0K, Вы писали:

0K>Интересный момент. Пытаюсь создать домен с определенными правами на запуск кода (добавил все 26). Пытаюсь запустить сборку -- выдает ошибку "That assembly does not allow partially trusted callers". Чего бы еще добавить, чтобы оно запускалось? Самое интересно, с сетевого диска эта сборка запускается без проблем...

А не пробовали добавить то, что указано в ошибке? А именно, атрибут AllowPartiallyTrustedCallers на ассемблю.
Re[2]: Настройка assembly does not allow partially trusted c
От: 0K Ниоткуда  
Дата: 19.03.10 23:49
Оценка:
Здравствуйте, vmpire, Вы писали:

V>Здравствуйте, 0K, Вы писали:


0K>>Интересный момент. Пытаюсь создать домен с определенными правами на запуск кода (добавил все 26). Пытаюсь запустить сборку -- выдает ошибку "That assembly does not allow partially trusted callers". Чего бы еще добавить, чтобы оно запускалось? Самое интересно, с сетевого диска эта сборка запускается без проблем...

V>А не пробовали добавить то, что указано в ошибке? А именно, атрибут AllowPartiallyTrustedCallers на ассемблю.

Дык, предпологается, что нет возможности редактировать код запускаемой сборки.
Re[3]: Настройка assembly does not allow partially trusted c
От: Mr.Cat  
Дата: 20.03.10 00:16
Оценка:
Здравствуйте, 0K, Вы писали:
0K>Дык, предпологается, что нет возможности редактировать код запускаемой сборки.
Не, ну а как ты хотел? Было б прикольно, конечно, увидеть весь код, но похоже, что у тебя сборка без фуллтраста вызывает методы из сборки с фуллтрастом. Или убери у вызываемой сборки фуллтраст, либо дай вызывающей фуллтраст, либо без AllowPartiallyTrustedCallers не обойтись.
Re[4]: Настройка assembly does not allow partially trusted c
От: 0K Ниоткуда  
Дата: 20.03.10 00:31
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>Не, ну а как ты хотел? Было б прикольно, конечно, увидеть весь код, но похоже, что у тебя сборка без фуллтраста вызывает методы из сборки с фуллтрастом. Или убери у вызываемой сборки фуллтраст, либо дай вызывающей фуллтраст, либо без AllowPartiallyTrustedCallers не обойтись.


В том то и дело, что я хочу ограничить права вызываемой сборки. Не давать фултраст. По этому создал AppDomain с ограниченными правами и пытаюсь в этом домене запустить сборку. Ей вроде как нужен фултаст. Но в то же время с сетевого диска она запускается без проблем. Если я ничего не путаю, то при запуске с сетевого диска фултраст не предоставляется...
Re[5]: Настройка assembly does not allow partially trusted c
От: Mr.Cat  
Дата: 20.03.10 00:42
Оценка: 6 (1)
Здравствуйте, 0K, Вы писали:
0K>Ей вроде как нужен фултаст.
А ей или тому, кого она вызывает?

0K>Но в то же время с сетевого диска она запускается без проблем. Если я ничего не путаю, то при запуске с сетевого диска фултраст не предоставляется...

А вот х его з. Я как-то эксперементировал и запускал .exe с сетевого диска. Так вот, ему давалась локальная зона. Возможно, для отнесения к соответствующей зоне, надо ссылаться на сборку, обитающую в локальной сети, а не запускать ее как .exe.
Re[6]: Настройка assembly does not allow partially trusted c
От: 0K Ниоткуда  
Дата: 20.03.10 01:02
Оценка:
Здравствуйте, Mr.Cat, Вы писали:

MC>А вот х его з. Я как-то эксперементировал и запускал .exe с сетевого диска. Так вот, ему давалась локальная зона. Возможно, для отнесения к соответствующей зоне, надо ссылаться на сборку, обитающую в локальной сети, а не запускать ее как .exe.


Ага, точно. И даже если ссылкается на сборки в той же самой сетевой папке -- запускается вроде как под фултрастом.
Re[3]: Настройка assembly does not allow partially trusted c
От: vmpire Россия  
Дата: 22.03.10 13:23
Оценка:
Здравствуйте, 0K, Вы писали:

0K>>>Интересный момент. Пытаюсь создать домен с определенными правами на запуск кода (добавил все 26). Пытаюсь запустить сборку -- выдает ошибку "That assembly does not allow partially trusted callers". Чего бы еще добавить, чтобы оно запускалось? Самое интересно, с сетевого диска эта сборка запускается без проблем...

V>>А не пробовали добавить то, что указано в ошибке? А именно, атрибут AllowPartiallyTrustedCallers на ассемблю.

0K>Дык, предпологается, что нет возможности редактировать код запускаемой сборки.

Ну, то что это предполагается, из Вашего поста как-то не очевидно

Попробуйте добавить атрибут к запускающей сборке.
Какая именно операция выдаёт ошибку? "Запустить сборку" понятие растяжимое.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.