Several months ago I created a feature request which basically requested the ability to flag certain facts as 'should never change' and have the ability to trigger different behaviors in on the master if $node delivers its facts with those items different…
https://projects.puppetlabs.com/issues/13934
if a node reports memory changed, you might want to send an email (IE: a dimm failed, the box panic'ed and rebooted, and now has less memory). This could be done with other methods and tools, this feature doesn't need to be implemented to facilitate that (nor is it necessarily the best tool for the job), but if a node reports that it's fqdn, or '$proprietary_fact' is now different, you may want the master to full-stop on catalog compilation and flag the node as problematic and notify you, as someone may be doing something nasty.
you can also use an enc and base lookups off of $certname, as you can trust that you signed that cert at some point in time (assuming you don't have auto signing enabled) and so that should be trusted as legitimate.
if you have auto-signing enabled though, this could give someone a path into nefariousness.
W
________________________________
This message may contain confidential or privileged information. If you are not the intended recipient, please advise us immediately and delete this message. See
http://www.datapipe.com/legal/email_disclaimer/ for further information on confidentiality and the risks of non-secure electronic communication. If you cannot access these links, please notify us by reply message and we will send the contents to you.