I am currently building an application and I want to secure my Dlls so that only assemblies built by myself can use them.
I have looked briefly at the permissions option but it appears that I would have to set permissions for each class within each dll.
Is there a quick and easier way to do this at assembly level
Any help will be gratefully appreciated.
Mark

Assembly Security - Where to start?
Ramu Devarasetty
Does anyone have experiences using this method
I've been looking around a lot for a way to protect DLLs and only been running around in circles, always coming back to "FullTrust means Full Trust".
The InternalsVisibleTo is not that new and we're using it for testing - but this sounds like a super way of semi-securing access to your DLLs. It does interfer with your design though (forcing you to having methods internal instead of public), but used together with obfuscation, some selected comments and only the most important methods turned internal this should be a viable solution!
Thanx a million Shawn!
/Andreas
Peter Z
There is no foolproff way of doing what you want without writing a custom permission class.
All framework code access security classes do not deny FullTrust code; so, any FullTrust code would still be able to access your classes.
solution dll
You can't protect yourself from FullTrust code, however you can raise the bar for access to your internals. Using a LinkDemand for StrongNameIdentityPermission of your other assembly may work, (note that FullTrust assemblies will still satsify that demand), but a better option would be friend assemblies.
The InternalsVisibleTo attribute exposes any code marked internal to the specified assembly. Using this, you could mark all of your code as internal, and have each assembly be a friend of the other assemblies.
-Shawn