That sounds good!
You are right. They are usually shared, but it is also normal to have different sets of credentials per customer for example, thinking on large deployments.
I wouldn't include the hostname, if we are talking about shared profiles in most scenarios.
Will you be able to create as many profiles as you want?
Yes, it would just be a series of SET variables. There's no (deliberate) limit on those.
How would you store the credentials? I've never used wm standalone but I haven't seen any option to create set of variables or parameters apart from the .conf files. Will that include a new menu option on wm editor? What are the options?
Well, it would be SET variables in the top of the map config (or in the cacti database if you use the 'special settings' feature on the map management page). OR, with the 'import' option (#3) above, they wouldn't be stored anywhere, just fetched from the Cacti device settings just before the map is calculated. That's why I like that option - there's nothing to keep up to date (apart from the host_id you are importing from, if the map moves to a new Cacti box), and nothing sensitive in the map config file.
So you could have something like:
# import the snmp settings from a device for each environment
SET snmp_CORENETWORK_import 2
SET snmp_CUSTOMER1_import 22
SET snmp_CUSTOMER2_import 33