n-tier security help needed
I am trying to put together a design for an application and am having trouble understanding the security design needed. If I were to adopt a design similar to that described in the "Walkthrough: Creating a Distributed Application" (found on MSDN under Visual Studio Walkthroughs), I cannot figures out how to carry the users security credentials through all the tiers. My complication is that though the servers run Windows 2000, most if not all the workstations run Windows NT. For this reason, I cannot use Kerberos and, if I have a three-hop design (client on the workstation, web services on a web server and then the data on yet another server), I believe that I cannot use impersonation and delegation to persist the users identity through to the database.
Can anyone provide me with some guidance as to how to handle the last hop. Also, of some importance are two requirements of the application that affect security concerns. One, all user are not created equal - some users will have edit ability in some sections but not others. Two, I need to be able to write data to the client hard disk, at least temporarily, in order to use Office interoperability.
I need help here.
Dennis
apart from windows application you can also use form authentication, this work the same way asp.net form authentication but instead of issuing a tickect you get a set of roles for the user and bind it to the thread's currentPrinciple, thus you can provide custome group/ roles for your application which is independent of the user's windows account.
for writing into user's hardisk if your application is web deployed then you should investigate isolated storage mechanism more info about this on http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconisolatedstorage.asp
regards
erymuzuan mustapa
If you use custom identity and principal objects to enforce your security (which can be used with forms authentication) you can simply pass your principal objects around to every tier. The n-tier architecture i'm currently using does this and we have no problems with multiple physical tiers, but we have not done anything with windows integrated security.