I'm exploring ways of managing IIS with puppet. Applications are run across multiple servers, so I need the keys to be consistent across applications so if people move from one web server to the other auth is consistent.
That being said, The Keys - They're coming outta the goddamn walls!
I have found a lot of how-tos and information regarding shared configuration etc. But in terms of automating this without shared configuration, I would like to actually understand the role of these various keys within Windows Server 2016. I have been trouble finding that information.
In particular, the relationship between the following 3 keys (assuming these are different things):
- The Machine Key (As displayed by the IIS gui, or
Get-WebConfigurationProperty -PSPath Machine/Webroot /system.web/machineKey -name * | select *
) which seems to match the settings of the IIS GUI after I change them from auto generated to specific keys. - Also Machine Keys? The
IISCofigurationKey
andiisWasKey
keys that you can get with theaspnet_regiis
.
So how do the Machine Keys in the Webroot, and the RSA keys exported from aspnet_regiss
related and what is each of their specific purpose?
Are they all needed to be consistent across the web farm (assuming not overload by webconfig) for consistent auth in aspnet apps running on them, or is it only the machine keys as displayed in the IIS gui as long as you don't try to copy the actual applicationhost files?