Neither Firefox nor Internet Explorer requires admin to set as default. Why does Chrome require it?
There are multiple ways to associate file-types and protocols with a program. For something complex like a web-browser which can support several file-types and several protocols, there are numerous settings that have to assigned to make it the default browser. Worse, there are numerous other hooks into the system that a browser can set these days such as making a buttons in the Start menu, shortcuts in the taskbar, integrating with the shell and email clients, and so on.
So there are quite a lot of different settings to be modified, mostly in the registry, a few in the file-system. Some are mandatory (e.g.,
.html files, etc.), but others are optional. As a result, some browsers will set some which others don’t (few, if any, configure set every single possible setting).
Some of these numerous settings are in user-accessible places while others are in areas that require higher privileges.
In addition, Windows essentially duplicates a lot of things on a system-level and a user-level. For example, you can set some things to apply to individual users or to the whole system (or both). Not surprisingly, changing a system-level setting will require administrator permissions.
Obviously Chrome configures some settings that require extra privileges and/or modifies both the user and system versions of some settings.