Create two Scenarios within the Load Test.
In Scenario1, set a load of 50 users and other settings as normal. This scenario should be assigned web tests that actually do stuff, navigating through the app. These will be your "active" users.
In Scenario2, set a load of 450 users, set Think Profile on, and set Think Time Between Test Iterations to some value that is larger than the duration of the load test. This scenario should be assigned a single web test that just logs in. These will be your logged-in but inactive users.
If the initial logging in is too heavy a load for your server, space it out by using a Step load pattern on Scenario2 possibly combined with Delay Start Time on Scenario1 (as suggested by AdrianHHH).
When the test starts, all 500 users will log in, but then only the 50 active users will be actually putting any load on the web app.
FYI the Test Iterations setting (if active) only determines when the load test will end: after the given number of test iterations, in total. So you are correct, it won't help you.