External users need to login using their domain credentials - with the domain (e.g. MyDomain\MyUserName). That is just to get to SSRS to see the list of reports.
If the users are then getting prompted to provide credentials for the report - and the report has been setup to use the individuals login credentials, then you HAVE to implement Kerberos authentication in your domain and specifically with the service account/servers in question. If you do not have that setup/configured correctly then you run into a double-hop issue and the users will never be able to get to the report.
There are several ways to set this up - which can depend on how the users are getting to SSRS in the first place. One way would be to use a specific SQL account for this report - that only has access to execute the code for this report - and embed the data source in the report definition using the SQL account and password. This would insure that every user that has access to the report doesn't have to have direct access to the database - and will not prompt the user for their credentials.
You could also look into setting up the execution account in SSRS configuration manager - which may allow the report to run under that users context instead of the logged in user...