A partir de la pregunta, parece que necesita almacenar la contraseña de tal manera que pueda leerse y usarse en una transacción automatizada con otro sitio. Puede cifrar la contraseña y almacenarla cifrada en el archivo, luego descifrarla usando una clave almacenada en otro lugar de su sistema antes de usarla. Esto dificulta a alguien que obtiene acceso al archivo usando la contraseña, ya que ahora tiene que encontrar la clave y el algoritmo de cifrado utilizado para poder descifrarlo.
Como defensa, una defensa más pequeña siempre es mejor que una defensa fuerte que falla cuando se viola. Además, también protegería el archivo que contiene la contraseña, en lugar de la contraseña en sí. Configure su servidor web para deshabilitar la posibilidad de servir el archivo que contiene la contraseña e intente configurar el proceso que necesita que el archivo se ejecute en una cuenta separada, de modo que pueda restringir el acceso al archivo a la cuenta que ejecuta el proceso y las cuentas de administrador únicamente.
No creo que encuentres una manera infalible de hacer esto. Sugeriría una combinación de cosas para lograr 'seguridad por oscuridad':
- almacene el archivo de contraseña en una computadora diferente a la que lo usará
- almacene la ruta del archivo en un archivo de configuración separado en la aplicación nachine
- use permisos para limitar el acceso a los archivos de configuración y contraseña solo a su proceso
- audite el acceso a los archivos si su sistema lo permite (mantenga un registro de quién tocó los archivos)
- asigne a las carpetas y archivos nombres inofensivos (/usr/joe/kittens.txt?)
- bloquear el acceso físico a la(s) computadora(s) (alojamiento externo, armario cerrado o algo así)