I would not expect anything other than existence to be relevant for find_path(), find_file(), or find_library(). CMake has no idea what you want to do with the thing you’re finding with those commands. The find_program() case is special because the primary reason for using it is to find a program you want to execute, and for that to be useful, the program must be executable. For any other use case, you should probably use find_file() instead.
I don’t think any change to the docs is needed. We don’t normally document things a command doesn’t do, unless it goes against conventions or other such cases. If the docs don’t mention any requirements around permissions for find_path(), find_file(), or find_library(), then you can reasonably expect there are no such requirements.