It could be done one way or another.
You have 3 entities which need to be controlled of course and in most circumstances FPSC like most engines use entity inertactions of 2. e.g. switch and door.
What you really need is a separate little script which would be attached to an entity in this case a key entity which in turn activates the switch and which in turn activates the door. You could then place the key anywhere you wish.
If you cant create the script then there are some enity activation scripts around the place I'm sure.
Effectively you need the key to be a trigger to work (activate) the switch so you would really need all 3 entities scripts - switch and door could be default possibly or modifed ones - the key script may also be able to use a default script for but may have to make amendments to it. You may well have to modify all 3 to get it to function as you wish. Use copies of default ones of course not the originals.
One route you may be able to use is use a trigger zone to acivate the switch and being invisible place a key entity (no AI as such in script except for using any pickup data - you wont need to specify an ifused name if its a fake - otherwise you will so could use the default script) in the zone so when its picked up a little trickery and the zone does the work but the player thinks its the actual key.
In any case if you look closely at zones scripts you may gain an understanding of how triggers work - a very useful excercise.
Zones can be a bit tricky and fussy sometimes about which object types they work well with. If a default trigger zone does not work with anyone try creating your own trigger entity from a simple invisible box and attach any trigger script to it default or not.