There is no arbitrary way for a Puppet client to get at files served
by the master (no index, etc) so not really sure this is an issue..
Only files in the compiled manifest are managed.
The compiled, node scoped, manifest is only ever served to the
relevant authenticated, named node so also not really an issue
Another model that I've been exploring is creating one share, say
private/, and having the manifests use facts (which cannot be
reassigned, in my case I use $domain) to create specific trees.
A source would then be: puppet:///private/$domain/foo/bar
Prerequisites to this model, however, is that:
1) The domain fact is equal to what is in the CN of the certificate, and
2) you do not use autosign
Another model is to let the client clone a repository from a location
and refer to these local files, and apply access control on the location
where the repository is pulled from (or, refer to source control
management system from puppet directly, requiring the scm to be
integrated which I think is the case for CVS??).
Kind regards,
Jeroen van Meeuwen
-kanarip