È necessario disporre di una restrizione in un assieme in modo che solo gli assiemi firmati con una determinata chiave possano utilizzarlo. Sono inesperto, ma quello che capisco è che la firma è fatta per aiutare a identificare chi ha creato l'assemblea. Pertanto, firmare questo assembly non dovrebbe essere sufficiente per garantire che tutti gli assembly di chiamata siano firmati. Probabilmente è vero il contrario, cioè se un assembly è firmato, tutti gli assiemi da cui dipende devono essere firmati (probabilmente con la stessa chiave). Quale sarebbe il modo di soddisfare il requisito?Limitazione dell'utilizzo di un assieme da assiemi non firmati
risposta
È possibile utilizzare PublisherIdentityPermissionAttribute.
Se si applica PublisherIdentityPermissionAttribute alla classe MyClass, solo le classi negli assembly firmati dal certificato mycert.cer
possono utilizzare la classe. Hai bisogno di mettere SecurityAction.Demand
Tutti i chiamanti più elevata nello stack di chiamate sono tenuti ad avere ottenuto il permesso specificato dall'oggetto autorizzazione corrente
Usa come
[PublisherIdentityPermission(SecurityAction.Demand, CertFile = "mycert.cer")]
public class MyClass
Puoi anche usarlo a livello di assembly per proteggere l'intero assembly (tuttavia la sicurezza del livello di assieme non funzionerà da .Net 4.0 a meno che non si imposti <NetFx40_LegacySecurityPolicy enabled="true"/>
nella configurazione).
Si prega di non rispondere semplicemente con un link. Dare qualche spiegazione e un esempio di come usarlo per risolvere il problema dell'OP. – Rawling
@Rawling Stavo modificando la mia risposta. –
- 1. Cosa è meglio, molti piccoli assiemi o un grande assieme?
- 2. Perché non è possibile che gli assembly con nome elevato utilizzino assiemi non firmati?
- 3. strcmp() e caratteri firmati/non firmati
- 4. Il controller non è stato caricato da un altro assieme?
- 5. Ripping XAML da un. Assieme N.
- 6. Alias di assieme in XAML
- 7. Determinare le versioni di assieme utilizzate da/referenziate in un altro assieme
- 8. cosa succede quando mischio tipi firmati e non firmati?
- 9. Gestire correttamente il confronto dei valori firmati e non firmati
- 10. Valori non firmati e firmati in C (qual è l'output)
- 11. movq funzionalità di un assieme
- 12. Differenze tra i file .apk firmati e non firmati Android?
- 13. Che cos'è un modulo gestito (rispetto ad un assieme)?
- 14. : impossibile serializzare un oggetto proveniente da un altro assieme
- 15. Assegnazione memoria di assiemi
- 16. Assieme di riferimento Dapper non ha un nome sicuro
- 17. Individuare quale gruppo di assiemi dipende dall'assemblaggio X
- 18. Esegui solo script powershell firmati da C#
- 19. Che cos'è esattamente un assieme in C# o .NET?
- 20. java.lang.SecurityException: i file dei criteri di giurisdizione non sono firmati da un firmatario attendibile
- 21. Determinare il contesto carico di un assieme
- 22. leggere web.config da un altro assieme utilizzando t4
- 23. Ottieni tutte le Culture supportate da un assieme satellite
- 24. Controllare GAC per un assieme
- 25. Caricamento lento di assiemi/cataloghi
- 26. sottrazione tra valori non firmati - risultato imprevisto
- 27. Gli assembly firmati impediscono l'avvio del servizio
- 28. Convalida di .NET Framework Assiemi
- 29. Verificare i plugin non firmati per Eclipse
- 30. C++ lettura di caratteri non firmati dal flusso di file
Intendi qualcosa come questo http://blogs.msdn.com/b/shawnfa/archive/2004/06/07/150378.aspx? – V4Vendetta