|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Mar 2006
Città: Molfetta
Messaggi: 239
|
[C#/Urgente!] Richiesta di autorizzazione non soddisfatta per una libreria esterna?
Aiuto
![]() Sto sviluppando un plugin per il live messenger... Il problema è (come si evince dal titolo) che non riesco a richiedere le autorizzazioni adatte per accedere ai file (FileIOPermission) e per accedere alle cartelle speciali di sistema (EnvrironmentPermission). Ho provato con Codice:
[assembly: FileIOPermission(SecurityAction.RequestMinimum)] ![]() E' impossibile che non mi faccia accedere ai file del mio pc... come dovrei impostare quell'attributo per richiedere le autorizzazioni?? Non c'è una cosa che dice al thread padre "dammi tutte le autorizzazioni, poi se effettivamente non ce le ho mi sollevi l'eccezione e finisce lì", per disattivare sto schifo di permessi che non mi fanno fare niente? Grazie 1000 ![]()
__________________
Ultima modifica di whiles_ : 21-06-2007 alle 19:49. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2000
Città: Provincia di Parma
Messaggi: 724
|
Probabilmente il tuo assembly gira in un code group che non permette l'accesso al disco. Con l'attributo RequestMinimum tu specifichi che permesso richiede l'assembly, ma non è detto che il runtime te lo assegni.
Verifica il code group di appartenenza, e magari assegna un code group più permissivo tramite il .NET Configuration Tool. Ciao P.S. Il fare in modo che un assembly esterno non passa accedere direttamente ai tuoi files è la BASE per scrivere applicazioni sicure
__________________
My Pc: Case Enermax Chakra - PSU Corsair HX520 - Gigabyte P35-DS3R - Core2 Duo E6550 - 6 Gb RAM Geil PC800 - 2x WD Caviar SE 320Gb (Raid1) - Xfx GeForce 8600Gt - Master Pioneer DVR111D - Samsung SM T220 - S.O. Windows 7 Ultimate x64 SP1 My blog: http://blogs.ugidotnet.org/alby |
![]() |
![]() |
![]() |
#3 | |
Member
Iscritto dal: Mar 2006
Città: Molfetta
Messaggi: 239
|
Quote:
![]()
__________________
|
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jan 2000
Città: Provincia di Parma
Messaggi: 724
|
Potresti creare uno strong name, associarlo all'assembly, e fare in modo che tutti gli assembly con quello strong name vengano eseguiti in un code group tuo personale che assegni loro FullTrust. Lo strong name lo generi con l'utility sn.exe che trovi nella cartella del framework. Il comando:
sn -k MyStrongNameFile.snk genera lo strong name e lo scrive nel file MyStrongNameFile.snk. In modo un po' più sbrigativo, potresti creare un tuo code group personale che assegni FullTrust alla cartella che contiene l'assembly. Le strade sono molte, e la Code Access Security è un argomento un po' vasto. Spero di averti chiarito un po' le idee... ![]() Oltre ovviamente a MSDN, questo è un link abbastanza interessante sull'argomento: http://msdn.microsoft.com/msdnmag/is...S/default.aspx Ciao
__________________
My Pc: Case Enermax Chakra - PSU Corsair HX520 - Gigabyte P35-DS3R - Core2 Duo E6550 - 6 Gb RAM Geil PC800 - 2x WD Caviar SE 320Gb (Raid1) - Xfx GeForce 8600Gt - Master Pioneer DVR111D - Samsung SM T220 - S.O. Windows 7 Ultimate x64 SP1 My blog: http://blogs.ugidotnet.org/alby Ultima modifica di Einstein : 22-06-2007 alle 07:24. |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Mar 2006
Città: Molfetta
Messaggi: 239
|
Ho fatto di tutto, ho creato un code group con permessi infiniti ed ho messo la condizione che lo StrongName corrispondesse a quello del mio assembly, ho generato ed associato all'assembly uno strong name ma ancora non funziona, e mi da degli errori di protezione
![]() Ho anche verificato che lo strong name fosse stato creato e associato correttamente tramite sn.exe -v nomeassembly.dll, e mi diceva che era tutto a posto. ![]() E l'errore è sempre lo stesso: ![]() Non so più cos'altro fare (qualcosa a che fare con le chiavi pubbliche e private? ) ![]()
__________________
Ultima modifica di whiles_ : 22-06-2007 alle 10:30. |
![]() |
![]() |
![]() |
#6 |
Member
Iscritto dal: Mar 2006
Città: Molfetta
Messaggi: 239
|
Risolto ^^
L'ho gaccato con il programma gacutil.exe, in questo modo ha acquistato i pieni poteri. Evvai, finalmente ![]() ![]()
__________________
Ultima modifica di whiles_ : 22-06-2007 alle 17:07. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:57.