Redirect user if it’s not logged in

I wouldn’t use htaccess for that.

What I would do is make a ‘download page’ template and use it to ‘serve’ the files.

By doing that, I can do a check with is_user_logged_in() Codex and redirect with wp_login_url() Codex

Just do:

if ( is_user_logged_in() ) :
//file link
else :
    wp_login_url();
endif;

I think it’s easier and safer to do that. Besides, you can even make that into a plugin later and use it on another projects or keep using it if you change your site template.