SQL Cross Database Views Security
Unless DB_CHAINING is set to true for all 3 databases, you should give the SELECT permissions on the underlying tables.

In case you set DB_CHAINING to true, all 3 owners of these databases are the same and all 3 objects have the same owner (for now it's not true in your design because your tables are owned by dbo and view is owned by vdr) permissions on the underlying tables will not be checked due to Ownership Chaining

To make ownership chaining work in your case you should do the following:


Run:

use Reporting; 
go 
alter authorization on schema::vdr to dbo;`

set db_chaining to true on all 3 databases:

use master;     
go      
alter database Reporting set db_chaining on;    
alter database DatabaseA set db_chaining on;
alter database DatabaseB set db_chaining on;

check owners of all 3 databases and if it's not the same change it to the same login using

alter authorization on database::yourDB to yourLogin