Capability to prevent upload of files

You can try with this:

function remove_media_tabs($strings) {

  unset($strings["insertFromUrlTitle"]);
  unset($strings["setFeaturedImageTitle"]);
  unset($strings["createGalleryTitle"]);
  unset($strings["uploadFilesTitle"]);
  return $strings;
}
add_filter('media_view_strings','remove_media_tabs');

This will remove ‘Upload file’ and ‘Insert from URL’ links when you open insert media screen, so user will be able only to select images or whatever that is already in media library.

For more things you can do with unset, check in: wp-includes/media.php file.