Shanku Niyogi
2/28/2002 12:51:00 AM
In Beta 2, every ASP.NET application ran as the local System account, and
thus had full access to a lot of resources. Effectively, it did leave the
entire machine open so that any ASP.NET user was an admin. For example, if
you were able to exploit a web site bug that could read a file on the hard
disk, you then had access to every file on the hard disk.
Not surprisingly, this mode was deemed to be relatively insecure. So the
default was changed so that every ASP.NET application runs as a known user
called ASPNET, so that site administrators can better manage access to the
web server by selectively assigning privileges to this account.
A change of a security model from one version to another is always
difficult. One of my apps, which accesses Exchange data on the server, broke
because the new model requires you to give explicit permissions to run COM
objects from an ASP.NET page. Unfortunately, security isn't a magic cookie -
it's almost impossible to have a secure server, yet have apps "just work"
without any security settings - especially one that performs some pretty
privileged operations, as yours does.
If you'd like to get the Beta 2 behavior back, you can just edit the
<processModel> tag in machine.config, and change the userName attribute from
"Machine" to "System". But this is probably not the best way to go long
term.
By moving the code that starts and stops services to a serviced component,
as shown in the previous example, you can most quickly get your app back up
and running, because it requires no other authentication work to be done by
default. Then, you can administer access to your app by changing settings on
the component.
If you have any further questions about this, please feel free to contact me
by email (shankun@microsoft.com).
Thanks,
Shanku
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"Dan" <dang@microendeavors.com> wrote in message
news:843e01c1bece$f7306950$36ef2ecf@tkmsftngxa12...
> So you're telling me "as of RTM" I either have to write
> the entire thing over with windows authentication built
> into the application having any users wanting this
> functionality with Admin access, OR open my entire
> machine so any ASP.NET user is admin.
>
> This is not the answer I was hoping for and am very
> disappointed in the lack of vision Microsoft has
> instilled in moving from Beta 2 to RTM of .NET.