Se il tuo utente non ha i permessi per accedere a quella sottodirectory non ci puoi fare niente, è giusto e normale che il tuo programma sollevi quell'eccezione. Quello che puoi fare è implementare manualmente una ricerca ricorsiva e saltare le singole directory a cui non puoi accedere.