Using the Direct Query method allows Power BI to retrieve, at runtime, data from Dataverse that the user is allowed, by Dataverse Security, to see.
Keep in mind that because the data is only retrieved as the user opens the report, there's some increased lag for the user vs. what they would see if the data had been pre-cached into Power BI.
Additionally, the best practice is to keep the datasets for DirectQuery very tight/small - 20K records is not too much. - Focus on individual user reports or very narrowly defined team reports. - not company-wide reports.
For users with system wide visibility in Dynamics already, (think sales leads, upper managers) - it's best to pull the data into Power BI in import mode to deliver much more responsive reports to those users.