I finally had some time to look into these, but I think there might be a misunderstanding.
I double-checked, and I'm using authors fields on the Site Configuration, so web users can't edit the doc unless they login and have the [Configuration] role applied in the ACL. This would prohibit people from changing a logo, etc. They would be able to read the config doc, but they'll need that ability unless I do some run-as stuff via agents, and I'd rather not do that.
I could use the 'Hide From web' on some of the forms, but really, there's nothing secret in them, and if users want to browse the db with url commands, I'm Ok with that. The only downside is they could browse the individual configuration documents since this new release has an optional IP–based customization scheme. Still, if someone downloads this and that concerns them, then they should change the security not force a login to customize. It's a trade-off really…they can either get good security or ease of use, not both…unless you're in a single-sign on environment, then I'd say you could get both:)
Your idea about using a collection to get the Site Configuration document is not ideal. Building the collection via query and running a getfirstdocument is actually slower than the getdocumentbykey method when you're only trying to get one document. I could further speed this up by using profile documents, which I might do since there's only one Site Config document allowed per database.
Thanks for the ideas though, and please keep the coming. You're forcing me to think about some stuff that I hadn't paid much attention to before.